Синтетические данные для CV: Unity/Unreal/Omniverse

Задача страницы. Показать, как планировать и производить синтетические датасеты для задач CV на облачных GPU: выбор движка (Unity/Unreal/Omniverse), доменная рандомизация, рендер‑фермы, аннотации (2D/3D боксы, маски, глубина, нормали, оптический поток), упаковка в форматы COCO/YOLO, контроль качества, sim2real‑адаптация и экономика.

TL;DR

Зачем и когда синтетика

  • Cold‑start: нет данных/разметки — запускаем обучение на синтетике с последующим дообучением на реале.
  • Редкие/опасные события: аварии, ночные сцены, экстремальная погода.
  • Приватность/интеллектуальная собственность: вместо реальных съёмок в чувствительных средах.
  • Контроль распределения: баланс классов, заданные доли ракурсов/окклюзий/фонов.
  • Быстрые итерации: автоматически генерим «hard cases» по отчётам об ошибках модели.

Базовая архитектура проекта

DCC/ассеты → Сцена (Unity/Unreal/Omni) → Параметризация (randomization) → Рендер‑ферма (headless)

→ Аннотации (2D/3D/Depth/Flow/Normals) → Упаковка (COCO/YOLO/TFRecord) → Хранилище/версии

→ Тренировка/валидация → Отчёты/итерации → (опц.) Экспорт на edge/демо

Доменная рандомизация: оси и диапазоны
Ось **Примеры параметров** **Рекомендации**
**Геометрия** варианты моделей, размер/скейл, деформации LOD/варианты мешей, сэмпл «по классам»
**Материалы/PBR** альбедо/шероховатость/металл, нормали Соблюдать физику, избегать «некондиционных» значений
**Свет/IBL/погода** HDRI, время суток, туман/дождь/снег Разные карты неба, корректная экспозиция
**Камера** FoV, шум сенсора, ISO/выдержка, rolling shutter Вносить реалистичные шумы/аберрации
**Позы/анимации** позы людей/объектов, скорости Сэмпл траекторий, границы столкновений
**Окклюзии/лут** преграды, грязь/блики, линз‑флееры Контролировать долю полных/частичных окклюзий

Практика: фиксируйте seed/версию набора параметров → воспроизводимость и «точечная» регенерация ошибок.

Аннотации: что генерировать

  • 2D: bbox (XYWH), instance masks (RLE/PNG), семантика (идентификаторы классов), keypoints.
  • 3D: 3D‑bbox (XYZWHL + yaw), позы объектов/камер, калибровки (intrinsics/extrinsics).
  • Глубина/нормали: линейная глубина в метрах, нормали в world/camera space.
  • Оптический поток: forward/backward (для видео/SLAM).
  • Статусы: occlusion, truncation, visibility, уровень света/погоды.
  • Стабильность ID: постоянные instance‑id в пределах клипа/сцены.

Профили GPU/VRAM и ориентиры скорости

Оценки для offscreen‑рендера 1080p, один световой проход + вывод карт (RGB+SEG+DEPTH), прогретые сцены.

**Профиль** **Изобр./мин (1080p)** **Видео (кадров/мин)** **Примечания**
**24 ГБ (Compact)** 300–800 900–1 800 Бюджетные пресеты, умеренные эффекты
**48 ГБ (Balanced)** 800–1 600 1 800–3 600 Больше параллелизма/эффектов
**80 ГБ (HQ)** 1 600–3 000 3 600–6 000 Тяжёлые сцены, множественные проходы

Фактическая скорость зависит от материалов, освещения, постэффектов и числа карт (Depth/Flow/Normals). Тюнинг — https://cloudcompute.ru/solutions/performance-tuning/ Хранилище, структура и версии

  • **Структура набора /dataset/v<date>_<seed>/images/{split}/{scene}/{frame}.png /dataset/v<date>_<seed>/labels/{split}/{scene}/{frame}.json|.png|.rle /dataset/meta/{version}.json (seed, параметры, движок, плагины)
  • Слои хранения: горячий NVMe для кэшей/временных файлов, тёплое объектное — итоговые наборы, холодное — архив. Подробнее — https://cloudcompute.ru/solutions/storage-data/

Оркестрация рендер‑фермы

  • Batch, interruptible: шардирование по сценам/кадрам/ракурсам, chunk ≤ 2 мин, ретраи. См. https://cloudcompute.ru/solutions/interruptible-patterns/
  • Очереди заданий: приоритеты (критичные сцены первыми), лимиты по VRAM/времени.
  • Кэш: локальный NVMe (веса, ассеты, baked‑кэш), чтобы не гонять гигабайты по сети.
  • Отчёты: покрытие классов/ракурсов/освещений, доля окклюзий, статистика глубин/нормалей.

Примеры конфигов (YAML)

A)Генерация статических изображений (COCO‑формат)

pipeline: synth-coco
engine: unreal # unity | omniverse | unreal
scenes:
 - name: warehouse_A
 count: 10000
 seeds: [1, 20000]
randomization:
 camera: { fov: [45, 90], tilt_deg: [-10, 20], motion_blur: [0.0, 0.4] }
 light: { hdr: ["dawn","noon","overcast"], exposure: [-1.0, 1.0] }
 mats: { roughness: [0.05, 0.9], metal: [0.0, 0.8] }
 weather:{ fog: [0, 0.02], rain: [0, 0.6] }
 objects:{ occlusion_rate: [0.0, 0.5] }
outputs:
 passes: [rgb, seg_instance, depth, normals]
 format: { rgb: "png", seg_instance: "png", depth: "exr" }
 annotations: coco_instance
export:
 splits: { train: 0.8, val: 0.1, test: 0.1 }
 out: s3://datasets/synth/coco_v1/
runtime:
 mode: batch
 chunk_seconds: 120
 retries: 3
 nvme_cache: true

B) Видео‑клипы с оптическим потоком

pipeline: synth-video-flow
engine: omniverse
clips:
 scene: street_night
 num_clips: 500
 clip_len: 120 # кадров
 fps: 24
randomization:
 camera_jitter: { pos: 0.05m, rot_deg: 1.5 }
 traffic_density: [0.2, 0.9]
 rain_intensity: [0.0, 0.7]
outputs:
 passes: [rgb, seg_instance, flow_fwd, flow_bwd, depth]
 encode: { rgb: "mp4_nvenc", seg_instance: "png", depth: "exr" }
export:
 format: "sequence+json"
 out: s3://datasets/synth/video_v2/
runtime:
 mode: batch
 nvme_cache: true

Проверка качества и покрытие

  • Структура и валидность: схемы аннотаций, отсутствие NaN/Inf/некорректных bbox.
  • Покрытие: распределения классов, ракурсов, окклюзий, освещений, расстояний, глубин.
  • Сложность: доля «hard» сцен (низкий свет, дождь, движение), пер‑класс mAP на валидации.
  • Стабильность ID/Flow: непрерывность instance‑id в клипах, метрики по flow‑ошибкам.
  • Дрифт: сравнение версий набора (vN→vN+1) по ключевым статистикам.

Наблюдаемость/дашборды — https://cloudcompute.ru/solutions/monitoring-logging/ и https://cloudcompute.ru/solutions/llm-inference/observability/

Sim2Real: как приблизить к реальности

  • Фотореалистичность: корректные PBR‑материалы, глобальное освещение, правдоподобные шумы сенсора.
  • Доменная адаптация: дообучение на малом реальном датасете, style‑transfer/аугментации (см. https://cloudcompute.ru/solutions/image-video-gen/style-transfer/).
  • Hard‑mining: берите ошибки модели из прод‑логов → регенерируйте похожие случаи с усилением факторов.
  • Тест‑тайм: нормализация экспозиции/цвета, теневые augment‑правила.
  • Гибрид: AI‑генерация текстур/фоновых ассетов + классический рендер — https://cloudcompute.ru/solutions/rendering/hybrid-ai

Экономика: как считать бюджет

Пусть t_img — среднее время рендера кадра (сек) с нужными картами, passes_factor — множитель за доп. проходы (Depth/Flow/Normals), c_gpu — цена GPU/час, Num_GPU — число GPU.

Images_per_hour ≈ 3600 / (t_img × passes_factor)

Cost_per_1K_images ≈ (1000 / Images_per_hour) × c_gpu × Num_GPU

Для видео длиной L_sec при fps:

Frames = L_sec × fps

Time_total ≈ Frames × t_img × passes_factor / Num_GPU

Cost_per_min_video ≈ (Time_total / 60) × (c_gpu × Num_GPU) / Num_clips

Оптимизация: отключить лишние проходы, снизить post‑эффекты, использовать interruptible пулы — см. https://cloudcompute.ru/solutions/cost-planner/ и https://cloudcompute.ru/solutions/interruptible-patterns/

Безопасность, лицензии, воспроизводимость

Траблшутинг

**Симптом** **Причина** **Что сделать**
«Игровой» вид изображений Недостаток PBR/света/шумов Улучшить материалы/IBL, добавить шум сенсора/аберрации
Переобучение на синтетику Узкое покрытие факторов Расширить рандомизацию, добавить реальный дообучающий набор
Нестабильные ID в видео Перегенерация объектов/анимаций Фиксировать instance‑id, стабилизировать симуляцию
Медленный рендер Слишком много проходов/эффектов Отключить лишнее, снизить разрешение/AA, батчить сцены
OOM на сценах Тяжёлые ассеты/текстуры LOD, стриминг текстур, baked‑карты, уменьшить тайлы
Сломанные аннотации Неверная система координат Синхронизировать intrinsics/extrinsics, проверять схемы

Как запустить в cloudcompute.ru

Хаб шаблонов — https://cloudcompute.ru/solutions/templates/

  • “Synthetic‑Unreal Farm” — headless рендер, COCO/YOLO, RGB/Depth/Seg/Flow, отчёты покрытия.
  • “Synthetic‑Omni Replicator” — мультимодальные проходы, видео/клипы, контроль Seed.
  • “Synthetic‑Unity Perception” — параметры доменной рандомизации, экспорт в стандартные форматы.

Инфраструктура: рендер — https://cloudcompute.ru/solutions/rendering/ • ассеты — https://cloudcompute.ru/solutions/rendering/asset-pipelines/ • гибрид AI+рендер — https://cloudcompute.ru/solutions/rendering/hybrid-ai/ • наблюдаемость — https://cloudcompute.ru/solutions/monitoring-logging/ • тюнинг — https://cloudcompute.ru/solutions/performance-tuning/

Чек‑лист перед продом

  • Определены задачи (детекция/сегментация/flow/3D), форматы аннотаций и метрики качества.
  • Согласованы оси рандомизации и таргет‑распределения (классы/ракурсы/окклюзии/погода).
  • Подобран профиль GPU (24/48/80 ГБ), подтверждены скорость/стоимость на пилоте.
  • Настроены рендер‑фермы (interruptible), кэш NVMe, ретраи/чанки ≤ 2 мин.
  • Включены отчёты покрытия, валидаторы аннотаций, сравнение версий набора.
  • Настроены доступы/лицензии/аудит, зафиксированы seed/версии контейнеров.

Навигация по разделу «Компьютерное зрение»

Хаб: https://cloudcompute.ru/solutions/computer-vision/ • Детекция: https://cloudcompute.ru/solutions/computer-vision/yolo/ • Интерактивная сегментация: https://cloudcompute.ru/solutions/computer-vision/sam/ • Эмбеддинги/ретривал: https://cloudcompute.ru/solutions/computer-vision/dinov2/ • Видео‑аналитика: https://cloudcompute.ru/solutions/computer-vision/video-analytics/ • Трекинг/ReID: https://cloudcompute.ru/solutions/computer-vision/tracking/ • 3D‑реконструкция: https://cloudcompute.ru/solutions/computer-vision/3d-reconstruction/ • Гео/SAR: https://cloudcompute.ru/solutions/computer-vision/geospatial/ • Экспорт на edge: https://cloudcompute.ru/solutions/computer-vision/edge-export/ • Рендеринг/фермы: https://cloudcompute.ru/solutions/rendering/ • Unreal: https://cloudcompute.ru/solutions/rendering/unreal/ • Omniverse: https://cloudcompute.ru/solutions/rendering/omniverse/ • Ассет‑плайны: https://cloudcompute.ru/solutions/rendering/asset-pipelines/ • Выпечка карт: https://cloudcompute.ru/solutions/rendering/pbr-baking/ • Гибрид AI+рендер: https://cloudcompute.ru/solutions/rendering/hybrid-ai/ • Пакетная генерация: https://cloudcompute.ru/solutions/image-video-gen/batch-render/ • Экономика/наблюдаемость/тюнинг: https://cloudcompute.ru/solutions/cost-planner/https://cloudcompute.ru/solutions/monitoring-logging/https://cloudcompute.ru/solutions/llm-inference/observability/https://cloudcompute.ru/solutions/performance-tuning/https://cloudcompute.ru/solutions/interruptible-patterns/ • CI/CD: https://cloudcompute.ru/solutions/containers-ci-cd/

Готовы запустить?

Запустить GPU-сервер