УДК 004.921

Определение расстояния до объекта с помощью монокулярного зрения

Маньшин Илья Михайлович – аспирант кафедры Высшей математики Белгородского государственного технологического университета имени В.Г. Шухова.

Красноперов Никита Сергеевич – аспирант кафедры Программного обеспечения вычислительной техники и автоматизированных систем Белгородского государственного технологического университета имени В.Г. Шухова.

Научный руководитель Зуев Сергей Валентинович – кандидат физико-математических наук, доцент кафедры Программного обеспечения вычислительной техники и автоматизированных систем Белгородского государственного технологического университета имени В.Г. Шухова.

Аннотация: В данной работе представлена методика расчета местоположения движущегося объекта в 3D. Расчет глубины основан на группе из трех точек. Для вычисления глубины необходимо знать только расстояние между каждой парой опорных точек. Точки могут находиться в любом положении, и камера не обязательно должна быть перпендикулярна плоскости, образованной тремя точками. Используя эту технику, можно рассчитать позу (поворот и перемещение) камеры по каждому изображению, избегая накопления ошибок. Компьютерное моделирование показывает хорошую производительность предлагаемого метода с точки зрения точности и скорости обработки.

Ключевые слова: монокулярное зрение, вычисление расстояния, перспективная проекция, 3D shape.

Введение

В последние годы благодаря увеличению вычислительной мощности компьютеров стало возможным обрабатывать цифровые изображения в режиме реального времени. Благодаря этому технологическому усовершенствованию также возрос интерес научного сообщества к разработке систем оценки положения и местоположения на основе искусственного зрения. Одна из причин заключается в том, что существует множество приложений, в которых можно использовать эту технологию. Эти приложения включают навигацию автономных роботов [1, 2], одновременная локализация и отображение (SLAM) в неизвестных местах [3, 4], дополненная реальность (AR) [5], а также проверка промышленных систем [6, 7]. Многие из этих приложений требуют информации о местоположении объекта в трехмерных (3D) координатах реального мира.

Системы GPS обычно используются для определения местоположения в реальном мире в 3D, но эта технология подвержена помехам, особенно в местах, окружающих здания, под мостами или внутри помещений. С другой стороны, можно использовать и камеры RGBD; однако, в дополнение к их высокой стоимости, они используют инфракрасные датчики для определения расстояния от камеры до объекта (глубины). Это затрудняет и даже препятствует его применению в некоторых местах, освещенных естественным светом.

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

В литературе два подхода оказались успешными для оценки положения монокуляра: методы фильтрации [8–11] и методы, основанные на ключевых кадрах [12–15]. Для уменьшения ошибок оценки требуются методы оптимизации. Обычно оптимизация требует больших вычислительных затрат, поскольку включает вычисление ошибки перепроектирования из всех накопленных просмотров. Несмотря на это, со временем ошибка значительно возрастает.

Другой важной проблемой монокулярных систем является то, что местоположение точки в трехмерном пространстве может быть известно только с точностью до определенного масштабного коэффициента. Этот масштабный коэффициент должен быть получен с использованием любого метода начальной загрузки. В литературе было предложено несколько подходов для оценки этого масштабного коэффициента: в [18] авторы используют камеру в качестве основного датчика и инерциальный измерительный блок (IMU) для определения масштаба. В [19], глубина оценивается с использованием сверточной нейронной сети, эта оценка уточняется, а ошибка уменьшается путем обучения сети последовательными изображениями. В [20], авторы использовали схему из трех концентрических окружностей известного диаметра в плоскости; камера должна быть перпендикулярна плоскости окружностей, чтобы вычислить начальную глубину.

Описание подхода

Благодаря своей простоте модель точечных отверстий широко используется для представления формирования изображений в камере. В этой модели предполагается, что один луч света попадает в камеру и проецируется на плоскость изображения (проективную плоскость). На рисунке 1 показан принцип, на котором основана эта модель. Как можно видеть, каждая точка P с координатами (x, y, z) в трехмерном пространстве проецируется через точечное отверстие (которое принимается за начало координат системы координат) в точку P с координатами (x’, y’, f’) плоскости в камеру. Здесь f – фокусное расстояние камеры. Из рисунка 1, по сходству треугольников, можно установить, что [22]

1   (1)

где λ – масштабный коэффициент. Если фокусное расстояние и λ известны, можно вычислить координаты точки 3D P из 2D координат проецируемой точки на плоскость изображения и фокусного расстояния. Обычно фокусное расстояние вместе с внутренними и внешними параметрами можно получить в процессе калибровки камеры.

2

Рисунок 1. Модель с точечным отверстием. Трехмерная точка (x, y, z) проецируется через точечное отверстие на двумерную плоскость П.

Вычисление глубины

Из уравнения (1) могут быть получены следующие соотношения:

3

4   (2)

Теперь предположим, что у нас есть по крайней мере три точки P1, P2, P3 с координатами (x1, y1, z1), (x2, y2, z2) и (x3, y3, z3) соответственно.

Предположим также, что расстояния d1, d2, d3 между каждой парой точек известны. Используя соотношения в (2), абсолютное расстояние между каждой парой точек можно рассчитать по формуле:

5   (3)

В этой системе нелинейных уравнений (3) zi представляет глубину, на которой каждая точка расположена относительно камеры. У каждого члена абсолютного значения | B| есть два возможных решения:  B если > B или  A если  B. Затем, объединив все решения девяти абсолютных значений, мы можем получить 512 систем линейных уравнений. Например, одна из таких систем

6   (4)

Система в (4) может быть изменена и решена для

7   (5)

Чтобы найти наилучшее решение, необходимо вычислить все 512 наборов уравнений. В (5), путем изменения знака для каждого члена, имеется восемь комбинаций значений внутри каждой пары скобок. Кроме того, содержимое внутри каждой пары скобок повторяется в двух разных уравнениях. Затем, чтобы сократить время вычислений, все 24 значения могут быть рассчитаны заранее. Затем эти значения должным образом объединяются для вычисления 512 решений.

Впоследствии каждое решение можно протестировать в исходной системе уравнений (3) и сохранить решения, которые удовлетворяют ограничению, что все положительные (камера не может захватить точки за ним). Наконец, выбирается решение с наименьшей ошибкой. Подставляя эти результаты в уравнение (2), можно также получить реальные координаты трех точек. Относительные положения (перемещение и поворот) камеры относительно объекта также могут быть определены с помощью таких координат.

Проведение эксперимента

Поскольку стереовидение показало хорошие результаты при вычислении расстояния до объектов, были сверены результаты предлагаемого метода с результатами, полученными с помощью калиброванной системы стереовидения. Монокулярная и стереосистема сравнивались с расстояниями, измеренными вручную. Изображения были получены с помощью двух камер. Обе камеры были установлены и откалиброваны для работы в режиме стерео. Использован набор из 50 изображений, содержащих объект интереса, показанный на рисунке 2 при неконтролируемом естественном освещении. В качестве ориентира для вычисления расстояния использовался держатель, закрепленный в передней части колесной платформы.

8

Рисунок 2. Мобильная колесная платформа.

Калибровка камер была выполнена по методике, предложенной Чжаном [33]. С помощью этого метода калибровки требуется только, чтобы камера наблюдала плоский рисунок.

Для расчета расстояния объект перемещался удаленно, и изображения снимались парами (с использованием стереосистемы) с нескольких поз. На рисунке 3 показан сравнительный график. Процент среднеквадратичной ошибки составил 0,27% для стереосистемы и 0,28% для монокулярной системы по отношению к ручному измерению. Это означает, что предлагаемый способ работает аналогично стереосистеме.

9

Рисунок 3. Сравнение измерения расстояния между монокулярной (предлагаемой) системой, стереосистемой и ручным измерением.

Поскольку вычислительная стоимость является важным вопросом, была проведена проверка времени обработки обеих систем. Чтобы гарантировать статистически правильные результаты, было проведено 30 тестов, которые были усреднены по каждой системе. Среднее время работы стереосистемы составило 0,09725 секунды; с другой стороны, монокулярная система получила среднее время 0,05837 секунды. Это означает, что алгоритм для монокулярной системы быстрее, чем алгоритм для стереосистемы.

Заключение

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

Результаты эксперимента показали хорошую производительность алгоритма вычисления расстояния на изображениях, сделанных недорогой камерой, в условиях неконтролируемого освещения. Максимальная полученная ошибка составила менее 1% по сравнению с калиброванной системой стереовидения. Кроме того, система работает быстрее, чем стереосистема.

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

Список литературы

  1. Wang, Y. Liu, and L. Li, “Vision-based tracking control of underactuated water surface robots without direct position measurement,” IEEE Transactions on Control Systems Technology, vol. 23, no. 6, pp. 2391–2399, 2015.
  2. Knudson and K. Tumer, “Adaptive navigation for autonomous robots,” Robotics and Autonomous Systems, vol. 59, no. 6, pp. 410–420, 2011.
  3. Mur-Artal and J. D. Tardos, “ORB-SLAM2: an open-source SLAM system for monocular, stereo and RGB-D cameras,” IEEE Transactions on Robotics, vol. 33, no. 5, pp. 1255–1262, 2017.
  4. Mur-Artal and J. D. Tardos, “Visual-inertial monocular slam with map reuse,” IEEE Robotics and Automation Letters, vol. 2, no. 2, pp. 796–803, 2017.
  5. Chatzopoulos, C. Bermejo, Z. Huang, and P. Hui, “Mobile augmented reality survey: from where we are to where we go,” IEEE Access, vol. 5, pp. 6917–6950, 2017.
  6. Xu, X. He, X. Li, and M. Pan, “A machine-vision inspection system for conveying attitudes of columnar objects in packing processes,” Measurement, vol. 87, pp. 255–273, 2016.
  7. Shanmugamani, M. Sadique, and B. Ramamoorthy, “Detection and classification of surface defects of gun barrels using computer vision and machine learning,” Measurement, vol. 60, pp. 222–230, 2014.
  8. J. Davison, I. D. Reid, N. D. Molton, and O. Stasse, “MonoSLAM: real-time single camera SLAM,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 29, no. 6, pp. 1052–1067, 2007.
  9. Civera, A. J. Davison, and M. M. Montiel, “Inverse depth parametrization for monocular SLAM,” IEEE Transactions on Robotics, vol. 24, no. 5, pp. 932–945, 2008.
  10. Chiuso, P. Favaro, H. Jin, and S. Soatto, “Structure from motion causally integrated over time,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 24, no. 4, pp. 523–535, 2002.
  11. Eade and T. Drummond, “Scalable monocular SLAM,” in IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), vol. 1, pp. 469–476, New York City, 2006.
  12. Mouragnon, M. Lhuillier, M. Dhome, F. Dekeyser, and P. Sayd, “Real time localization and 3d reconstruction,” in 2006 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'06), pp. 363–370, New York, NY, USA, 2006.
  13. Klein and D. Murray, “Parallel tracking and mapping for small AR workspaces,” in IEEE and ACM International Symposium on Mixed and Augmented Reality (ISMAR), pp. 225–234, Nara, Japan, November 2007.
  14. Mur-Artal, J. M. M. Montiel, and J. D. Tardos, “ORB-SLAM: a versatile and accurate monocular SLAM system,” IEEE Transactions on Robotics, vol. 31, no. 5, pp. 1147–1163, 2015.
  15. Leutenegger, S. Lynen, M. Bosse, R. Siegwart, and P. Furgale, “Keyframe-based visual–inertial odometry using nonlinear optimization,” International Journal of Robotics Research, vol. 34, no. 3, pp. 314–334, 2015.
  16. Shi and C. Tomasi, “Good features to track,” in Proceedings IEEE Conf. Computer Vision and Pattern Recognition, pp. 593–600, Seattle, USA, June 1994.
  17. Strasdat, J. M. M. Montiel, and A. J. Davison, “Visual SLAM: why filter?” Image and Vision Computing, vol. 30, no. 2, pp. 65–77, 2012.
  18. J. Tarrio and S. Pedre, “Realtime edge based visual inertial odometry for MAV teleoperation in indoor environments,” Journal of Intelligent and Robotic Systems, vol. 90, no. 1-2, pp. 235–252, 2018.
  19. Yin, X. Wang, X. Du, and Q. Chen, “Scale recovery for monocular visual odometry using depth estimated with deep convolutional neural fields,” in 2017 IEEE International Conference on Computer Vision, pp. 5871–5879, Venice, Italy, October 2017.
  20. Said, K. Sundaraj, and M. N. Wahab, “Depth estimation for a mobile platform using monocular vision,” in International Symposium on Robotics and Intelligent Sensors (IRIS 2012), vol. 41, pp. 945–950, Kuching, Sarawak, Malaysia, 2012.
  21. Yao, E. Anaya, Q. Tao, S. Cho, H. Zheng, and F. Zhang, “Monocular vision-based human following on miniature robotic blimp,” in 2017 IEEE International Conference on Robotics and Automation (ICRA), pp. 3244–3249, Singapore, June 2017.
  22. I. Barranco-Gutiérrez, S. Martínez-Díaz, and J. L. Gómez-Torres, Visión Estereoscópica con MATLAB y OPENCV (in Spanish), Pearson, México, 2018.
  23. Hartley and A. Zisserman, Multiple view geometry in computer vision, Cambridge University, 2004.
  24. LeCun, Y. Bengio, and G. Hinton, “Deep learning,” Nature, vol. 521, no. 7553, pp. 436–444, 2015.
  25. Girshick, J. Donahue, T. Darrell, and J. Malik, “Rich feature hierarchies for accurate object detection and semantic segmentation,” IEEE Conference on Computer Vision and Pattern Recognition (CVPR), vol. 2014, pp. 1–21, 2014.
  26. Girshick, “Fast R-CNN,” in IEEE International Conference on Computer Vision (ICCV), 2015, pp. 1–9, Santiago, Chile, 2015.
  27. Ren, K. He, R. Girshick, and J. Sun, “Faster R-CNN: towards real-time object detection with region proposal networks,” Neural Information Processing Systems (NIPS), vol. 2015, pp. 1–9, 2015.
  28. Goodfellow, Y. Bengio, and A. Courville, Deep learning, MIT Press, 2016.
  29. Krizhevsky, I. Sutskever, and G. E. Hinton, “ImageNet classification with deep convolutional neural networks,” Communications of the ACM, vol. 60, no. 6, pp. 84–90, 2017.
  30. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition,” in IEEE Conference on Computer Vision and Pattern Recognition, pp. 770–778, Las Vegas, NV, USA, 2016.
  31. Szegedy, W. Liu, Y. Jia et al., “Going deeper with convolutions,” in IEEE, 2015 Conference on Computer Vision and Pattern Recognition (CVPR), vol. 4, pp. 10059–10066, Boston, MA, USA, 2016.
  32. Harris and M. Stephens, “A combined corner and edge detector,” in Proceedings of the 4th Alvey Vision Conference, pp. 147–151, Manchester, UK, September 1988.
  33. Zhang, “A flexible new technique for camera calibration,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 22, no. 11, pp. 1330–1334, 2000.

Интересная статья? Поделись ей с другими: