Мобильные системы 3D-сканирования среднего радиуса действия
Введение
Существующие 3D-сканеры можно разделить на три класса по размерам рабочей области сканирования.
В первый класс входят устройства малого радиуса действия, предназначенные для локального сканирования объектов с высокой точностью. К ним относятся ручные сканеры (например, фирмы Artec, рис. 1а) и платформы для 3D-сканирования — в частности, от Shining 3D (рис. 1б). Подобные устройства позволяют проводить сканирование области в несколько десятков сантиметров (обычно 20–30 см) и имеют стоимость в диапазоне 60–500 тыс. руб. При работе с крупногабаритными объектами необходимо производить несколько локальных измерений, а потом их совмещать. Точность сканирования у наиболее дорогостоящих устройств данного класса составляет 50–100 мкм. Чаще всего в таких сканерах используют камеры совместно с источником направленного света (лазером), либо проектором структурированного света.
Ко второму классу относятся 3D-сканеры ближнего радиуса действия. Обычно такое оборудование используется для сканирования частей помещений, памятников, деталей механизмов, людей, а также для моделирования персонажей в игровой индустрии и кино. Примерами таких сканеров являются продукция компании RangeVision (рис. 2), игровой сенсор Kinect от Microsoft и др.
Рабочее расстояние таких сканеров составляет 1–2 метра, диапазон цен — от 9 до 300 тыс. руб. Более дорогостоящие устройства позволяют достигать точность до 100 мкм. В большинстве 3D-сканеров данного класса в качестве датчиков используются камера и проектор структурированного света.
Третий класс включает промышленные 3D-сканеры дальнего радиуса действия, предназначенные для формирования компьютерных моделей крупных архитектурных объектов, таких как здания, мосты и др. Данные устройства имеют точность 1–2 мм, позволяют производить сканирование на расстоянии 100–200 метров и используют дорогостоящие лазерные дальномеры. Стоимость таких сканеров составляет от 3 до 6 млн руб. В качестве примера можно привести продукцию компании Leica — например, 3D-сканер Leica ScanStation P40 (рис. 3).
Интересно отметить, что сегодня на рынке 3D-сканеров практически нет устройств, рассчитанных на средний размер рабочей области (до 40–50 м). Для сканирования в среднеразмерном диапазоне можно использовать сканеры дальнего радиуса действия, но это слишком дорогостоящее решение. Обычно для таких задач применяют сканер ближнего действия, производя множество циклов измерения вблизи сканируемых объектов и затем объединяя результаты в единую 3D-модель.
Использование сканеров средней дальности актуально для дизайна интерьера, рынка недвижимости, квартирных строительных работ и других сфер, где нужна средняя точность измерений (порядка 1 см), но при этом важны скорость измерений, носимость и низкая стоимость оборудования.
Элементная база 3D-сканеров среднего радиуса действия
Дорогостоящие сканеры, работающие на расстоянии до 100 метров, либо используют для оценки расстояния только точный лазерный дальномер, либо совмещают обработку данных с камер видимого диапазона и лазерного дальномера. При этом дальномер позволяет проводить измерения на большом расстоянии даже в условиях плохой освещенности, а с помощью камер можно получить информацию о цвете и текстуре объектов, а также уточнить данные о расстояниях на ближних дистанциях (до 5 метров). Совместная обработка (sensor fusion) мультисенсорных данных с камер и лазерного дальномера — лидара — дает возможность получить более качественные результаты.
В последнее время на рынке появились лазерные дальномеры со сравнительно низкой стоимостью и приемлемой точностью. Лидером рынка в ценовом диапазоне 9–15 тыс. руб. является дальномер LIDAR-Lite v3 фирмы Garmin (рис. 4а). На базе этого дальномера также реализован лазер-сканер Sweep V1 (рис. 4б) фирмы Scanse.
Данные устройства позволяют выполнять сканирование пространства на расстоянии от 1,5 до 40 м с точностью до 2,5 см. Дополнив систему сканера цифровой камерой, можно уточнить данные о расстояниях в ближнем радиусе действия и получить данные о цвете и текстуре объекта. Стоимость камер с разрешением 5–8 Mпикс для данной задачи (например, Raspberry Pi Camera v2 на базе 8 Мпикс сенсора Sony IMX219) составляет 2-3 тыс. руб.
Требования к вычислительной платформе 3D-сканеров
С ростом производительности встроенных вычислителей встает вопрос о выполнении некоторых задач построения 3D-модели на вычислительных ресурсах самого сканера. Это позволит уменьшить объем данных, передаваемых на вспомогательный компьютер или в облако, и увеличить скорость сканирования. В идеале сканер должен стать полностью автономным устройством, подобно обычному цифровому фотоаппарату.
Выполним оценку сложности вычислений и требований к встроенному компьютеру. Весь процесс обработки данных с камер и лидара в составе 3D-сканера можно разделить на две части:
- расчет облака точек по карте диспаритета, где каждая точка ассоциирована с пикселем изображения и расстоянием до него в метрических координатах;
- построение полигональной модели из полученного облака точек.
Сегодня активно ведутся работы по переносу первого этапа на встроенные вычислители с ограниченной производительностью. Например, в работе [1] рассматривается решение данной задачи с помощью GPU Nvidia Tegra K1 с производительностью 360 GFLOPS, которая позволяет выполнять обработку изображений с разрешением 320?240 пикселей со скоростью 12 кадров/с. А в [2] представлена реализация на Nvidia Tegra X1 c 1024 GFLOPS и скоростью обработки изображений 640?480 пикселей, равной 81 кадр/с.
В качестве метода ускорения вычислений часто рассматривают аппаратную реализацию некоторых или всех функций обработки объемных моделей. В частности, на микросхемах ПЛИС бюджетной серии Xilinx Artix-7 (XC7A100T) [3] можно производить обработку изображений 640?480 пикселей со скоростью 60 кадров/с. А в [4] авторы описывают, как ПЛИС средней ценовой категории Xilinx Kintex-7 (XC7K325T) позволяет обрабатывать изображения уже с разрешением 1280?720 пикселей со скоростью 60 кадров/с. В целом современные исследования направлены в сторону поиска наиболее высокопроизводительной и энергоэффективной платформы.
Второй этап формирования 3D-модели — построение полигонной сетки по облаку точек — наиболее ресурсоемкий. В настоящее время его встроенная реализация является остро актуальной, но очень сложной задачей. Пока ведутся исследования и тестируются опытные образцы, на практике для этого этапа используют мощные настольные и серверные системы на высокопроизводительных процессорах серий Intel Core, Intel Xeon, AMD Athlon, AMD Opteron, а также видеопроцессоры серий NVIDIA GeForce GTX, NVIDIA Tesla, NVIDIA Quadro, AMD FirePro и т. п. При этом скорость построения полигонной сетки в среднем составляет 5 кадров/с.
Сегодня перспективными встраиваемыми компьютерными платформами для реализации функций 3D-сканера являются неоднородные (гетерогенные) вычислители, имеющие в своем составе:
- для основного объема обработки 3D-моделей — GPU для встраиваемых/мобильных применений и программируемую логику (ПЛИС) FPGA;
- для реализации вспомогательных функций 3D-реконструкции, задач финальной обработки построенных моделей объектов, системных интерфейсных и коммуникационных функций прибора — специализированные сопроцессоры обработки «стандартных» мультимедиаданных, а также несколько ядер процессоров общего назначения.
Следует отметить, что встроенная реализация трехмерного технического зрения — как в части конкретных «тяжелых» функций (например, построение полигональной модели), так и в комплексе — является активно развивающейся областью. А значит, необходима специальная аппаратно-программная база для проектирования и испытаний. Для этого не удастся обойтись популярными и доступными полуфабрикатами типа встраиваемых микрокомпьютеров Raspberry Pi (или иными похожими) с подключенными датчиками, поскольку они не отвечают требованиям, сформулированным выше. Требуется разработка специальных инструментальных платформ. Далее в статье представлен пример подходящего оборудования, разработанный в Университете ИТМО (Санкт-Петербург).
Инструментальный комплекс мультисенсорного технического зрения
Инструментальная платформа технического трехмерного зрения «КМТЗ», разработанная на кафедре вычислительной техники Университета ИТМО, реализует концепцию сенсорной и вычислительной неоднородности и слияния. В ее состав входят несколько видеокамер, лидар, поворотная механика измерительной головки и встроенный многопроцессорный вычислительный модуль.
Комплекс предназначен для исследования, отработки, а также пробной реализации алгоритмов и прототипирования аппаратуры систем технического зрения. Приоритетными, но не единственными, направлениями исследований для данного оборудования являются:
- мультисенсорное (sensor fusion) сканирование сцен с углом обзора 360°;
- формирование компьютерных 3D-моделей (например, в формате PLY);
- организация хранения и передачи данных системы 3D-зрения в смежные системы;
- реализация робототехнических и других киберфизических комплексов с техническим зрением.
В рамках проекта разрабатывается открытая программная библиотека, которая базируется на адаптированном программном обеспечении с открытым доступом и реализует ключевые функции 3D-зрения. С ее помощью проектировщики прикладных систем (роботов, автономных подвижных средств и т. д.) могут не погружаться в низкоуровневые детали работы с оборудованием в рамках 3D-сканирования и компьютерной реконструкции объектов, но при этом гибко адаптировать необходимую функциональность под свои задачи.
Состав оборудования «КМТЗ» представлен на рис. 5.
Основные технические характеристики комплекса:
- радиус сканирования — 40 м;
- разрешающая способность — 10 мм;
- погрешность оценки линейных дистанций — 25 мм;
- габариты — 200?80?283 мм;
- энергопотребление — 28 Вт.
Все компоненты инструментальной платформы можно отнести к классу «бюджетных». Это позволяет переносить отработанные прототипы систем 3D-зрения на недорогую аппаратуру, что критически важно при разработке устройств и систем для широкого потребительского рынка. В комплексе используются следующие компоненты:
- Сенсоры:
- камера Sony IMX219 8 Mпикс (3280?2464);
- лазерный дальномер (лидар) Sweep v1;
- Вычислительное ядро:
- процессор ARM Cortex-A9, 2 ядра;
- процессор ARM Cortex-A15, 4 ядра;
- графический процессор Kepler c 192 ядрами CUDA (NVIDIA);
- ПЛИС Artix-7 (28 тыс. прогр. ячеек).
Структурная схема комплекса представлена на рис. 6.
Встроенная электроника состоит из двух плат: ZynqBerry (TE0726-03M) и Ixora Carrier Board V1.1A с подключенной платой расширения Apalis TK1 V1.1A.
Модуль ZynqBerry построен на базе системы на кристалле Zynq-7000 (Xilinx). Он отвечает за сбор и обработку данных с лидара и двух камер, т. е. выступает в качестве основного вычислительного ядра системы. Камеры и лидар подключены непосредственно к модулю, а на плате установлены схемы интерфейсных адаптеров. Также к плате подсоединен модуль связи Wi-Fi ASUS USB-N10 Nano, обеспечивающий поддержку беспроводного взаимодействия с персональным компьютером (ПК) для диагностики и конфигурирования, а также передачи данных с камер и лидара для дальнейшей обработки.
Модуль Ixora Carrier Board с платой расширения Apalis TK1 используется в качестве дополнительного высокопроизводительного вычислителя. В его состав входит мобильный процессор Nvidia Tegra K1, включающий 4-ядерный процессор ARM Cortex-A15 и 192 ядра NVIDIA CUDA с производительностью 360 GFLOPS. Данное вычислительное ядро можно использовать для выполнения встроенных алгоритмов 3D-реконструкции на базе данных с камер и лидара. К плате Ixora Carrier Board также подключен Wi-Fi-адаптер ASUS USB-N10 Nano для поддержки беспроводного канала к плате ZynqBerry и ПК оператора.
Инструментальная платформа «КМТЗ» развивается по мере решения конкретных прикладных задач на ее базе. Каждый новый исследовательский или опытно-конструкторский проект расширяет программно-аппаратный базис функций 3D-зрения. В настоящее время идут работы по созданию полноценных фреймворков для таких прикладных областей, как:
- техническое зрение роботов;
- 3D-сканирование помещений и зданий (моделирование, измерение, оценка состояния);
- 3D-сканирование физических объектов (деталей, конструктивных узлов, предметов и т. п.).
Заключение
Сегодня 3D-сканирование находится в стадии роста и расширения: как в части реальных разработок и практического применения, так и в сфере научных исследований. Анализ состояния рынка показывает, что заполнены еще не все ниши. Например, наблюдается недостаток 3D-сканеров среднего радиуса действия с возможностью сканирования на расстояниях до 50 м — для задач моделирования помещений и удаленных объектов средних габаритов. До последнего времени это было обусловлено техническими и технологическими ограничениями, но новая вычислительная аппаратура — мобильные GPU и программируемая логика больших объемов — уже сейчас открывают дорогу эффективным и недорогим решениям.
Ожидается, что в течение ближайших 5–10 лет в этой области (как, впрочем, и в сфере трехмерного технического зрения в целом) возникнет много новых подходов и разработок. У российских исследователей и производителей имеется реальная возможность двигаться в авангарде этого процесса.
Фотография 3D сканера Artec Eva предоставленна Artec 3D
- Schopsa T., Sattlera T., Haneb C., Pollefeys M. Large-Scale Outdoor 3D Reconstruction on a Mobile Device // Computer Vision and Image Understanding. 2016.
- Hernandez-Juarez D., Chacon A., Espinosa A., Vazquez D., Moure J. C., Lopez A. M. Embedded real-time stereo estimation via Semi-Global Matching on the GPU // Procedia Computer Science. 2016. Vol. 80.
- Oleynikova H., Honegger D., Pollefeys M. Reactive Avoidance Using Embedded Stereo Vision for MAV Flight // IEEE International Conference on Robotics and Automation (ICRA). 2015.
- Ttofis C., Kyrkou C., Theocharides T. A Low-Cost Real-Time Embedded Stereo Vision System for Accurate Disparity Estimation Based on Guided Image Filtering // IEEE Transactions on Computers. 2016. Vol. 65. № 9.