Автоматическая калибровка системы видеокамер и лидаров для автономных мобильных комплексов
Ю.Б. Блохинов1, Е.Э. Андриенко1, К.К. Казахмедов1, Б.В. Вишняков1 1 Государственный научно-исследовательский институт авиационных систем,
Государственный научный центр Российской Федерации (ГНЦ ФГУП «Гос НИИАС»), 125319, Россия, г. Москва, ул. Викторенко, д. 7
Аннотация
Автономная навигация беспилотных автомобилей является в настоящее время одной из наиболее интересных научных и технических задач, и это тем более справедливо, если движение осуществляется на пересеченной местности. Как правило, подобные комплексы оснащаются различными сенсорами, работающими одновременно, а для сбора и анализа данных различной природы разрабатывается сложное программное обеспечение. Для совместного использования данных от множества камер и лидаров необходимо обеспечить их взаимную привязку в единой системе координат. Эта задача решается в процессе калибровки системы. Общая идея заключается в том, чтобы поместить в поле зрения сенсоров объект специального вида, характерные точки которого могут детектироваться автоматически с разных точек съемки всеми сенсорами. Тогда вариативная съемка объекта позволяет создать необходимое число связующих точек для взаимной привязки сенсоров. В данной работе представлена технология автоматической калибровки системы съемочных камер и лидаров при помощи оригинального калибровочного объекта. Приведены результаты экспериментов, подтверждающие достаточно высокую точность калибровки.
Ключевые слова: мобильный комплекс, автономная навигация, сбор и анализ данных, камеры, лидары, автоматическая калибровка системы, калибровочный стенд, маркеры, светоотражающие метки.
Цитирование: Блохинов, Ю.Б. Автоматическая калибровка системы видеокамер и лидаров для автономных мобильных комплексов / Ю.Б. Блохинов, Е.Э. Андриенко, К.К. Казахмедов, Б.В. Вишняков // Компьютерная оптика. - 2021. - Т. 45, № 3. - С. 382-393. -DOI: 10.18287/2412-6179- CO-812.
Citation: Blokhinov YB, Andrienko EE, Kazakhmedov KK, Vishnyakov BV. Automatic calibration of multiple cameras and LIDARs for autonomous vehicles. Computer Optics 2021; 45(3): 382-393. DOI: 10.18287/2412-6179-CO-812.
Введение
Автономная навигация наземных мобильных комплексов в сложной многообъектной среде является в настоящее время не только сложной технической задачей, но и одним из наиболее интересных научных вопросов современного компьютерного зрения. Это обусловлено тем, что, помимо определения собственного пространственного положения, система должна производить комплексную оценку среды, в которой она движется, включая классификацию ближайших объектов и оценку их положения, чтобы в итоге построить оптимальную траекторию своего движения. Формирование определенной стратегии поведения в отношении некоторых классов объектов также входит в число задач бортовой системы искусственного интеллекта. При этом требуемая точность определения координат может быть сантиметровой, а правильная идентификация и семантическая сегментация объектов (людей, машин, деревьев, зданий) непосредственно определяет успех миссии мобильного комплекса.
Для успешной реализации поставленных задач подобные комплексы оснащаются множеством раз-
личных сенсоров, а для сбора и анализа в реальном времени полученных данных различной природы разрабатывается сложное программное обеспечение. Часть сенсоров обеспечивает только навигацию, то есть определение собственных координат, скорости и ориентации в пространстве. Эта группа сенсоров, как правило, включает в себя вР8-приемник, угловые и инерциальные датчики, иногда датчики одометрии. Помимо этого, наиболее совершенные мобильные комплексы имеют в составе оборудования лидары и съемочные камеры, возможно радары, причем все сенсоры могут присутствовать в количестве нескольких экземпляров, что обеспечивает всесторонний обзор и более высокое качество цифровой модели местности. Необходимость получения высокоточной модели местности, позволяющей различать достаточно мелкие детали объектов, связана с последующей весьма сложной обработкой полученных данных, которая в итоге должна завершаться построением трехмерной семантической карты местности. Результаты обработки такого рода могут быть использованы как для уточнения навигации комплекса, так и для решения других задач, связанных с его функциональным назначением.
Очевидно, для совместного использования данных от множества сенсоров необходимо обеспечить их взаимную привязку в единой системе координат. Эта задача решается в процессе калибровки системы.
Совместной калибровке лидаров и камер посвящено немало публикаций [1 - 8]. Одной из основных трудностей является сопоставление данных разной природы: набора пространственных точек, которые выдает лидар, и изображения, получаемого с камеры. Поэтому, как правило, для калибровки используется специализированный калибровочный стенд, включающий один или несколько калибровочных объектов и одинаково хорошо идентифицируемый как на изображении, так и в облаке точек, что позволяет использовать результаты его съемки в качестве исходных данных для калибровки. В качестве объектов выбираются предметы правильных геометрических форм: прямоугольные [1, 2, 5, 8], кубические [7], круговые [6], сферические [3]. Особые точки, которыми служат вершины калибровочных объектов, или же, как в случае [3, 6], их центры, извлекаются независимо для изображений и лидарных данных. Для простоты детектирования стенда на изображении он часто снабжается дополнительными метками, такими, например, как Агисо-маркеры [9, 10]. В пространстве лида-ра детектирование калибровочного объекта зачастую происходит в полуавтоматическом режиме с участием оператора, поскольку такой подход обеспечивает стабильное решение задачи независимо от воздействия внешних факторов. Исключения чрезвычайно редки: так, в работе [3] в качестве калибровочного объекта рассматривается мяч, и предсказуемость его формы при любом положении делает возможным автоматическое его детектирование в облаке точек. Однако сам по себе такой калибровочный объект не является достаточно надежным для калибровки мобильных лидаров с их сильно разреженным облаком точек по причине небольшого размера. Кроме того, в реальных условиях калибровки предложенный паттерн может быть ошибочно выделен в различных предметах окружающей обстановки, что приведёт к ошибкам в последующих расчетах.
Независимо от конфигурации калибровочного объекта и методов извлечения его геометрических особенностей, в итоге мы получаем набор соответствий между пространственными точками в системе координат лидара и точками в плоскости снимка. В отношении дальнейшей их обработки рассмотренные работы можно поделить на две группы. Первая группа осуществляет ориентирование сенсоров напрямую по полученным соответствиям [1 - 4]. Методы второй группы основаны на использовании для вычисления ориентирования трехмерных соответствий [5 - 8]. Это возможно при наличии в системе камер со стереопе-рекрытием, позволяющим восстановить простран-
ственные координаты особых точек, найденных на изображениях. Такой подход зарекомендовал себя как более точный, однако требование наличия калибровочного объекта в поле зрения всех сенсоров налагает существенные ограничения на конфигурацию системы.
В данной работе представлена технология автоматической калибровки системы съемочных камер и ли-даров при помощи оригинального калибровочного объекта, позволяющая путем повторной съемки с разных ракурсов получить объем данных, необходимых для калибровки системы с достаточно высокой точностью.
1. Описание оборудования
Аппаратная часть мобильного комплекса собрана на основе серийного российского автомобиля «Нива» (рис. 1). Основное назначение комплекса связано с работой на пересеченной местности, что предполагает достаточно сложную навигацию, включающую анализ рельефа и семантической карты объектного состава местности на основе данных бортовых сенсоров в режиме реального времени. Детальное описание оборудования автомобиля и его назначения выходит за рамки настоящей статьи, ознакомиться с этими вопросами можно, например, по материалам XXIV Конгресса КРЯ8 [11, 12]. Данная работа посвящена калибровке той части комплекса, которая обеспечивает непосредственно 3Б-моделирование местности и включает в себя два лидара Velodyne \ЪР-16 и две камеры РгоБШса вТ2050С с объективами 5 мм, работающие в стереорежиме.
С этой целью был разработан оригинальный калибровочный стенд, представляющий собой плоский прямоугольный щит, прикрепленный к подставке на шарнире, что позволяет варьировать его положение не только за счет смещений, но и за счет поворота (рис. 2). На поверхность щита нанесена группа АгИсо-маркеров [9, 10] для более быстрого и точного определения его углов на изображении. Также на стенде закреплены специальные светоотражающие метки для упрощения его детектирования в облаке точек, получаемом с лидара.
Вся используемая разметка позволяет в итоге полностью исключить участие оператора и производить обработку полученных при съемке данных, а следовательно, и калибровку в автоматическом режиме.
2. Описание процедуры калибровки
Для определения взаимного расположения лидара и камеры необходимо два набора точек: координаты углов калибровочного стенда в пространстве и соответствующие им координаты этих же углов на изображении. Таким образом, процедура калибровки разбивается на два этапа: подготовка исходных данных и вычисление параметров преобразования. На первом этапе производится множественная съемка калибро-
вочного объекта с камеры и лидара, выделение углов стенда в облаке точек и на изображении и формирование пар соответственных точек. На втором этапе при помощи специальных методов по найденным соответствиям точек вычисляется матрица преобразования между системами координат сенсоров.
а) V Ш б)
Рис. 1. Оборудованный мобильный комплекс: вид спереди (а), вид сбоку (б)
А;
PS Y 1
N J
ч 1 ,
.— Л. Ш m лет
а) в)
Рис. 2. Калибровочный стенд (а), угол со светоотражающими метками (б), пример светоотражающей метки (в)
3. Детектирование уголков стенда на изображении
Для детектирования углов стенда на изображении используются Агисо-маркеры [9, 10]. Они представляют собой специально закодированные метки, у каждой из которых есть индивидуальный номер и своя система координат. Однако маркеры не всегда детектируются корректно, поэтому в данной работе для большей точности и надежности производится обработка группы.
Процедура детектирования углов стенда на изображении делится на следующие этапы:
1. Детектирование и уточнение углов Агисо-маркеров.
2. Поиск и уточнение границ стенда.
3. Вычисление положений углов стенда как точек пересечения его границ.
Для реализации первого этапа используется стандартная функция из библиотеки OpenCV [13]. При помощи специального словаря она детектирует маркеры и возвращает набор их углов и соответствующий каждому маркеру индекс. Чтобы уточнить положения углов, была разработана специальная процедура, в основе которой лежит анализ контура каждого маркера в отдельности (рис. 3а). Суть этой процедуры сводится к тому, чтобы сначала выделить точки контура, которые принадлежат границам маркера, затем по этим точкам подобрать параметры прямых, наиболее точно соответствующих каждой из границ, и, наконец, определить новые положения углов маркера, как пересечения этих прямых.
Для выделения контуров здесь и далее используется детектор границ Канни [14]. Чтобы не анализировать контуры всего изображения, по координатам углов, полученным на выходе стандартной функции детектирования, с небольшим отступом строится ограничивающий прямоугольник и все последующие расчеты производятся в выделенной таким образом области. По тем же координатам углов восстанавливаются уравнения прямых, на которых лежат стороны маркера. Затем точки контура проверяются на принадлежность этим прямым, причем точка считается принадлежащей прямой, если расстояние d между ними меньше некоего заданного порога (в данном случае менее двух пикселей)
d = lAx- + лу, + СI
yjA2 + B2
где A, B, С - параметры модели прямой Ax+By+С =0, (x,,yi) - координаты точки контура, 5 - пороговое расстояние. На рис. 3а приведен пример контура ArUco-маркера и результат выделения одной из его границ.
В результате данной проверки получаем четыре набора точек, предположительно принадлежащих сторонам маркера. Далее по каждому из наборов производится уточнение параметров прямой алгоритмом RANSAC [15]. Алгоритм RANSAC (RANdom Sampling Consensus) основывается на робастной оценке параметров модели по случайным выборкам исходных данных. С его помощью по двум случайным точкам (х,,yi), (xj,yj) из набора рассчитываются коэффициенты A, B, С модели Ax + By + С = 0. Затем по приведенной выше формуле проверяется расстояние d от остальных точек набора до этой прямой, и если d < 5, то точки считаются принадлежащими модели, если же d > 5 - выбросами. В данном случае 5 выбирается меньше пикселя, чтобы добиться наилучшей точности.
После того, как были уточнены параметры всех четырех прямых, можно найти новые положения уголков как пересечения этих прямых. На рис. 36 представлены результаты работы предложенной процедуры, красным обозначены границы маркера,
найденные стандартной функцией из библиотеки ОрепСУ, а зеленым - результат уточнения.
Пользуясь тем фактом, что стороны АгИсо-маркеров параллельны сторонам стенда, а все отступы на стенде измерены заранее, мы можем восстановить наклон границ стенда по наклону прямых, вдоль которых располагаются маркеры, а положение границ - при помощи параллельного переноса этих же прямых. Таким образом, поиск границ стенда разбивается на два шага - восстановление параметров прямых, вдоль которых расположены АгИсо-маркеры, и масштабирование боковых отступов для параллельного переноса этих прямых.
Рис. 3. Контур Агисо-маркера с обозначенными на нём точками одной из границ (а), исходные и уточнённые границы меркера (б)
Параметры прямых вычисляются аналогично тому, как они вычислялись для каждой из сторон маркера, с той лишь разницей, что в качестве исходного набора точек здесь используются не точки контура, а наборы углов маркеров. Поскольку не только маркеры, но и их углы имеют свой индекс, то выбрать те из них, что расположены вдоль границ стенда, не составляет тру-
да. Таким образом, снова получаем четыре набора точек, свой для каждой из границ, по которым, используя алгоритм ЯАКБАС, восстанавливаются параметры прямых. На рис. 4а красным цветом отмечены углы маркеров, участвовавшие в расчете параметров прямых, а зеленым - сами найденные прямые.
Рис. 4. Углы крайних Агисо-маркеров и восстановленные по ним прямые (а), найденные границы и углы стенда (б)
Расчет отступов для параллельного переноса прямых, найденных на предыдущем шаге, осуществляется с использованием информации о реальном размере АгИсо-маркеров. Чтобы учесть ракурсные искажения, которые возникают, когда плоскость стенда оказывается под углом к плоскости снимка, вычисляется сразу два коэффициента преобразования, по одному для каждой из осей.
Известный порядок нумерации углов маркера дает нам однозначное соответствие между прямой и отступом, на который ее необходимо сместить. Чтобы вычислить величину отступа в пикселях, исходная его величина в сантиметрах масштабируется по каж-
дой из координатных осей снимка при помощи дом-ножения на рассчитанные ранее коэффициенты преобразования. Таким образом, добавляя к свободному коэффициенту С соответствующее смещение, мы получаем прямую, совпадающую с одной из границ стенда. Углы стенда находятся как пересечения этих прямых. На рис. 4б зеленым цветом отмечены прямые, полученные в результате параллельного переноса, а красным - найденные углы стенда.
Точность позиционирования углов увеличивается за счет дополнительного этапа уточнения параметров
прямых, задающих границы стенда. Как и ранее для АгИсо-маркеров, сначала на контуре всего стенда ищутся точки, соответствующие каждой из его границ, затем при помощи алгоритма ЯА^АС уточняются параметры задающих их прямых и, наконец, находятся новые положения углов стенда как пересечения этих прямых.
На рис. 5 представлены результаты работы предложенного алгоритма детектирования. Многократные испытания показали, что углы определяются достаточно независимо от поворотов и сдвигов щита.
Рис. 5. Результат детектирования углов стенда на изображении. Исходное положение стенда (а), найденные углы (б)
4. Детектирование уголков стенда влидарном облаке
Анализ получаемого с лидара облака точек представляет собой довольно сложную задачу по целому ряду причин. Во-первых, данные обладают небольшой плотностью, и даже достаточно крупные объекты в итоге представлены довольно ограниченным набором точек. Во-вторых, большинство поверхностей имеют схожий коэффициент отражения, что делает затруднительным отделение разных объектов в сцене друг от друга. И, наконец, в лидарных данных присутствуют шумы, что может повлиять на стабильность получаемого результата. На рис. 6 приведен пример облака точек, получаемого с лидара.
Автоматическое решение задачи детектирования стенда и его углов в облаке точек стало возможным благодаря применению специальных светоотражающих меток, пример которых представлен на рис. 2в. Коэффициент отражения материала, из которого изготовлены метки, существенно превосходит коэффициенты отражения всех остальных объектов сцены, что позволяет безошибочно находить их в общем потоке данных.
Процедура детектирования углов стенда в лидар-ном облаке состоит из следующих этапов:
1. 2.
Детектирование светоотражающих меток. Кластеризация пространства на основе евклидова расстояния и выделение граничных точек стенда. Получение уравнений пространственных прямых, на которых лежат границы.
Вычисление положений углов как точек пересечения этих прямых.
Для решения задач, связанных с обработкой и анализом облаков точек, была использована библиотека Point Cloud Library - PCL [16].
3.
4.
Рис. 6. Пример облака точек, получаемого с лидара
На первом этапе получаемое облако фильтруется по положению светоотражающего материала, а соответственно, и по положению самого стенда. Далее применяется алгоритм кластеризации пространства на
основе евклидова расстояния. Использование в качестве критерия именно евклидовой метрики обусловлено тем, что на разном удалении от группы датчиков плотность покрытия объекта точками также получается разная. На выходе процедуры кластеризации получаем набор точек, принадлежащих плоскости стенда, граничными же точками этого набора считаются те, что имеют соответственно максимальные и минимальные значения по оси х в каждом из рядов. На данном этапе существенным является требование наличия дистанции между стендом и другими объектами сцены во время съемки, поскольку аналитически отделить стоящие вплотную друг к другу предметы с прямолинейными границами не представляется возможным, а значит, и выделение границ при неисполнении этого требования может быть ошибочным. На рис. 7 представлен результат процедуры кластеризации, желтым обозначены граничные точки.
Рис. 7. Облако точек, содержащее плоскость стенда, полученное в результате процедуры кластеризации
По найденным на предыдущем шаге точкам при помощи алгоритма ЯАКБАС восстанавливаются параметры прямых, на которых лежат границы стенда. На этот раз в качестве модели используется пространственное представление прямой:
(х - Хо) = (у - Уо) = (г - ¿р)
А В С ,
где (хо, уо, го) - координаты точки, лежащей на этой прямой, а {А, В, С} - координаты направляющего вектора.
Алгоритм поиска неизвестных параметров выглядит так: из набора граничных точек случайным образом выбирается пара (хг-, уг-, г), (х;, у, г), по которой восстанавливаются параметры (хо,уо, го) и {А, В, С}. Затем проводится процедура голосования для остальных точек из набора и проверяется, сколько из них принадлежит прямой с такими параметрами. При
этом точка считается лежащей на прямой, если расстояние й между ними меньше некоторого порога у:
Здесь ^ = {А, В, С} - направляющий вектор гипотетической прямой, Р Ро - вектор, соединяющий точку набора и точку Ро = (хо, уо, ¿о), а у - порог, в данном случае выбран равным двум сантиметрам.
Поскольку стороны стенда располагаются либо параллельно, либо перпендикулярно друг другу, то можно существенно сократить число ошибок на этапе детектирования, просто проверяя значения косинусов углов, которые составляет гипотетическая граница с уже найденными.
После того, как граница была найдена, все соответствующие ей точки удаляются из общего набора, а процедура повторяется снова до тех пор, пока не будут обнаружены все стороны стенда. На рис. 8а представлены результаты работы процедуры восстановления границ по общему набору граничных точек. Зеленым, голубым, желтым и серым цветами обозначены соответствующие стороны стенда, синим - точки, не прошедшие отбор.
Наличие шумов в исходной выборке алгоритма детектирования или же ошибок на этапе выделения граничных точек может привести к тому, что настоящая граница стенда не получит достаточной поддержки в процедуре голосования, а значит, и не сможет быть использована для вычисления положения углов. В этом случае тест считается неудачным и удаляется из общей выборки. На рис. 8б показано, как наличие шумов сбивает процедуру поиска границ и приводит к неверным результатам.
Поскольку точность измерений по разреженным ли-дарным данным невелика, то найденные прямые, вообще говоря, могут не иметь общих точек. Поэтому для расчета координат углов используется процедура поиска минимального расстояния между скрещивающимися прямыми. На рис. 8а, б красным цветом обозначены результаты вычисления положений углов стенда.
5. Ориентирование сенсоров
Процедура ориентирования сенсоров системы в данной работе разбивается на два этапа. На первом этапе решается задача попарного взаимного ориентирования датчиков, результаты которой будут выступать начальными приближениями для второго этапа процедуры -уравнивания. Параметры внутреннего ориентирования камер считаются заранее заданными, и методы их вычисления в данной работе не рассматриваются.
Исходя из того, что основной целью первого этапа является получение начальных приближений параметров ориентирования для алгоритма уравнивания, расчеты производились для пар камера - лидар и ли-
дар - лидар. Вариант камера - камера не рассматривается, потому что, во-первых, для дальнейшего использования этих параметров камеры всё равно пришлось бы ориентировать относительно одного из ли-
даров, а во-вторых, смещение для камер было бы получено в некоторых условных единицах, масштабирование которых потребовало бы дополнительных вычислений.
Рис. 8. Результаты определения границ и углов стенда: верное (а) и ошибочное (б)
Для решения задачи взаимной калибровки лидара и камеры используется стандартный алгоритм Perspective-Three-Point [17] или P3P из библиотеки openMVG [18]. В качестве исходных данных алгоритм принимает параметры внутреннего ориентирования камеры (фокус, главная точка, дисторсия), координаты углов стенда в системе координат снимка и соответствующие им координаты точек в трехмерном пространстве, полученные при помощи лидара. На выходе получаем матрицу преобразования между системами координат камеры и лидара.
Для решения задачи взаимного ориентирования лидаров используется алгоритм оценки параметров преобразования между двумя наборами пространственных точек методом наименьших квадратов (метод Умеямы) [19]. Путем минимизации функционала
1 "
II y - (R +t) ||2->min
n ,=1
алгоритм позволяет получить оптимальную оценку поворота R, смещения t и масштабного коэффициента с для двух наборов точек x, и у,. В данной работе использовалась его реализация, предложенная в библиотеке Eigen [20]. Таким образом, для расчета параметров калибровки пары лидар - лидар достаточно подставить в качестве x, и у, пространственные координаты соответственных углов для этих лидаров, найденные на предыдущем шаге.
В нашем случае нет необходимости вычислять коэффициент c, так как предполагается, что масштабы по осям лидаров идентичны.
Чтобы повысить точность ориентирования всей системы сенсоров, был использован алгоритм блочного
уравнивания по методу связок (bundle adjustment) [21]. Суть метода заключается в одновременном уточнении пространственных координат точек сцены и параметров внешней и внутренней калибровки камер посредством минимизации функционала
n m
££||xj -PXM-► min.
,=1 j=1
Здесь n - число точек, m - число камер, xj - координаты i-го угла на j-м изображении, Pj - матрица проекции для j-го изображения, X, - координаты соответствующего угла в пространстве. Матрица проекции для каждой камеры формируется из параметров внешнего и внутреннего ориентирования P = K(R | t), где K - матрица параметров внутреннего ориентирования камеры, а R и t - матрица поворота и вектор смещения относительно некоторой внешней системы координат.
Классический вариант метода не предусматривает уравнивания датчиков разной природы, тем не менее, есть возможность использовать данные, полученные с лидаров в процессе вычислений. Дело в том, что вовсе не обязательно решать задачу оптимизации по всем переменным, в частности, реализация алгоритма из библиотеки openMVG позволяет фиксировать значения пространственных координат X. В этом случае на выходе алгоритма мы получим оптимальные поворот и смещение камер относительно некоторого заранее заданного и неизменного набора точек. А подставив в качестве такого набора углы, рассчитанные по лидарным данным, получим, соответственно, оптимальные положения для всех камер системы относительно данного конкретного лидара. Поскольку ли-
дарные данные содержат шумы, то параметры внутреннего ориентирования камер в процессе уравнивания также не уточняются.
Для учета данных со всех лидаров можно сформировать по ним «синтетическое» облако точек. Такое облако синтезируется численно на основе всех имеющихся наборов пространственных углов и параметров взаимного ориентирования лидаров. В качестве критерия отбора точек могут быть использованы ошибки проекции лидарных углов на плоскости снимков, сделанных камерами. Для каждого лидара по всем точкам рассчитываются ошибки
ek =Ц|
м
- PL I
где т - число камер, х{ - координаты /-го угла на'-м изображении, Ру - матрица проекции для '-го изображения, рассчитанная по начальным приближениям для поворота и смещения, полученным на предыдущем этапе, а Ц - 1-й угол, рассчитанный по данным с к-го лидара. Затем для соответствующих пространственных углов производится сравнение значений ошибок ек, и тот угол, для которого суммарная ошибка проекции на плоскости всех изображений является наименьшей, включается в синтетическое облако.
В качестве исходной системы координат для такого облака выбирается система координат одного из лидаров. После того, как список углов с наименьшими ошибками был сформирован, их координаты пере-считываются относительно единого центра с помощью полученных ранее параметров взаимного ориентирования лидаров.
6. Эксперименты
На рис. 9 представлена система камер и лидаров, которую необходимо откалибровать. В качестве оптических датчиков была использована стереопара из камер РгоБШса ОТ2050С с объективами 5 мм, в качестве лидара - УеМупе УЪР-16.
- ___________
X
yZ ....... ,
............... 'ч.
Рис. 9. Схема расположения сенсоров
Тестирование разработанных алгоритмов проводилось как на модельных, так и на реальных данных. Для моделирования использовалась собственная программная разработка на базе движка Unreal Engine 4. На рис. 10 приведены примеры синтезированного
изображения и синтезированного облака точек, полученные при помощи моделирования работы камеры и лидара.
Рис. 10. Пример модельных данных: фотография с камеры (а) и облако точек с лидара (б)
Тот факт, что для модельных данных можно с высокой точностью задавать расстояния и углы поворотов между датчиками, дает возможность протестировать как принципиальную работоспособность, так и предельную точность алгоритмов. Для оценки точности определения параметров ориентирования была выбрана среднеквадратическая ошибка
RMSE =
Ё (у - i )2
где уI - ожидаемое значение величины, у, - значение этой же величины, полученное в результате расчетов, а п - число измерений. При оценке смещения в качестве измеряемой величины были взяты попарные расстояния между датчиками, а при оценке поворота -значения соответствующих углов в градусах. Помимо этого, учитывались и ошибки репроекции - разница между углами стенда, найденными на изображении, и спроецированными на снимок углами стенда, найденными в лидарном облаке. В табл. 1 приведены значения указанных ошибок, полученные при расчете взаимного ориентирования и уравнивания на модельных данных для разного числа положений стенда.
i=i
n
Табл. 1. Ошибки смещения, поворота и репроекции по результатам взаимного ориентирования и уравнивания на модельных данных
Ошибки Взаимное ориентирование Уравнивание
2 положения
Смещение, м 0,023 0,015
Поворот, град 0,974 0,859
Репроекции, пикс 2,517 0,567
4 положения
Смещение, м 0,005 0,001
Поворот, град 0,643 0,340
Репроекции, пикс 2,488 0,811
6 положений
Смещение, м 0,003 0,001
Поворот, град 0,457 0,178
Репроекции, пикс 2,837 1,075
Как видно из таблицы, для точной оценки параметров ориентирования достаточно даже небольшого числа различных положений стенда. Кроме того, увеличение выборки приводит к сокращению разрыва между результатами взаимного ориентирования и уравнивания. Однако модельные данные не учитывают наличие шумов в лидарном облаке, а значит, точность ориентирования, получаемого по ним, будет существенно выше, чем при реальной съемке.
В процессе тестирования алгоритма на реальных данных проверялась зависимость точности итогового результата от двух факторов:
1. Числа различных положений стенда при повторной съемке.
2. Числа кадров, сделанных для каждого из положений стенда в отдельности.
Под кадром в данном случае понимаются полученные одновременно снимки с камер и облака точек с ли-даров. Результаты этих проверок представлены в табл. 2 и 3 соответственно. В отличие от модельных данных, для реальной системы прямое сравнение измеренных углов и их действительных значений является нетривиальной задачей, а потому соответствующие погрешности для реальных съемок не рассчитывались.
Табл. 2. Ошибки смещения и репроекции по результатам взаимного ориентирования и уравнивания на реальных данных для разного числа положений стенда
Ошибки Взаимное ориентирование Уравнивание
4 положения
Смещение, м 0,144 0,110
Репроекции, пикс 6,562 2,996
8 положений
Смещение, м 0,038 0,017
Репроекции, пикс 4,475 2,441
12 положений
Смещение, м 0,036 0,006
Репроекции, пикс 6,736 3,252
Как и для случая с модельными данными, увеличение выборки различных положений стенда приво-
дит к уменьшению погрешности алгоритма на обоих этапах калибровки. Однако для тестов по реальным съемкам существенно возрастает разрыв между результатами взаимного ориентирования и результатами уравнивания, что лишний раз подчеркивает важность этого этапа в процедуре. Кроме того, наличие шумов в лидарных данных приводит к тому, что для достижения того же порядка точности, что был получен для модельных данных, требуется в два раза больше кадров.
Для проверки влияния множественной съемки на точность оценки параметров ориентирования исходная выборка из двенадцати положений стенда была расширена за счет добавления повторных кадров для каждого из положений. В табл. 3 представлены результаты расчетов, полученные для одного, пяти, пятнадцати и двадцати пяти кадров каждого из положений этой выборки.
Из таблицы видно, что для предложенного алгоритма множественная съемка каждого положения стенда не несет никакой практической пользы. Она не дает существенного улучшения по точности на этапе взаимного ориентирования, а на этапе уравнивания даже приводит к существенному ухудшению результата по сравнению с исходной выборкой.
Табл. 3. Ошибки смещения и репроекции по результатам взаимного ориентирования и уравнивания на реальных данных для различного числа кадров каждого из положений стенда
Ошибки Взаимное ориентирование Уравнивание
1 кадр
Смещение, м 0,036 0,006
Репроекции, пикс 6,736 3,252
5 кадров
Смещение, м 0,050 0,023
Репроекции, пикс 5,964 2,850
15 кадров
Смещение, м 0,026 0,022
Репроекции, пикс 3,220 2,839
25 кадров
Смещение, м 0,034 0,017
Репроекции, пикс 6,093 2,931
Из данных, приведенных в табл. 2 и 3, следует, что применение процедуры уравнивания дает существенное преимущество как в точности оценки параметров ориентирования, так и в простоте процедуры калибровки, поскольку позволяет обеспечить высокую точность при меньшем объеме съемок.
На рис. 11 приведена сцена, восстановленная по результатам уравнивания: зеленым обозначены центры камер, голубым - центры лидаров, белым - углы стенда, по которым производились расчеты.
Целью разработанной мобильной съемочной системы является не только построение трехмерной карты окружающей местности, но и ее семантический анализ, включающий, наряду с классификацией объ-
ектов сцены, определение их точных границ. Поскольку сегментация проводится как для двумерного снимка, так и для трехмерного лидарного облака, совпадение границ объектов при проецировании на плоскость снимка является хорошей проверкой качества калибровки системы. С целью проведения такой проверки мы использовали результаты семантической сегментации сцен натурной съемки, проведенной методами, представленными в работах [11, 12]. Для этого изготавливается специальная маска, на которой все пиксели, принадлежащие одному классу объектов, помечаются одинаковым цветом. Пример такой маски приведен на рис. 12а, серым на ней обозначены постройки, зеленым - деревья, фиолетовым - асфальтовое покрытие, синим - автомобили, красным - люди и т. д.
Рис. 11. Система датчиков и точки сцены, восстановленные в результате уравнивания
Далее по параметрам ориентирования для каждой пары камера - лидар вычисляется матрица проекции Р, позволяющая рассчитать координаты точек лидар-ного облака в пространстве изображения. Эти же координаты при обращении к маске сегментации дают возможность окрашивать точки облака в цвет того класса объекта, которому принадлежит проекция. На рис. 12б представлен исходный снимок с камеры с наложенным на него облаком одного из лидаров, точки которого были предварительно раскрашены по маске сегментации. Из рисунка видно, что границы облаков достаточно точно соответствуют тем объектам, на которые они накладываются.
Результаты экспериментов подтверждают, что предложенная технология калибровки системы камер и лидаров позволяет с достаточно высокой точностью решать поставленную задачу даже для исходных данных, содержащих шумы и выбросы.
Заключение
Разработана технология автоматической калибровки системы съемочных камер и лидаров для авто-
номного мобильного комплекса. Рассматриваемый комплекс имеет в своем составе два лидара УеМупе УЬР-16 и две камеры РгоБШса вТ2050С с объективами 5 мм, однако число сенсоров может быть произвольным, а лидары и камеры могут быть различных видов.
Рис. 12. Маска семантической сегментации (а) и соответствующее ей изображение с проекцией на его плоскость облака точек лидара (б)
Для реализации технологии разработан и изготовлен оригинальный калибровочный стенд, представляющий собой плоский прямоугольный щит, подвижно закрепленный на подставке в своем геометрическом центре, что позволяет варьировать положение его углов не только за счет смещений, но и за счет поворота вокруг оси (рис. 1). Отличительной особенностью стенда является использование в его конструкции, наряду с известными ЛгИсо-маркерами [9, 10], специальных светоотражающих лазерных меток для высокой надежности детектирования объекта
в облаке точек, получаемом с лидара. Эти элементы конструкции позволили сделать технологию полностью автоматической.
Основная проблема совместной обработки лидар-ных данных и фотоснимков заключается в том, что пространственное разрешение используемых сенсоров отличается весьма значительно. При этом точки пространственного объекта, используемые в качестве связующих, должны быть различимы как в лидарном облаке, так и на снимке. Процедура калибровки включает два этапа: получение исходных данных и вычисление параметров преобразования. На первом этапе производится множественная съемка калибровочного объекта с камеры и лидара, выделение углов стенда в облаке точек и на изображении и формирование набора соответственных точек. Съемка объекта с вариацией углов и расстояний позволяет увеличить количество данных и повысить точность выделения углов стенда в облаке точек. На втором этапе при помощи известных методов по найденным соответствиям точек вычисляется матрица преобразования между системами координат сенсоров.
Для решения задачи взаимной калибровки лидара и камеры разработано специализированное программное обеспечение, использующее как открытые библиотеки, приведенные в ссылках, так и программные компоненты собственной разработки. Реализованные при этом алгоритмы обработки данных описаны в настоящей статье. Рабочий образец специализированного программного обеспечения реализован на вычислительном блоке IPC с процессором Intel Core i7-8700 под управлением операционной системы Ubuntu 18.04 LTS.
Проведены испытания аппаратного комплекса и разработанного специализированного программного обеспечения калибровки системы. Результаты экспериментов подтверждают достаточно высокую точность калибровки. В табл. 1 и 2 приведены результаты расчетов ошибок параметров ориентирования и ошибок репроекции для разных по объему наборов исходных данных. Из приведенных значений ошибок следует, что разработанные алгоритмы позволяют успешно решать задачу калибровки системы датчиков разной природы в автоматическом режиме. Показано, что множественная съемка стенда и корректная обработка полученных данных позволяют повысить точность измерения углов калибровочного объекта в разреженном лидарном облаке.
Благодарности
Работа выполнена при финансовой поддержке РНФ (проект № 16-11-00082).
Литература
1. Pusztai, Z. Accurate calibration of LiDAR-camera systems
using ordinary boxes / Z. Pusztai, L. Hajder // IEEE Interna-
tional Conference on Computer Vision Workshops. - 2017.
- P. 394-402. - DOI: 10.1109/ICCVW.2017.53.
2. Park, Y. Calibration between color camera and 3D LIDAR instruments with a polygonal planar board / Y. Park, S. Yun, C.S. Won, K. Cho, K. Um, S. Sim // Sensors. - 2014. - Vol. 14, Issue 3. - P. 5333-5353. - DOI: 10.3390/s140305333.
3. Pereira, M. Self calibration of multiple LIDARs and cameras on autonomous vehicles / M. Pereira, D. Silva, V. Santos, [et al.] // Robotics & Autonomous Systems. - 2016. - Vol. 83. -P. 326-337. - DOI: 10.1016/j.robot.2016.05.010.
4. Xu, Z. A method of extrinsic calibration between a four-layer laser range finder and a camera / Z. Xu, X. Li // Proceedings of the 33rd Chinese Control Conference. - 2014. -P. 7450-7455. - DOI: 10.1109/ChiCC.2014.6896239.
5. Абраменко, А.А. Калибровка взаимного расположения стереокамеры и трёхмерного сканирующего лазерного дальномера / А.А. Абраменко // Компьютерная оптика.
- 2019. - Т. 43, № 2. - С. 220-230. - DOI: 10.18287/24126179-2019-43-2-220-230.
6. Guindel, C. Automatic extrinsic calibration for lidar-stereo vehicle sensor setups / C. Guindel, J. Beltrán, D. Martín, F. García // IEEE International Conference on Intelligent Transportation Systems. - 2017. - P. 674-679.
7. Chai, Z. A novel method for LiDAR camera calibration by plane fitting / Z. Chai; Y. Sun; Z. Xiong // Proceedings of the 2018 IEEE/ASME International Conference on Advanced Intelligent Mechatronics. - 2018. - P. 286-291.
8. Dhall, A. LiDAR-camera calibration using 3D-3D point correspondences [Электронный ресурс] / K. Chelani, V. Radhakrishnan. - 2017. - URL: https://arxiv.org/pdf/1705.09785.pdf (дата обращения 04.09.2020).
9. Garrido-Jurado, S. Automatic generation and detection of highly reliable fiducial markers under occlusion / S. Garrido-Jurado, R. Muñoz-Salinas, F. Madrid-Cuevas, M. Marín-Jiménez // Pattern Recognition. - 2014. - Vol. 47, Issue 6. -P. 2280-2292. - DOI: 10.1016/j.patcog.2014.01.005.
10. Romero-Ramirez, F. Speeded up detection of squared fiducial markers / F. Romero-Ramirez, R. Muñoz-Salinas, R. Medina-Carnicer // Image and Vision Computing. -2018. - Vol. 76. - P. 38-47.
11. Vishnyakov, B. Semantic scene understanding for the autonomous platform / B. Vishnyakov, Y. Blokhinov, I. Sgibnev, V. Sheverdin, A. Sorokin, A. Nikanorov, P. Masalov, K. Kazakhmedov, S. Brianskiy, Е. Andrienko, Y. Vizilter // The International Archives of the Photogram-metry, Remote Sensing and Spatial Information Sciences. -2020. - Vol. XLIII, Pt. B2. - P. 637-644.
12. Sgibnev, I. Deep semantic segmentation for the off-road autonomous driving / I. Sgibnev, A. Sorokin, B. Vishnyakov, Y. Vizilter // The International Archives of the Photogram-metry, Remote Sensing and Spatial Information Sciences. -2020. - Vol. XLIII, Pt. B2. - P. 617-622.
13. Библиотека обработки изображений OpenCV [Электронный ресурс]. - URL: http://opencv.org/ (дата обращения 04.09.2020).
14. Canny, J.A. Computational approach to edge detection / J.A. Canny // IEEE Transactions on Pattern Analysis and Machine Intelligence. - 1986. - Vol. 8, Issue 6. - P. 679698.
15. Fischler, M.A. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography / M.A. Fischler, R.C. Bolles // Communications of the ACM. - 1981. - Vol. 24. - P. 381-395.
16. Библиотека работы с облаком точек [Электронный ресурс]. - URL:http://pointclouds.org/documentation/ (дата обращения 04.09.2020).
17. Kneip, L. A novel parametrization of the perspective-three-point problem for a direct computation of absolute camera position and orientation / L. Kneip, D. Scaramuzza, R. Siegwart // Proceeding CVPR'11 Proceedings of the 2011 IEEE Conference on Computer Vision and Pattern Recognition. - 2011. - P. 2969-2976.
18. Открытая библиотека OpenMVG [Электронный ресурс]. - URL: https://github.com/openMVG/ (дата обращения 04.09.2020).
19. Umeyama, S. Least-squares estimation of transformation parameters between two point patterns / S. Umeyama // IEEE Transactions on Pattern Analysis and Machine Intelligence. - 1991. - Vol. 13, Issue 4. - P. 376-380.
20. Открытая библиотека Eigen [Электронный ресурс]. -URL: http://eigen.tuxfamily.org/index.php?title=Main_Page/ (дата обращения 04.09.2020).
21. Triggs, B. Bundle adjustment - A modern synthesis / B. Triggs, P. McLauchlan, R. Hartley, A. Fitzgibbon // ICCV'99: Proceedings of the International Workshop on Vision Algorithms. - 1999. - P. 298-372.
Сведения об авторах
Блохинов Юрий Борисович, 1956 года рождения, в 1980 году окончил Московский физико-технический институт по специальности «Динамика полета и управление», в 1990 году защитил кандидатскую диссертацию во ВНИИ Системных исследований, в 2012 году защитил докторскую диссертацию в Московском государственном университете геодезии и картографии (МИИГАиК). Работает начальником лаборатории в ГНЦ ФГУП «Гос НИИАС». Область научных интересов: цифровая фотограмметрия, компьютерное зрение, анализ изображений, распознавание образов. E-mail: yury.blokhinov@gosniias.ru .
Андриенко Екатерина Эдуардовна, 1992 года рождения, в 2015 году окончила Московский государственный технический университет имени Н.Э. Баумана (МГТУ им. Н.Э. Баумана) по специальности «Прикладная математика». Работает инженером в ГНЦ ФГУП «ГосНИИАС». Область научных интересов: фотограмметрия, компьютерное зрение, анализ изображений. E-mail: andrienko@gosniias.ru .
Казахмедов Кирилл Кахриманович, 1993 года рождения, в 2018 году окончил Московский государственный технический университет имени Н.Э. Баумана (МГТУ им. Н.Э. Баумана) по специальности «Автоматизация технологических процессов и производств». Работает инженером в ГНЦ ФГУП «ГосНИИАС». Область научных интересов: фотограмметрия, компьютерное зрение, анализ изображений, администрирование систем в высоконагруженных проектах. E-mail: kkirill@gosniias.ru .
Вишняков Борис Ваисович, 1984 года рождения, в 2006 году окончил Московский авиационный институт (МАИ) по специальности «Прикладная математика», в 2009 году защитил кандидатскую диссертацию в МАИ. Работает начальником лаборатории в ФГУП «ГосНИИАС». Область научных интересов: компьютерное зрение, машинное обучение, глубокое обучение, распознавание образов, анализ изображений, анализ видео, биометрия, робототехнические системы. E-mail: vishnyakov@gosniias.ru .
ГРНТИ: 28.23.27
Поступила в редакцию 18 сентября 2020 г. Окончательный вариант - 2 февраля 2021 г.
Automatic calibration of multiple cameras and lidars for autonomous vehicles
Y.B. Blokhinov1, E.E. Andrienko1, K.K. Kazakhmedov1, B. V. Vishnyakov1 1 State Research Institute of Aviation Systems, 125167, Moscow, Russia, Victorenko Str., 7
Abstract
Autonomous navigation of unmanned vehicles (UVs) is currently one of the most interesting scientific and technical problems, and this is even more true for UVs moving across rough terrain. As a rule, such vehicles are equipped with different sensors operating simultaneously, and sophisticated software is being developed to collect and analyze miscellaneous data. For the joint use of data from multiple cameras and lidars, all of them need to be mutually referenced in a single coordinate system. This problem is solved in a process of system calibration. The general idea is to place an object of special type in the field of view of the sensors, so that its characteristic points can be automatically detected from different points of view by all sensors. Then the repeated survey of the object allows you to create the required number of tie points for mutual alignment of the sensors. This work presents a technique for automatic calibration of a system of cameras and lidars using an original calibration object. The presented results of the experiments show that the calibration accuracy is sufficiently high.
Keywords: unmanned vehicle, autonomous navigation, data collection and analysis, cameras, lidars, automatic system calibration, calibration stand, markers, reflective tags.
Citation: Blokhinov YB, Andrienko EE, Kazakhmedov KK, Vishnyakov BV. Automatic calibration of multiple cameras and LIDARs for autonomous vehicles. Computer Optics 2021; 45(3): 382-393. DOI: 10.18287/2412-6179-CO-812.
Acknowledgements: The work was supported by the Russian Science Foundation (Project No. 16-11-00082).
References
[1] Pusztai Z, Hajder L. Accurate calibration of LiDAR-camera systems using ordinary boxes. IEEE International Conference on Computer Vision Workshops 2017: 394402. DOI: 10.1109/ICCVW.2017.53.
[2] Park Y, Yun S, Won CS, Cho K, Um K, Sim S. Calibration between color camera and 3D LIDAR instruments with a polygonal planar board. Sensors 2014; 14(3): 53335353. DOI: 10.3390/s140305333.
[3] Pereira M, Silva D, Santos V, et al. Self calibration of multiple LIDARs and cameras on autonomous vehicles. Rob Auton Syst 2016; 83(C): 326-337. DOI: 10.1016/j.robot.2016.05.010.
[4] Xu Z, Li X. A method of extrinsic calibration between a four-layer laser range finder and a camera. Proc 33rd Chinese Control Conference 2014: 7450-7455. DOI: 10.1109/ChiCC.2014.6896239.
[5] Abramenko AA. Extrinsic calibration of stereo camera and three-dimensional laser scanner. Computer Optics 2019; 43(2): 220-230. DOI: 10.18287/2412-6179-2019-43-2220-230.
[6] Guindel C, Beltrán J, Martín D, García F. Automatic extrinsic calibration for lidar-stereo vehicle sensor setups. IEEE International Conference on Intelligent Transportation Systems 2017: 674-679.
[7] Chai Z, Sun Y, Xiong Z. A novel method for LiDAR camera calibration by plane fitting. Proc 2018 IEEE/ASME International Conference on Advanced Intelligent Mecha-tronics 2018: 286-291.
[8] Dhall A, Chelani K, Radhakrishnan V. LiDAR-camera calibration using 3D-3D point correspondences. 2017. Source: (https://arxiv.org/pdf/1705.09785.pdf).
[9] Garrido-Jurado S, Muñoz-Salinas R, Madrid-Cuevas FJ, Marín-Jiménez MJ. Automatic generation and detection of highly reliable fiducial markers under occlusion. Patt Recogn 2014; 47(6): 2280-2292. DOI: 10.1016/j.patcog.2014.01.005.
[10] Romero-Ramirez FJ, Muñoz-Salinas R, Medina-Carnicer R. Speeded up detection of squared fiducial markers. Image Vis Comput 2018; 76: 38-47.
[11] Vishnyakov B, Blokhinov Y, Sgibnev I, Sheverdin V, Sorokin A, Nikanorov A, Masalov P, Kazakhmedov K, Brianskiy S, Andrienko E, Vizilter Y. Semantic scene understanding for the autonomous platform. Int Arch Photogramm Remote Sens Spatial Inf Sci 2020; XLIII(B2): 637-644.
[12] Sgibnev I, Sorokin A, Vishnyakov B, Vizilter Y. Deep semantic segmentation for the off-road autonomous driving. Int Arch Photogramm Remote Sens Spatial Inf Sci 2020; XLIII(B2): 617-622.
[13] The image processing library OpenCV. Source: (http://opencv.org/).
[14] Canny JA. Computational approach to edge detection. IEEE Trans Pattern Anal Mach Intell 1986; 8(6): 679-698.
[15] Fischler MA, Bolles RC. Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography. Communications of the ACM 1981; 24: 381-395.
[16] Point cloud library. Source: (http://pointclouds.org/documentation/).
[17] Kneip L, Scaramuzza D, Siegwart R. A novel parametrization of the perspective-three-point problem for a direct computation of absolute camera position and orientation. Proceeding CVPR'11 Proceedings of the 2011 IEEE Conference on Computer Vision and Pattern Recognition 2011: 2969-2976.
[18] OpenMVG libraries. Source: (https://github.com/openMVG ).
[19] Umeyama S. Least-squares estimation of transformation parameters between two point patterns. IEEE Trans Pattern Anal Mach Intell 1991; 13(4): 376-380.
[20] Eigen Library. Source: (http://eigen.tuxfamily.org/index.php?title=Main_Page ).
[21] Tiiggs B, McLauchlan P, Hartley R, Fitzgibbon A. Bundle ad- International Workshop on Vision Algorithms 1999: 298-372.
justment - A modern synthesis. ICCV99: Proceedings of the
Authors' information
Yury Borisovitch Blokhinov (b. 1956) graduated from Moscow Institute of Physics and Technology in 1980 in the speciality "Space Flight Dynamics and Control". In 1990 he defended his PhD thesis in the State Research Institute of System Analysis, in 2012 he defended his DE thesis in Moscow State University of Geodesy and Cartography. He works as head of the laboratory in State Research Institute of Aviation Systems. His research interests currently are digital photogrammetry, computer vision, image analysis, pattern recognition. E-mail: yury.blokhinov@sosniias.ru .
Ekaterina Eduardovna Andrienko (b. 1992) graduated from Bauman Moscow State Technical University (BMSTU) in 2015 in the specialty "Applied Mathematics". She works as an engineer in State Research Institute of Aviation Systems (SSC of RF). Research interests: photogrammetry, computer vision, image analysis. E-mail: andrienko@gosniias.ru .
Kirill Kahrimanovitch Kazakhmedov (b. 1993) graduated from Bauman Moscow State Technical University (BMSTU) in 2018 in the specialty "Technological Processes and Manufacture Automation". He works as an engineer in State Research Institute of Aviation Systems (SSC of RF). Research interests: photogrammetry, computer vision, image analysis, highload. E-mail: kkirill@gosniias.ru .
Boris Vaisovich Vishnyakov, (b. 1984) graduated from Moscow Aviation Institute (MAI) in 2006 with a master degree in "Applied Mathematics, got a Ph.D. in "System Analysis, Control and Information Processing" in 2009. He works as a head of laboratory at the State Research Institute of Aviation Systems. Research interests: computer vision, machine learning, deep learning, pattern recognition, image analysis, video processing, biometrics, robotic systems. E-mail: vishnyakov@gosniias.ru .
Received September 18, 2020. The final version - February 2, 2021.