Синтетические данные для CV: Unity/Unreal/Omniverse
Задача страницы. Показать, как планировать и производить синтетические датасеты для задач CV на облачных GPU: выбор движка (Unity/Unreal/Omniverse), доменная рандомизация, рендер‑фермы, аннотации (2D/3D боксы, маски, глубина, нормали, оптический поток), упаковка в форматы COCO/YOLO, контроль качества, sim2real‑адаптация и экономика.
TL;DR
- Разделите процесс на три контура: интерактивная сцена (редактура), рендер‑ферма (batch) и валидация/иттерации (метрики, закрытие long‑tail).
- Стартуйте с доменной рандомизации по осям: геометрия, материалы, свет/погода, позы, камера, шум сенсора.
- Рендерите батчами в interruptible пулах (чанк ≤ 2 мин, NVMe‑кэш); интерактив для художников — on‑demand станции (см. удалённые рабочие: https://cloudcompute.ru/solutions/rendering/studio-remote/).
- Экономику считайте по Cost_per_1K_images / Cost_per_min_video, оптимизируйте количеством проходов (RGB/Depth/Seg/Flow) и тайлингом.
- Смежные разделы: CV‑хаб — https://cloudcompute.ru/solutions/computer-vision/ • рендер‑фермы — 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/performance-tuning/ • хранилище — https://cloudcompute.ru/solutions/storage-data/ • наблюдаемость — https://cloudcompute.ru/solutions/monitoring-logging/ и https://cloudcompute.ru/solutions/llm-inference/observability/ • экономика — https://cloudcompute.ru/solutions/cost-planner/ • прерываемые пулы — https://cloudcompute.ru/solutions/interruptible-patterns/ • CI/CD контейнеров — https://cloudcompute.ru/solutions/containers-ci-cd/
Зачем и когда синтетика
- Cold‑start: нет данных/разметки — запускаем обучение на синтетике с последующим дообучением на реале.
- Редкие/опасные события: аварии, ночные сцены, экстремальная погода.
- Приватность/интеллектуальная собственность: вместо реальных съёмок в чувствительных средах.
- Контроль распределения: баланс классов, заданные доли ракурсов/окклюзий/фонов.
- Быстрые итерации: автоматически генерим «hard cases» по отчётам об ошибках модели.
Базовая архитектура проекта
DCC/ассеты → Сцена (Unity/Unreal/Omni) → Параметризация (randomization) → Рендер‑ферма (headless)
→ Аннотации (2D/3D/Depth/Flow/Normals) → Упаковка (COCO/YOLO/TFRecord) → Хранилище/версии
→ Тренировка/валидация → Отчёты/итерации → (опц.) Экспорт на edge/демо
- Интерактив: удалённые GPU‑станции для авторинга — https://cloudcompute.ru/solutions/rendering/studio-remote/
- Batch‑рендер: headless узлы, очереди/ретраи — https://cloudcompute.ru/solutions/image-video-gen/batch-render/
- Ассет‑пайплайны: подготовка/выпечка PBR‑карт, LOD — https://cloudcompute.ru/solutions/rendering/asset-pipelines/ и https://cloudcompute.ru/solutions/rendering/pbr-baking/
Доменная рандомизация: оси и диапазоны
| Ось | **Примеры параметров** | **Рекомендации** |
| **Геометрия** | варианты моделей, размер/скейл, деформации | 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/
Безопасность, лицензии, воспроизводимость
- Происхождение ассетов: лицензии моделей/текстур/сканов; храните манифесты.
- Версионирование: движок/плагины/скрипты/seed; заморозка контейнеров (см. https://cloudcompute.ru/solutions/containers-ci-cd/).
- Доступы и аудит: ключи/роли, лог воспроизведения набора, контроль экспорта.
- PII: не включать узнаваемые лица/номера; маскирование в предпросмотрах. Подробнее — https://cloudcompute.ru/solutions/security/ и https://cloudcompute.ru/solutions/llm-inference/guardrails/
Траблшутинг
| **Симптом** | **Причина** | **Что сделать** |
| «Игровой» вид изображений | Недостаток 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-сервер