Как стирается граница между цифровой камерой и лидаром

14 сентября 2018
lidar

Как стирается граница между цифровой камерой и лидаром

Когда Ouster начали разрабатывать свой лидар три года назад, было очевидно, что исследования в сфере глубокого обучения для камер превзошли исследования по лидарам. Данные лидара обладают невероятными преимуществами: богатая пространственная…

Когда Ouster начали разрабатывать свой лидар три года назад, было очевидно, что исследования в сфере глубокого обучения для камер превзошли исследования по лидарам. Данные лидара обладают невероятными преимуществами: богатая пространственная информация и высокая светочувствительность. Однако им не хватает исходного разрешения и эффективной структуры массива изображений, а трехмерные облака точек по-прежнему сложно использовать в нейросетях или обрабатывать с помощью аппаратного ускорения.

Ouster — старт-ап из Сан-Франциско, конструирующий 3D-сенсоры, которые сделают мир будущего намного безопаснее. По крайней мере, так утверждают сами разработчики.

Как работает лидар

Лидар — активный дальномер оптического диапазона, который формирует трёхмерную картину окружающего пространства. Работает по принципу эхолота. На открытых пространствах в качестве излучателя используется лазер, в закрытых помещениях достаточно обычного светодиода. Лидары разрабатываются с 1960-х годов.

Обычная цифровая видеокамера делает изображения с более высоким разрешением, но не дает точную информацию о расстоянии до объектов и плохо работает при слабом освещении.

lidar изображение
Данные с лидара — улица в Сан-Франциско

Разработчики Ouster решили взять только лучшее от камер и лидаров, объединив это в одном устройстве. Лидар Ouster OS-1 выдает изображения с фиксированной разрешающей способностью. Слои данных пространственно коррелированы, без временных несоответствий или шаттер эффектов, имеют 16 бит на пиксель и линейную фотоотраженность.

лидар и камера
Одновременные уровни изображения в реальном времени выводятся из OS-1. То, что вы видите сверху донизу, это данные окружающего мира, интенсивности, дальности и облака точек — ВСЕ от лидара. Обратите внимание, что окружающее изображение захватывает облачное небо и тени от деревьев и транспортных средств

Оптическая система OS-1 имеет большую диафрагму, чем большинство DSLR, а разработанный метод подсчета фотонов ASIC настроен на повышенную чувствительность, поэтому окружающие изображения получаются детальными даже в условиях низкой освещенности. OS-1 фиксирует как прямые сигналы, так и скрытые данные (ambient data) в ближнем инфракрасном диапазоне, поэтому данные напоминают видимые освещенные изображения тех же сцен. Поэтому есть вероятность, что алгоритмы, разработанные для камер, хорошо будут работать с данными из лидара.

Open source визуализатор

Также разработчики обновляют open-source драйвер для лидара OS-1, чтобы он выдавал слои данных в фиксированном разрешении с панорамным обзором в 360. Помимо этого создатели представляют новый, встроенный в VTK, кросс-платформенный инструмент для визуализации, для просмотра, записи и воспроизведения, как изображений, так и облаков точек. Выходные данные сенсора не требуют пост-процессинга, чтобы показывать заявленную функциональность, все происходит в аппаратной части, а драйвер просто собирает потоки пакетов данных в изображения.

 Our new open source visualizer. Full drive video: https://www.youtube.com/watch?v=LcnbOCBMiQM
Новый open-source визуализатор

Обучение нейросети на данных с лидара

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

Как один из примеров, исследователи натренировали попиксельный семантичесский классификатор, который определяет дорогу, транспорт, пешеходов и велосипедистов по набору кадров глубин и интенсивностей. Итоговая нейросеть была запущена на NVIDIA GTX 1060 в реальном времени и показала впечатляющие результаты, особенно, если учитывать, что это первая попытка.

Семантическая сегментация данных с лидара
Семантическая сегментация данных с лидара: https://www.youtube.com/watch?v=JxR9MasA9Yc

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

3d_label_2.gif

В другом случае создатели решили не объединять данные в вектор, а оставить их разделенными и прогнать их через ту же нейросеть по отдельности.

Как пример они использовали предобученную нейросеть SuperPoint project от DeTone и запустили напрямую на их изображениях глубины и интенсивности. Нейросеть обучена на большом количестве RGB изображений и никогда не видела данные с лидара, но результаты на интенсивности и глубине поражают.

 Full video: https://www.youtube.com/watch?v=igsJxrbaejw При внимательном обзоре, становится понятно, то нейросеть выделяет разные ключевые точки на каждом изображении. Тот, кто работал над лидарной и визуальной одометриями, поймет ценность избыточности, воплощенной в этом результате. Лидарная одометрия используется в геометрически однородных средах, например туннелях, тогда как визуальная одометрия применяется в открытых или плохо освещенных средах. Камера-лидар предоставляет мультимодальное решение для этой задачи.

Полученные результаты дают уверенность в том, что синергия данных с камеры и лидара нечто большее, чем просто сумма двух наборов данных.


Ссылки:

1. Видео


Интересные статьи:

Kepler.gl — мощный инструмент визуализации карт от Uber с открытым исходным кодом

4 июня 2018
Kepler.gl 

Kepler.gl — мощный инструмент визуализации карт от Uber с открытым исходным кодом

Big Data — термин, который часто используется, но ни одно определение не объясняет, что это такое. Большинство людей сходятся во мнении, что big data — набор данных, который со временем растет в…

Big Data — термин, который часто используется, но ни одно определение не объясняет, что это такое. Большинство людей сходятся во мнении, что big data — набор данных, который со временем растет в геометрической прогрессии. Проще говоря, такие данные настолько объемны и сложны, что традиционные средства обработки данных и управления ими не способны эффективно обрабатывать их или управлять ими.

По мере того, как мы продвигаемся в мир искусственного интеллекта, интернета вещей (Internet of Things) и “облачных вычислений” (Cloud Computing), объем данных, которые генерируются и хранятся, растет невероятно быстрыми темпами. Big data становится еще больше, и визуализация — еще один способ использовать эти данные.

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

Что такое Kepler.gl?

Разработчики из Uber выпустили новый инструмент визуализации и исследования данных под названием Kepler.gl. В Uber описывают его как высокопроизводительное веб-приложение для визуального исследования крупномасштабных наборов геолокационных данных.

Population map of New York City
Карта населения Нью-Йорка, сделанная с помощью Kepler.gl

Фактически, это гибкий инструмент визуализации карт, основанный на работе со слоями данных. Визуализации строятся путем укладки слоев данных один поверх другого. Приложение работает полностью в браузере (данные не отправляются на удаленные серверы), куда пользователи могут перетаскивать CSV или GeoJSON файлы. Автоматическое обнаружение данных включено в инструмент, поэтому Kepler.gl может аналитику сразу после загрузки данных.

Слои данных в Kepler.gl

Слои могут быть надстроены один поверх другого для создания одной общей визуализации карты, включающей различные связи между слоями. Они представляют собой базовые строительные блоки интерактивных карт Кеплер. Несмотря на то, что слои могут быть одного типа, они могут значительно отличаться:

Kepler.gl’s data layers
Немного слоёв из Kepler.gl — точки, дуги и тепловая карта (вверху), сетки, слои разбиения на пятиугольники и многоугольники (ниже)
Data visualization flow in Kepler.gl
Пять слоев данных в Kepler.gl

Как поясняется в официальном введении в Kepler от Uber: “Все вычисления геометрии слоёв ускоряются на GPU, что позволяет нам плавно отображать миллионы точек. Это делает Kepler.gl гораздо более мощным веб-инструментом, чем традиционные картографические приложения.”

Фильтры

Kepler.gl может показывать эволюцию данных во времени благодаря гибкой пространственно-временной конфигурации. Фильтры основаны на столбцах в наборах данных, их также можно использовать для управления объемом данных, представленном на картах.

Кроме того, Kepler.gl предлагает уникальную географическую функцию фильтрации под названием “чистка” (“brushing”). Чистка позволяет выделить и показать точки или дуги в пределах определенного радиуса на карте. Эта простая функция достаточно полезна, когда дело доходит до визуализации геопространственных данных (где очень часто нужны значения корреляции “источник-назначение”). Анимация ниже показывает одно из применений этого вида фильтрации.

Kepler Visualisation
Визуализация поездок из определенной области на карте

В сухом остатке

Слои данных, фильтры, базовые карты с низким контрастом и возможностью смешивания цветов делают Kepler очень гибким инструментом для создания красивых карт. Визуализации в считанные минуты можно экспортировать в статические карты или анимированные видео. Uber выложил свой инструмент open source. Ссылка на руководство “get started” Kepler.gl доступна здесь.

Перевод — Виктор Новосад, оригинал — Dane Mitrev.