Платформа для генерації синтетичних даних

Віртуальне середовище для створення навчальних наборів даних і тестування алгоритмів комп’ютерного зору та робототехніки

Команда QuData створила платформу для генерації синтетичних даних на базі Unreal Engine, JSBSim та AirSim, яка дозволяє створювати різноманітні реалістичні датасети з автоматичною розміткою даних. Це рішення дозволяє навчати та перевіряти моделі сприйняття в рідкісних, небезпечних та екстремальних умовах, які складно або неможливо безпечно відтворити у реальному світі.

Завдання

Сучасні системи комп’ютерного зору залежать від великих і різноманітних наборів даних. Команди, які створюють автономних роботів-кур’єрів, безпілотні автомобілі, складські роботизовані платформи та системи моніторингу розумних міст, стикаються з двома постійними перешкодами.

Перша – це різноманітність умов експлуатації. Модель сприйняття, навчена на зображеннях освітлених вулиць і чистих тротуарів, може працювати нестабільно під час дощу чи снігопаду, у сутінках або з наявним інтенсивним пішохідним рухом. Для реального використання системи повинні бути стійкими не лише у звичних ситуаціях, а й у складних або нестандартних сценаріях.

Іншим серйозним викликом є анотація даних. Ручна розмітка зображень з великих наборів даних потребує значних витрат часу та ресурсів і часто супроводжується помилками або неточностями. Люди, які роблять анотації, припускаються помилок, особливо на кадрах з поганою видимістю, з переповненим середовищем або із частковим перекриттям об’єктів. Для систем, де безпека має критичне значення, такі помилки можуть безпосередньо впливати на поведінку моделей.

Тому метою було не просто створити ще один симулятор. Завдання полягало у розробці виробничого середовища генерації синтетичних даних, здатного:

  • створювати віртуальні сцени для роботів та автономних агентів;
  • моделювати погодні умови, освітлення та інші зовнішні фактори;
  • емулювати роботу різних сенсорів, а не тільки RGB-камер;
  • автоматично створювати мітки “ground-truth”;
  • тестувати алгоритми керування роботами перед їхнім запуском у польових умовах;
  • зменшити витрати та ризики, пов’язані зі збором унікальних реальних сценаріїв.

Огляд рішення

Для вирішення цих задач було створено пайплайн цифрового двійника, який поєднує візуальний реалізм із фізичною достовірністю моделювання.

Використовуючи Unreal Engine для високоякісного рендерингу, AirSim для моделювання транспортних засобів і датчиків, а також JSBSim для фізичного симулювання польоту дронів та інших літальних апаратів, команда створила масштабоване віртуальне середовище, у якому можна керувати практично будь-якими параметрами. Інженери можуть за лічені секунди змінювати час доби, від літнього полудня до зимових сутінків, викликати дощ або туман, змінювати коефіцієнт зчеплення дороги, переміщувати перешкоди, регулювати щільність пішохідного потоку або моделювати аварійні ситуації, не чекаючи поки вони трапляться в реальності. Unreal Engine використовується як платформа для створення 3D-графіки в реальному часі, тоді як AirSim і JSBSim забезпечують рівень симуляції автономних транспортних засобів, дронів, автомобілів і програмних робочих процесів управління.

Центральним компонентом такого рішення стала платформа віртуального середовища від QuData (QuVE) – система побудови сцен і оркестрації сценаріїв. Вона відповідає за формування віртуальних світів із модульних об’єктів і визначених правил поведінки. Замість того, щоб вручну проєктувати кожен кадр, команда визначає класи середовищ: вулиці, двори, склади, логістичні центри, пішохідні переходи, зони завантаження та внутрішні коридори.

Згенеровані синтетичні датасети можуть використовуватися для навчання моделей комп’ютерного зору, зокрема детекції і сегментації на кшталт YOLO, після чого моделі додатково донавчаються на невеликій кількості реальних даних для підвищення якості роботи у реальних умовах.

Технічні деталі

Платформа QuVE інтегрує кілька компонентів, відповідальних за генерацію середовищ, симуляцію, оркестрацію сценаріїв і створення даних.

Двигун середовища. Unreal Engine служить основою для створення фотореалістичних цифрових середовищ. Він забезпечує високоякісний рендеринг, підтримку реалістичних матеріалів і гнучкі системи освітлення, що дозволяє моделювати міські, промислові та внутрішні простори. Рівень візуальної деталізації таких середовищ є достатнім для розробки та тестування алгоритмів комп’ютерного зору в умовах, максимально наближених до реального світу.

Фізика та симуляція руху транспортних засобів. AirSim та JSBSim додають рівень моделювання для автономних платформ, які працюють у цих віртуальних середовищах. Це дозволяє програмно керувати модельованими транспортними засобами, такими як дрони та наземні роботи, одночасно генеруючи віртуальні потоки даних датчиків, які відтворюють поведінку реальних систем сприйняття. Завдяки цьому інженери можуть безпосередньо підключати симуляційне середовище до алгоритмів робототехніки, навчальних пайплайнів і тестових сценаріїв.

Рівень оркестрації. Оркестрування віртуальних середовищ та сценаріїв моделювання здійснюється фреймворком QuVE. Ця система відповідає за процедурну генерацію сцен та автоматизацію створення наборів даних. Інженери визначають шаблони сценаріїв та класи середовищ, після чого платформа динамічно формує сцени, використовуючи модульні ресурси та конфігуровані параметри. Погодні умови, освітлення, розташування об’єктів і події можуть автоматично варіюватися, що дозволяє створювати різноманітні сценарії-симуляції. Платформа також підтримує пакетну генерацію великих наборів даних із автоматичним експортом анотацій.

Конвеєр зі збору даних. Під час кожного запуску симуляції платформа записує синхронізовані потоки сенсорних датчиків разом з детальними метаданими про стан середовища. Кожен згенерований кадр містить інформацію про часові мітки, параметри камер, ідентифікатори об’єктів і конфігурацію сцени. Це підтримує як контрольоване навчання, так і налагодження робототехніки.

Автоматизована анотація. Автоматична система розмітки даних усуває необхідність повільного та схильного до помилок ручного маркування. Оскільки кожен об’єкт у цифровому середовищі генерується процедурно, а його точні координати відомі, система може одночасно з рендерингом кожного кадру створювати ідеально точні “ground-truth” анотації. Це включає широкий спектр метаданих, таких як 2D та 3D обмежувальні рамки, маски семантичної сегментації на рівні пікселів, ідентифікатори об’єктів та точні значення глибини. Навіть у складних сценаріях платформа підтримує абсолютну геометричну точність, недосяжну для спеціаліста по розмітці. Отримані набори даних автоматично формуються у форматах, готових до негайного використання для навчання сучасних моделей, таких як YOLO та інші.

Навчальний пайплайн. Згенеровані датасети застосовуються для розробки систем сприйняття, які виконують задачі виявлення об’єктів, семантичної сегментації, класифікації, відстеження об’єктів і розпізнавання аномалій. Окрім створення навчальних даних, середовище дозволяє тестувати алгоритми керування роботами у симульованих умовах перед їхнім розгортанням у реальному світі.

Стек технологій

Unreal Engine

Unreal Engine

JSBSim

JSBSim

Llama 2

AirSim

Python

Python

C++

C++

YOLO v8

YOLO v8