Технологии, способные воспринимать трехмерное пространство и ориентироваться в нем, всё глубже проникают в нашу жизнь. Самые популярные из них (AR, VR, промышленные роботы и беспилотные автомобили) активно применяются многими компаниями и становятся частью их бизнес-процессов.
В Digital Design мы знаем, что многие процессы контроля и отчетности крупных компаний построены на анализе данных: документации, банковских операций, баз данных. Однако все еще слабо подвержен анализу такой источник, как изображения, например фотоотчеты или записи камер наблюдения.
Именно поэтому мы приступили к развитию технологии обработки изображений и восстановлению исходной 3D-сцены по ним. Она поможет расширить границы доступных для контроля областей ведения бизнеса.
В хозяйстве и промышленности — при организации сложных систем учета и контроля на предприятии: измерении объемов сыпучих материалов, хранимых в ангарах, перевозимых в грузовиках и полувагонах, транспортируемых по лентам, контроле качества производимой продукции или используемых материалов (их формы и состава).
В сфере информационных технологий — при составлении трехмерных моделей различных объектов и работе с ними (AR, VR), конструировании и эксплуатации беспилотного транспорта и промышленной робототехники, разработке систем управления жестами.
В геодезии — при определении GPS-координат труднодоступных объектов, изучения местности, рельефа, пород и материалов.
Structure from motion (SFM)
Алгоритм SFM позволяет восстанавливать трехмерные сцены по серии изображений объекта, сделанных из различных положений.
Этап 1. Нахождение особых точек.
Алгоритм SFM находит особые точки на каждом изображении. Каждая найденная точка имеет некое значение, которое остается неизменным при смещении особых точек и изменении освещения.
Этап 2. Сопоставление особых точек.
Алгоритм проводит последовательное сравнение значений всех найденных особых точек для всех пар изображений.
Этап 3. Восстановление.
Для восстановления трехмерной сцены определяется расположение камер в момент фиксации изображения в пространстве друг относительно друга относительно мировых координат.
Соотнесение значений особых точек с данными о положении камер в пространстве позволяют определить положение особых точек в трехмерном пространстве, то есть восстановить запечатленную на изображениях трехмерную сцену.
Стереозрение
Для использования данного алгоритма необходимо фиксировать изображение одновременно с помощью двух камер, однако для воспроизведения трёхмерной модели будет достаточно одного изображения.
Этап 1. Калибровка системы.
Для качественного восстановления трехмерной сцены по одному изображению оборудование нуждается в предварительной калибровке. Она выполняется путем снятия изображений объекта с известной геометрией, например, шахматной доски.
Этап 2. Соотнесение координат пикселей на изображениях.
Изображения обрабатываются компьютером для поиска прямых, на которых происходит поиск соответствующих друг другу точек.
Этап 3. Восстановление.
Система обрабатывает и рассчитывает разницу между координатами пикселей на левом изображении и соответствующими пикселями на правом изображении. Соотнеся результаты вычислений с данными от первичной калибровки, система моделирует трехмерную сцену, которая была зафиксирована на изображении.
Structure from motion (SFM)
Алгоритм SFM позволяет определить координаты объекта в пространстве, его точную форму и состав, отследить изменения в объекте.
Стереозрение
Использование стереозрения помогает вычислить размер и объем объекта, скорость его движения и траекторию, распознавать предметы или жесты и классифицировать их.
Structure from motion (SFM)
Стереозрение
Использование алгоритма SFM в среднем занимает 30 секунд, алгоритм стереозрения — 3 секунды. SFM требует большего времени, так как выполняет ряд дополнительных задач: автоматическую калибровку камеры, решение задачи Perspective-n-Point (PnP), поиск и сопоставление особых точек и триангуляцию точек. При использовании алгоритмов стереозрения основная работа выполняется на этапе ручной калибровки.
Помимо рассмотренных алгоритмов существуют способы восстановления, не использующие эффект параллакса:
Преимущество алгоритмов, основанных на эффекте параллакса, заключается в более высокой точности итоговой 3d-сцены и большей доступности требуемого аппаратного оборудования.
Рассмотренные выше алгоритмы направлены на восполнение потерянной информации, а их применение является одним из этапов восстановления трехмерной сцены. Помимо непосредственного восстановления применяются различные алгоритмы предобработки (включая фильтрацию изображений, выделение области интереса, выявление объектов) и постобработки восстановленной сцены (например, расчет объема).