Синтетические данные в Unity теперь включают уникальных людей и дома. Успех амбициозных систем компьютерного видения (computer vision — CV), основанных на машинном обучении (machine learning — ML), зависит от больших объемов информации. Поскольку производительность этих систем во многом зависит от данных, сбор наиболее подходящих часто является правильным способом улучшить производительность модели. Однако сбор и аннотирование реальных данных настолько дороги и трудоемки, что для многих проектов подход, ориентированный на данные, не представляется возможным. В связи с этим тысячи команд обратились к Unity для создания синтетических данных для компьютерного видения.
Сегодня мы делаем большой скачок вперед в области синтетических данных, обновляя наши инструменты с открытым исходным кодом для создания синтетических данных, которые мы называем Perception 1.0. Новый пакет Synthetic Humans дает вам разнообразных, рандомизируемых и детерминированных 3D-людей. Новый генератор наборов данных Synthetic Homes предоставляет фотореалистичные данные о домашнем интерьере для понимания сцены и обнаружения объектов. Кроме того, пакет Perception был обновлен: в него добавлены вывод глубины и нормали, поддержка трассировки пути, а также инструменты визуализации и анализа Python.
С помощью этого расширенного набора инструментов мы хотим дать вам возможность создавать высококачественные синтетические данные быстрее, чем когда-либо.
Оглавление
Synthetic Humans — генератор человека
Мы рады объявить о выпуске Unity Synthetic Humans, генератора 3D-людей, созданного с нуля для синтетических данных CV, ориентированных на человека. Тысячи часов ушли на создание этого контента, используя сочетание сканирования, моделирования и 3D-искусства. Сегодня мы предоставляем всю эту работу бесплатно по лицензии с открытым исходным кодом для академического использования.
В отличие от других цифровых людей, которые представляют собой небольшие вариации нескольких базовых моделей персонажей, Synthetic Humans создают огромное разнообразие, сочетая библиотеки причесок, полностью анонимизированное лицо и этническую генерацию, модели тела и одежду. В результате каждый сгенерированный человек является уникальным — вместо того, чтобы генерировать конкретного человека, вы управляете распределением выборки по осям рандомизации, включая этническую принадлежность, рост, вес и возраст. Например, в параметрах генерации можно указать набор данных с 20% детей, 45% подростков и 35% людей среднего возраста и старше.
Ключевые особенности:
- Широкий диапазон разнообразия по возрасту, типу тела и цвету кожи.
- Богатая маркировка, включая ключевые точки тела и сегментацию одежды
- Полностью ригидные и обтянутые кожей тела и одежда, совместимые с Unity Animation System
- Рандомизация размещения в 3D-окружении с предотвращением столкновений
Synthetic Homes — набор данных интерьеров домов
Мы также выпускаем Synthetic Homes, масштабный набор синтетических домашних интерьеров и соответствующий генератор данных. Вариантов использования CV в доме бесчисленное множество, но сбор разнообразных данных о домашнем интерьере в реальном мире, как известно, затруднен из-за соображений конфиденциальности и ограничений на сбор информации. Synthetic Homes призван ускорить обучение моделей для таких приложений, предоставляя большой набор данных разнообразных домашних интерьеров с точной и богатой маркировкой, а также настраиваемый генератор наборов данных.
Инструмент включает в себя различные рандомизации для достижения максимального разнообразия. К ним относятся материалы, тип и конфигурация мебели, угол и температура солнечного света, переключение день/ночь, температура внутреннего освещения, углы наклона камеры, беспорядок, скайбокс, анимация дверей и штор и многое другое. Генератор наборов данных дает вам контроль над многими из этих элементов, позволяя настраивать их по своему вкусу.
Внутреннее освещение в домах является сложным и трудоемким, что делает фотореализм особенно важным. Мы использовали трассировку лучей Unity с несколькими модификациями для создания физически точного глобального освещения и отражений. Такая точность может помочь преодолеть так называемый «разрыв Sim2Real», улучшая способность модели хорошо работать в реальном мире после обучения на синтетических данных.
Проект Synthetic Homes включает в себя набор из 100 000 изображений, настраиваемый генератор наборов данных и блокнот для анализа. Набор данных включает в себя метки для семантической и объектной сегментации, ограничивающие рамки, глубину и нормали. Он также включает информацию об окружающей среде, такую как процент окклюзии и положение камеры. Чтобы вы могли итеративно работать с данными, мы также предоставляем генератор наборов данных, где вы можете настроить такие параметры, как положение камеры, рандомизация размытия и размер изображения.
Большое обновление пакета Perception
Пакет Perception обеспечивает работу с синтетическими данными в редакторе Unity. В этом выпуске мы расширяем пакет, чтобы работать над новыми задачами CV, повысить качество и ускорить разработку. Новые возможности Perception включают:
- Пример конвейерной ленты иллюстрирует захват видеоданных с рандомизированным генерацией объектов и физикой.
- Интеграция трассировки лучей обеспечивает высокофотореалистичные изображения с использованием физически обоснованного освещения при минимальной настройке.
- Маркировщик окклюзии рассчитывает, какая часть объекта заслонена другими частями сцены, а какая находится за пределами экрана. Эта информация позволяет отфильтровать аннотации к сильно окклюзированным объектам.
- Маркеры глубины и нормалей фиксируют слои рендеринга, которые можно использовать для новых задач или предоставлять моделям дополнительную информацию для более точного прогнозирования.
- Поддержка прозрачности и двусторонней геометрии позволяет наносить пиксельные метки на растения в сельском хозяйстве и на открытом воздухе.
Мы также хотим дать сообществу больше возможности влиять на Perception, поэтому вместе с этим релизом мы открываем исходный код для участия сообщества.
pysolotools — анализ данных и визуализация на Python
Исследование и анализ данных имеют решающее значение для быстрой итерации синтетических данных и мы хотим сделать это как можно проще. В этом обновлении мы представляем новый формат наборов данных SOLO, разработанный для крупномасштабных наборов данных изображений и расширяемый для новых типов аннотаций и метрик. Наборы данных SOLO разделяются на диске по кадрам, что позволяет создавать и обрабатывать распределенные наборы данных.
Одновременно с форматом SOLO мы выпускаем pysolotools, новый пакет python с открытым исходным кодом, который предоставляет утилиты для работы с форматом SOLO. Пакет pysolotools Python предоставляет интерфейс итератора, который позволяет легко работать с данными SOLO на основе покадровой обработки. Он также включает структуру для легкого получения общей статистики набора данных, универсальной для большинства проблем CV, таких как количество объектов, распределение по размерам и тепловые карты. Наконец, с помощью pysolotools легко написать пользовательские скрипты для преобразования данных из SOLO в нужный вам формат. Pysolotools поставляется с готовыми конвертерами в некоторые популярные форматы, включая COCO.
Наконец, мы понимаем, что важно иметь возможность визуально проверить созданные данные. pysolotools-fiftyone — это интеграция с программой просмотра Voxel FiftyOne, позволяющая визуально проверять наборы данных SOLO.
Источник — https://blog.unity.com/engine-platform/perception-open-source-toolbox-for-synthetic-data