Автор: Дмитрий Раков Редактура: Марк Страхов
Продолжаем знакомиться с лидарными данными и изучать алгоритмы формирования их представлений.
Во второй части статьи вы узнаете:
- о методах трансформации данных в многоканальные изображения (Bird’s Eye View Projection и Spherical Projection)
- о методе представления данных как набора векторов (Bag-of-Points)
Первые помогут использовать данные представления в современных методах real-time обработки — обработки без тяжеловесных 3D convolution слоев, а второй активно применяется в задаче классификации.
BEV проекция — метод представления точек на плоскости. В качестве конечной системы координат используется координатная сетка размера HxW пикселей. Она отображает метрическое пространство nxm метров, где в качестве значения каждой ячейки может выступать одно из статистических свойств данных, например, максимальное значение высоты (как на рисунке ниже).
Результат BEV проекции точек для лидара с поворотным механизмом
Для формирования такого вида представления точек нужно изначально определить конкретные параметры:
$$ \delta - частота\ дискретизации \ пространства \ K*K \ метров \ для \ формирования \ одной \ ячейки \ BEV \ представления \newline x \in [\min x,\max x] - границы \ значений \ для \ x \newline y \in [\min y,\max y] - границы \ значений \ для \ y \newline z \in [\min z,\max z] - границы \ значений \ для \ z $$
Границы для координат точек, как правило, необходимы по следующим причинам:
$$ \delta = 0.1 \ метр \newline x \in [0,100] \newline y \in [-30,30] \newline H = \frac{(100 - 0)}{\delta} \newline W = \frac{(30 - (-30))}{\delta} \newline Размер\ изображения - 1000\times600 \ пикселей
$$
Итак, мы определились с полученными параметрами. Теперь нам нужно установить ассоциации между всеми имеющимися в облаке точками и индексами ячеек, в которые они попадают. Затем преобразовываем различное количество точек в каждой ячейке в конечное количество признаков, вычисленных для каждой ячейки. Обычно получаются следующие базовые признаки:
$$ {\small Max\ Height - максимальное \ значение \ z \ в \ ячейке} \newline {\small Occupancy \in \{0,1\} \ в\ зависимости \ от \ наличия \ или \ отсутствия \ точек \ в \ ячейке} \newline {\small Density - общее \ количество \ точек \ в \ ячейке } \newline {\small Mean\ Intensity - среднее \ значение \ интенсивности \ в \ ячейке} $$
Для каждого признака используется отдельный канал. Таким образом формируется многоканальное представление входных данных.
Пример визуального представления полученных каналов
Его удобно применять в легковесных архитектурах детекции и сегментации, потому что, для обработки таких данных достаточно классических Conv2d слоев в качестве модулей выделения признаков.
Spherical (Range Image) Projection — метод проекции точек лидарного облака в изображение путем сопоставления сферических координат координатам на плоскости (изображении).