LISO: Lidar-only Self-Supervised 3D Object Detection
Разметка 3D-боксов очень дорогая, долгая и плохо масштабируется. А сырых LiDAR-логов, наоборот, очень много. Сегодня разберём статью о том, как использовать лидарные данные о движении объектов для разметки.
Сначала авторы готовят начальную разметку. Пайплайн такой:
1. По соседним LiDAR-кадрам считают ego motion — движение эго-агента.
2. Вычисляют scene flow — движение каждой точки между кадрами.
3. Вычитают ego motion из scene flow, чтобы получить residual motion — относительное движение.
4. Точки с ненулевым residual motion считают движущимися объектами.
5. Кластеризуют точки с ненулевым residual motion и собирают их в 3D-боксы.
6. Следят, как перемещаются боксы с течением времени, и чистят шум — так получается начальная разметка.
Следующий этап — итеративный self-training. Модель-детектор обучают на полученной разметке и прогоняют по начальной разметке, чтобы получить новые боксы. Потом снова строят треки, фильтруют шум, улучшают разметку и обновляют псевдо-GT. Обучение повторяется до тех пор, пока и псевдо-разметка и сама модель не улучшатся до требуемых пределов.
Хотя начальная разметка содержит только движущиеся объекты, детектор обучается на single-frame point cloud — поэтому постепенно начинает находить и способные двигаться объекты. Например, припаркованные машины. То есть движение используется только как bootstrap-сигнал, а дальше модель дообучается по геометрии сцены.
На момент публикации LISO стабильно обгонял другие self-supervised-подходы на WOD, KITTI, AV2 и nuScenes, хотя до fully-supervised-моделей ему ещё было куда расти.
Разбор подготовил ❣️ Фарух Яушев
404 driver not found
Разметка 3D-боксов очень дорогая, долгая и плохо масштабируется. А сырых LiDAR-логов, наоборот, очень много. Сегодня разберём статью о том, как использовать лидарные данные о движении объектов для разметки.
Сначала авторы готовят начальную разметку. Пайплайн такой:
1. По соседним LiDAR-кадрам считают ego motion — движение эго-агента.
2. Вычисляют scene flow — движение каждой точки между кадрами.
3. Вычитают ego motion из scene flow, чтобы получить residual motion — относительное движение.
4. Точки с ненулевым residual motion считают движущимися объектами.
5. Кластеризуют точки с ненулевым residual motion и собирают их в 3D-боксы.
6. Следят, как перемещаются боксы с течением времени, и чистят шум — так получается начальная разметка.
Следующий этап — итеративный self-training. Модель-детектор обучают на полученной разметке и прогоняют по начальной разметке, чтобы получить новые боксы. Потом снова строят треки, фильтруют шум, улучшают разметку и обновляют псевдо-GT. Обучение повторяется до тех пор, пока и псевдо-разметка и сама модель не улучшатся до требуемых пределов.
Хотя начальная разметка содержит только движущиеся объекты, детектор обучается на single-frame point cloud — поэтому постепенно начинает находить и способные двигаться объекты. Например, припаркованные машины. То есть движение используется только как bootstrap-сигнал, а дальше модель дообучается по геометрии сцены.
На момент публикации LISO стабильно обгонял другие self-supervised-подходы на WOD, KITTI, AV2 и nuScenes, хотя до fully-supervised-моделей ему ещё было куда расти.
Разбор подготовил ❣️ Фарух Яушев
404 driver not found