Начало работы с PointPillars

PointPillars является методом для 3-D обнаружения объектов с помощью 2D сверточных слоев. Сеть PointPillars имеет learnable энкодер, который использует PointNets, чтобы изучить представление облаков точек, организованных в столбах (вертикальные столбцы). Сеть затем запускает 2D сверточную нейронную сеть (CNN), чтобы произвести сетевые предсказания, декодирует предсказания и генерирует 3-D ограничительные рамки для различных классов объектов, таких как автомобили, грузовики и пешеходы.

PointPillars object detection

Сеть PointPillars имеет эти основные этапы.

  1. Используйте энкодер функции, чтобы преобразовать облако точек в разреженное псевдоизображение.

  2. Обработайте псевдоизображение в высокоуровневое представление с помощью 2D магистрали свертки.

  3. Обнаружьте и регрессируйте 3D ограничительные рамки с помощью голов обнаружения.

Сеть PointPillars

Сеть PointPillars требует двух входных параметров: индексы столба как P-by-2 и столб показывают как P-by-N-by-K матрица. P является количеством столбов в сети, N является числом точек на столб, и K является размерностью признаков.

Сеть начинается с энкодера функции, который является упрощенным PointNet. Это содержит серию свертки, пакетной нормы и relu слоев, сопровождаемых макс. слоем объединения. Поля точек слой в конце сопоставляет извлеченные функции в 2D пробел с помощью индексов столба.

Затем сеть имеет 2D магистраль CNN, которая состоит из блоков декодера энкодера. Каждый блок энкодера состоит из свертки, пакетной нормы и relu слоев, чтобы извлечь функции при различных пространственных разрешениях. Каждый блок декодера состоит из, транспонируют свертку, пакетную норму и relu слои.

Сеть затем конкатенирует выходные функции в конце каждого блока декодера и передает эти функции через шесть голов обнаружения со сверточными и сигмоидальными слоями, чтобы предсказать заполнение, местоположение, размер, угол, заголовок и класс.

PointPillars network diagram

Создайте сеть PointPillars

Можно использовать приложение Deep Network Designer (Deep Learning Toolbox), чтобы в интерактивном режиме создать нейронную сеть для глубокого обучения PointPillars. Чтобы программно создать сеть PointPillars, используйте pointPillarsObjectDetector объект.

Передача обучения

Реконфигурируйте предварительно обученную сеть PointPillars при помощи pointPillarsObjectDetector объект использовать обучение с переносом. Задайте новые классы объектов и соответствующие поля привязки, чтобы обучить сеть на новом наборе данных.

Обучите детектор объектов PointPillars и выполните обнаружение объектов

Используйте trainPointPillarsObjectDetector функция, чтобы обучить сеть PointPillars. Чтобы выполнить обнаружение объектов в обученной сети PointPillars, используйте detect функция. Для получения дополнительной информации о том, как обучить сеть PointPillars, смотрите Лидар 3-D Обнаружение объектов Используя Глубокое обучение PointPillars.

Генерация кода

Чтобы изучить, как сгенерировать код CUDA® для Сети PointPillars, смотрите Генерацию кода Для Обнаружения объектов Лидара Используя Глубокое обучение PointPillars.

Ссылки

[1] Ленг, Алекс Х., Sourabh Vora, Хольгер Цезарь, Лубин Чжоу, Цзюн Ян и Оскар Бейджбом. “PointPillars: Быстрые Энкодеры для Обнаружения объектов От Облака точек” На 2019 Конференциях IEEE/CVF по Компьютерному зрению и Распознаванию образов (CVPR), 12689–97. Лонг-Бич, CA, США: IEEE, 2019. https://doi.org/10.1109/CVPR.2019.01298.

[2] Hesai и Scale. PandaSet. https://scale.com/open-datasets/pandaset.

Смотрите также

Приложения

Объекты

Функции

Связанные примеры

Больше о

Для просмотра документации необходимо авторизоваться на сайте