ПРИБОРЫ И СИСТЕМЫ АВТОМАТИЧЕСКОГО УПРАВЛЕНИЯ
УДК 004.932.72'1 DOI: 10.17586/0021-3454-2020-63-12-1066-1072
АЛГОРИТМ ОЦЕНКИ ПОЛОЖЕНИЯ ОБЪЕКТА С ПОМОЩЬЮ СИСТЕМЫ СТЕРЕОЗРЕНИЯ
А. А. Азбекян, А. А. Пыркин
Университет ИТМО, 197101, Санкт-Петербург, Россия E-mail: pyrkin@itmo.ru
Представлен алгоритм оценивания положения и ориентации объекта на сцене при помощи системы стереозрения, что крайне актуально в современном робо-тотехническом производстве при построении систем управления с элементами искусственного интеллекта. Особенностью предложенного решения является анализ трехмерной геометрии объектов по информации, полученной из двумерных изображений. Разработанный алгоритм может быть применен в задачах неразрушающего контроля трубопроводов с помощью роботизированных дефектоскопов, оснащенных видеокамерами. Подобные роботизированные дефектоскопы используют различные методы диагностирования: Использование разработанного алгоритма стереозрения может обеспечивать сплошной контроль поверхности трубопровода (покрытие 100 %), а также автономное маневрирование и прохождение элементов трубопроводной обвязки.
Ключевые слова: стереозрение, стереоскопия, облако точек, компьютерное зрение, оценка положения
Введение. При современном уровне развития робототехники участие человека в производстве носит лишь вспомогательный характер. Ему отводятся задачи, связанные, например, с диагностикой сетей или обеспечением безопасности. Все такие предприятия по праву считаются автоматизированными, поскольку на конвейерах осуществляется как высокоточная сборка, так и транспортировка.
Однако в последние годы появился запрос на гибкость производства: робототехниче-ские фабрики осуществляют сборку лишь ограниченного класса продуктов. Ограничение обусловлено необходимостью постоянно менять технику и перестраивать конвейер с изменением комплектующих. К примеру, крупный автоконцерн на одной из своих фабрик производит автомобили определенной модели. Обновление линейки повлечет изменение как технического оснащения, так и всего технологического процесса сборки (может даже привести к необходимости строить отдельную фабрику под новый тип продукта).
Решение, с технической точки зрения, кроется в замене устаревшего конвейера на систему гибких робототехнических ячеек. В связи с этим остро встает вопрос об их технологической поддержке интеллектуальными системами с обратной связью в виде сенсоров. Чем больше сенсоров размещено вокруг сцены, тем более полное представление о ней может быть получено. Одно из решений — использование стереокамеры. С ее помощью возможно по двумерным данным (левое и правое изображение) анализировать сцену в трехмерном пространстве.
Обзор литературы. С развитием машинного обучения и, в частности глубоких нейронных сетей, использование последних стало ключевым решением задачи оценки положения, независимо от выбранного сенсора [1—5]. Методы решения задачи можно классифицировать по типу соответствия данных.
В первом случае решается так называемая задача Регересйуе-п-рот^ суть которой состоит в том, чтобы восстановить положение объекта по соответствию трехмерных ключевых точек, заданных в системе координат (СК) объекта, и их проекций на изображении. Авторы статьи [6] используют глубокие нейронные сети для того, чтобы определить координаты выбранных в трехмерном пространстве ключевых точек на двумерном изображении, а затем с помощью алгоритма ЯЛКБЛС восстанавливают положение объекта в мировой СК. Рассматриваемый в работе [7] подход строится на соответствии нескольких наборов ключевых признаков на изображении (2Б—2Б). Авторы извлекают признаки (углы, отрезки и т.п.) из изображения, а затем путем генерации синтетических изображений из модели объекта с известной геометрией пытаются оценить его положение.
Отдельно стоит отметить так называемые 8т§1е-81а§е-алгоритмы, в которых глубокая нейронная сеть обучается предсказывать положение по одному кадру без вспомогательной информации. В статье [8] авторы расширили популярный алгоритм БББ, изначально использовавшийся для двумерного случая, на оценку трехмерного преобразования.
Постановка задачи. Рассматривается робототехническая система в некоторой окружающей среде. Среду ограничивает участок пространства, в котором робототехническая система (здесь и далее „робот") может осуществлять взаимодействие с различными статическими и динамическими объектами, включая других роботов. Совокупность пространства, объектов и роботов в литературе называется сценой. Пример сцены представлен на рис. 1. Робот-манипулятор оперирует в пространстве, ограниченном белым столом; помимо него на сцене стоит камера, установленная на штатив, а также разбросаны детали для захвата.
Рис. 1
Роботу (в данном примере — манипулятору) для точного позиционирования и захвата необходимо точно знать положение и ориентацию детали на сцене, за что и отвечает стерео-камера. Оценка производится относительно камеры, а потому необходимо ввести единую, неподвижную систему координат, которую в литературе чаще всего называют „мировой", обозначают буквой ^ и располагают в базе манипулятора.
Введем целевую функцию ошибки, описывающую расположение инструмента относительно объекта (слева от точки с запятой в скобках находятся изменяемые во времени величины — аргументы, справа — не изменяемые параметры):
E
I те • ts T I
11w1w ■> Jdes_rel I
— TwTdes rel _ Tw ,
(1)
где Т^ и Т^ — преобразование из мировой системы координат в систему координат объекта
и рабочего органа соответственно, 7^е8 ге1 — некоторое относительное преобразование из СК
рабочего органа в СК объекта, по достижении которого ошибка должна свестись к нулю.
Положение рабочего органа в системе координат базы определяется кинематической моделью робота и конфигурацией углов осей, соединяющих его звенья, поэтому необходимо
оценить позу статического объекта на сцене Т^ с помощью системы стереозрения:
у S _у c у S
(2)
Величина Tw в уравнении (2) характеризует преобразование из СК базы робота в СК
камеры, а Tf — положение объекта в СК камеры. За оценку положения камеры в абсолютной системе координат отвечает процедура калибровки ячейки (зачастую для точной оценки местоположения используются маркеры — легко детектируемые объекты, различаемые по черно-белому паттерну на поверхности).
Основной результат. В настоящей работе предлагается алгоритм оценки положения объекта в системе координат камеры с помощью системы стереозрения. Его суть сводится к сопоставлению двух облаков точек (3D—3Б-соответствие): полученных с камеры и сгенерированных из известной 3Б-модели объекта.
Процедура включает следующие этапы:
1) получение карты глубины из кадров левого и правого каналов камеры;
2) преобразование карты глубины в облако точек;
3) составление облаков точек и оценка трансформации между ними.
Рассмотрим принцип работы стереокамеры. Центральным определением в стереозрении является так называемое „смещение" (disparity) — величина отклонения проекции точки на левом и правом изображениях вдоль одной оси (рис. 2).
d — f b z
"I
А J -> Xi х2 / J >
b
J Г_ "I
z
f 4— 4— -№
d —Xi_X2
Рис. 2
В классическом случае, когда центры камер с фокусным расстоянием / в системе стереозрения со смещением с1 пикселов расположены на одной прямой на расстоянии Ь, возможно рассчитать компонент глубины для каждого из пикселов по формуле:
Z - fb
d '
(3)
и, как следствие, получить карту глубины (плоское изображение, содержащее информацию о расстоянии до поверхностей объектов на сцене). На рис. 3 представлены изображение с одного из каналов стереокамеры (вверху) и соответствующая ему карта глубины (внизу).
Рис. 3
Для перехода от данного представления к облаку точек рассчитаем оставшиеся 3Б координаты:
2 „ ( \1
х = (х1 - сх )), ¥ = (( - су )),
(4)
где {х, у\1г — координаты точки на левом или правом изображении, (сх, Су ) — координаты
центра камеры в системе координат изображения.
Для расчета окончательного преобразования необходимо произвести регистрацию об*
лаков точек — это процесс определения такой трансформации Т группы БЕ(3) (специальная евклидова группа), что:
Т* = а^штсШ(Т(М),^), Т е Т, (5)
где \М, — это облака точек в М3 пространстве, Т — это множество всех возможных трансформаций.
Наиболее популярным решением является итеративный алгоритм ближайших точек, имеющий следующие шаги:
1) для точки е ^ по принципу „ближайшего соседа" найти соответствующую точку
во множестве М ;
2) оценить новую матрицу трансформации Т, минимизирующую среднеквадратиче-скую ошибку, которая выражает расстояние между соответствующими точками, и применить ее к множеству М ;
3) повторять шаги 1—2 для каждой точки из множества £;
4) повторять весь цикл 3 до тех пор, пока максимальная ошибка по расстоянию между точками не будет ниже порогового значения.
Результат работы алгоритма регистрации облаков точек представлен на рис. 4 (видно, что до регистрации двух облаков точек расстояние между соответствующими точками велико — слева, а после оно минимально — справа).
Рис. 4
Заключение. В статье представлен алгоритм оценивания положения и ориентации объекта на сцене при помощи системы стереозрения, что крайне актуально в современном робототехническом производстве при построении систем управления с элементами искусственного интеллекта. Разработанный алгоритм стереозрения может быть применен в задачах неразрушающего контроля трубопроводов с помощью роботизированных дефектоскопов, оснащенных видеокамерами. Подобные роботизированные дефектоскопы используют различные методы диагностирования: акустические, электромагнитные, молекулярные, радиационные и др. В частности, в работах [9, 10] применен датчик, выполненный по технологии фазированных антенных решеток с электромагнитно-акустическими преобразователями. В состав предложенного в [10] роботизированного дефектоскопа входят обзорная и ходовые камеры с осветителями. Использование разработанного алгоритма стереозрения может обеспечивать возможность проведения сплошного контроля исследуемой поверхности трубопровода (покрытие 100 %), а также автономного маневрирования и прохождения элементов трубопроводной обвязки.
Работа выполнена при финансовой поддержке Министерства образования и науки Российской Федерации (соглашение № 074-11-2018-029 от 13 июля 2018 г.).
список литературы
1. Wang C. et al. Densefusion: 6d object pose estimation by iterative dense fusion // Proc. of the IEEE Conf. on Computer Vision and Pattern Recognition. 2019. Р. 3343—3352.
2. Michel F. et al. Global hypothesis generation for 6D object pose estimation // Proc. of the IEEE Conf. on Computer Vision and Pattern Recognition. 2017. Р. 462—471.
3. Tekin B., Sinha S. N., Fua P. Real-time seamless single shot 6d object pose prediction // Proc. of the IEEE Conf. on Computer Vision and Pattern Recognition. 2018. Р. 292—301.
4. Hu Y. et al. Segmentation-driven 6d object pose estimation // Proc. of the IEEE Conf. on Computer Vision and Pattern Recognition. 2019. Р. 3385—3394.
5. Hu Y. et al. Single-Stage 6D Object Pose Estimation // Proc. of the IEEE/CVF Conf. on Computer Vision and Pattern Recognition. 2020. Р. 2930—2939.
6. Oberweger M., RadM., Lepetit V. Making deep heatmaps robust to partial occlusions for 3d object pose estimation // Proc. of the Europ. Conf. on Computer Vision (ECCV). 2018. Р. 119—134.
7. Kundu J. N., Rahul M. V., Ganeshan A., Babu R. V. Object Pose Estimation from Monocular Image Using Multiview Keypoint Correspondence // Computer Vision — ECCV 2018 Workshops. ECCV 2018. Lecture Notes in Computer Science. Springer, Cham. 2019. Vol. 11131. https://doi.org/10.1007/978-3-030-11015-4_23.
8. Kehl W. et al. Ssd-6d: Making RGB-based 3d detection and 6d pose estimation great again // Proc. of the IEEE Intern. Conf. on Computer Vision. 2017. Р. 1521—1529.
9. Базылев Д. Н., Романович В. А., Ведяков А. А. Автоматизированный метод внутритрубного ультразвукового контроля с использованием фазированной антенной решетки // Изв. вузов. Приборостроение. 2019. Т. 62, № 9. С. 167—172.
10. Сомов С. Н., Баранов Г. В., Поляшов М. А., Пыркин А. А. Роботизированный дефектоскоп для диагностики состояния трубопроводов // Изв. вузов. Приборостроение. 2019. Т. 62, № 9. С. 157—166.
Сведения об авторах
Арам Артурович Азбекян — аспирант; Университет ИТМО; факультет систем управления и ро-
бототехники; E-mail: nindz9@gmail.com Антон Александрович Пыркин — д-р техн. наук, профессор; Университет ИТМО; факультет систем
управления и робототехники; E-mail: pyrkin@itmo.ru
Поступила в редакцию 18.10.2020 г.
Ссылка для цитирования: Азбекян А. А., Пыркин А. А. Алгоритм оценки положения объекта с помощью системы стереозрения // Изв. вузов. Приборостроение. 2020. Т. 63, № 12. С. 1066—1072.
AN ALGORITHM FOR ASSESSING AN OBJECT POSITION USING STEREO VISION SYSTEM
A. A. Azbekian, A. A. Pyrkin
ITMO University, 197101, St. Petersburg, Russia E-mail: pyrkin@itmo.ru
An algorithm for estimating the position and orientation of an object on the stage using a stereo vision system is presented. The algorithm is reported to be extremely important in modern robotic production when building control systems with elements of artificial intelligence. A feature of the proposed solution is the analysis of three-dimensional geometry of objects based on information obtained from two-dimensional images. The developed algorithm can be applied in the problems of non-destructive testing of pipelines using robotic flaw detectors equipped with video cameras. Such robotic flaw detectors use various diagnostic methods; application of the developed stereo vision algorithm can provide continuous control of the pipeline surface (100 % coverage), as well as autonomous maneuvering and passage of pipeline elements.
Keywords: stereo vision, stereoscopy, point clouds, computer vision, position estimation.
REFERENCES
1. Wang C. et al. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,
2019, рр. 3343-3352.
2. Michel F. et al. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,
2017, рр. 462-471.
3. Tekin B., Sinha S. N., Fua P. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018, рр. 292-301.
4. Hu Y. et al. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2019, рр. 3385-3394.
5. Hu Y. et al. Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,
2020, рр. 2930-2939.
6. Oberweger M., Rad M., Lepetit V. Proceedings of the European Conference on Computer Vision (ECCV), 2018, рр. 119-134.
7. Kundu J.N., Rahul M.V., Ganeshan A., Babu R.V. Computer Vision - ECCV 2018 Workshops. ECCV
2018. Lecture Notes in Computer Science, Springer, Cham, 2019, vol. 11131, https://doi.org/10.1007/978-3-030-11015-4_23.
8. Kehl W. et al. Proceedings of the IEEE International Conference on Computer Vision, 2017, рр. 1521-1529.
9. Bazylev D.N., Romanovich V.A., Vedyakov A.A. Journal of Instrument Engineering, 2019, no. 9 (62), pp. 167-172. (in Russ.)
10. Somov S.N., Baranov G.V., Polyashov M.A., Pyrkin A.A. Journal of Instrument Engineering, 2019, no. 9(62), pp. 157-166. (in Russ.)
1072
A. A. A3ÔeKHu, A. A. nupKun
Data on authors
Aram A. Azbekian — Post-Graduate Student; ITMO University, Faculty of Control Sys-
tems and Robotics; E-mail: nindz9@gmail.com Anton A. Pyrkin — Dr. Sci., Professor; ITMO University; Faculty of Control Systems
and Robotics; E-mail: pyrkin@itmo.ru
For citation: Azbekian A. A., Pyrkin A. A. An algorithm for assessing an object position using stereo vision system. Journal of Instrument Engineering. 2020. Vol. 63, N 12. P. 1066—1072 (in Russian).
DOI: 10.17586/0021-3454-2020-63-12-1066-1072