Определение геометрии изображения
Определение геометрии изображения — одна из ключевых подзадач компьютерного зрения, заключающаяся в определении основных геометрических фигур на изображении, их взаимном расположении и пространстве.
Области применения
Извлечение информации об изображенных на изображении геометрических фигурах позволяет решать множество прикладных задач, таких как:
- Навигация беспилотных транспортных средств: Определение плоскости дороги, определение линии горизонта и объектах на дороге позволяют системам управления осуществлять работу.
- Дополненная реальность: определение различных плоскостей позволяет приложениям с дополненной реальностью взаимодействовать с пространством и дополнять его максимально реалистично.
- Построение 3D моделей по изображениям: имея плоское изображение, например фотографию комнаты, можно создать 3D модель, определив плоскости и карту глубин изображения.
Определения геометрии изображения с использованием машинного обучения
Для определения геометрии изображения необходимо предсказать нормали поверхности (англ. surface normal prediction). В настоящее время для этого активно используются сверточных нейронных сетей (англ. Convolutional Neural Network, CNN), например GroundNet[1], позволяющая определить линию горизонта по изображению улицы.
Данная сеть сначала сегментирует участок земли, а затем независимо предсказывает нормали к участку земли и карту глубин для этого участка. По карте глубин вычисляются нормали, используя метод наименьших квадратов (Least squares) или метод RANSAC. Затем нормали, вычисленные ранее сравнивают, чтобы разница между ними была минимальна и после этого определяется линия горизонта.
Различные улучшения сетей
Spatial Transformer Networks
Spatial Transformer Networks (STN)[2] — модуль, который можно встроить для улучшения нейросети. STN, применяя обучаемое аффинное преобразование с последующей интерполяцией, лишает изображения пространственной инвариантности. Задача STN состоит в том, чтобы так повернуть или уменьшить-увеличить исходное изображение, чтобы основная сеть-классификатор смогла проще определить нужный объект. Использование данного модуля в сетях, предназначенных для в сетях для определения геометрии, позволяет получать более качественные результат.
Dense Conditional Random Field
Dense Conditional Random Field (DCRF) [3] — еще один встраиваемый модуль для улучшения нейронных сетей, предназначенный для осуществления согласованности между картой глубин изображения и картой нормалей.
Данные для обучения
- KITTI[1] — популярный набор данных с изображениями улиц и дорог.
- ApolloScape [2] — другой известный и большой набор данных с различными разметками.
- NYU v2 [3] — набор с изображениями помещений. Помимо RGB изображений, содержит записи с глубинных камер.
- SharinGAN[4] — метод, позволяющий объединять наборы из реальных и синтетических изображений, основанный на отбрасывании нерелевантных свойств каждого из типа данных и объединении релевантных. В конечном итоге данный метод позволяет легко получать наборы данных путем синтетического создания, так как их легко получить и разметить, но при этом эти наборы будут применимы для обучения сети, пригодной к использованию на реальных данных.