Этот пост суммирует статью: Адаптация домена для обнаружения транспортных средств на основе данных облака точек LiDAR с высоты птичьего полета
Проблема:
Обнаружение транспортных средств на основе синтетических данных облака точек LiDAR
Почему это проблема?
Недавнее развитие методов глубокого обучения (таких как CNN) для обнаружения объектов и задач компьютерного зрения требует помеченных наборов данных. Это проложило путь для синтетических наборов данных, где проще аннотировать данные и их можно автоматизировать. Но проблема в том, что он теряет обобщение на реальные данные. Синтетические данные слишком совершенны и упускают важные артефакты из реального мира, такие как искажение движения или изменчивость лучей LiDAR и т. д.
Поскольку происходит смещение предметной области, модели, обученные на синтетических данных, не так хорошо работают в реальных сценариях. .
Таким образом, важно преодолеть разрыв между синтетическими и реальными данными, чтобы использовать автоматизацию, которую можно использовать для создания синтетических данных, поскольку маркировка данных облака точек сложна.
Что они пытаются сделать, чтобы решить эту проблему?
В этой статье предлагается новая структура адаптации предметной области, которая использует CycleGAN для преодоления разрыва между синтетическими и реальными данными облака точек.
Модель CycleGAN обучена преобразовывать синтетические данные облака точек BEV (Bird’s Eye View) в данные реального облака точек и наоборот.
Это отображение достигается с помощью двух генераторов G{S→R} и G{R→S} и двух дискриминаторов Ds и DR.
G{S→R} пытается сопоставить исходные синтетические данные с целевыми реальными данными. G{R→S} пытается сопоставить сгенерированные данные облака точек из реального обратно в исходный исходный домен.
Ds пытается провести различие между исходными синтетическими данными и сгенерированными данными из G{R→S}.
DR пытается провести различие между реальными данными и сгенерированными данными из G{S→R}.
Фреймворк имеет 2 внутренних цикла — Cycle_s и cycle_r.
В Cycle_s ввод синтетических данных проходит через G{S→R}, а вывод затем проходит через DR. Выход генератора также проходит через G{R→S} для получения реконструированного исходного входного образца. Та же процедура выполняется для Cycle_R. входная выборка из реальных данных проходит через G{R→S}, а затем через Ds. Выход G{R→S} передается через G{S→R} для восстановленных реальных данных.