Калибровка взаимного расположения стереокамеры и трёхмерного сканирующего лазерного дальномера
А.А. Абраменко1
1АО «Научно-конструкторское бюро вычислительных систем» (АО НКБВС), Таганрог, Россия
Аннотация
В работе описан метод, позволяющий решать задачу определения взаимного положения многолучевого лидара и стереокамеры. Метод не накладывает никаких ограничений на место, в котором должна проводиться калибровка. Калибровка осуществляется с использованием калибровочного щита, который представляет собой плоский прямоугольник со специальными маркерами. Для калибровки используются трёхмерные соответствия. Вначале осуществляется поиск трёхмерных координат угловых точек калибровочного щита в системах координат камер стереопары, а также в системе координат лидара. Далее с помощью оптимизационных методов осуществляется вычисление параметров калибровки. Проведена серия виртуальных и натурных экспериментов, результаты которых показывают, что предложенный метод позволяет осуществить калибровку с точностью, сравнимой с погрешностью сенсоров. Предлагаемый метод позволяет улучшить точность калибровки за счёт одновременного использования информации с двух камер стереопары и подходит для лидаров как с низкой, так и с высокой плотностью точек.
Ключевые слова: стереокамера, лидар, внешняя калибровка, комплексирование данных.
Цитирование: Абраменко, А.А. Калибровка взаимного расположения стереокамеры и трёхмерного сканирующего лазерного дальномера / А.А. Абраменко // Компьютерная оптика. - 2019. - Т. 43, № 2. - С. 220-230. - БО!: 10.18287/2412-6179-2019-43-2-220-230.
Введение
Зачастую мобильные платформы оборудуются одновременно датчиками различных типов, в частности камерами и сканирующими лазерными дальномерами (лидарами). В то время, как камеры позволяют получить изображения окружающего пространства, многолучевые лидары позволяют получить облако точек. Облако точек представляет собой множество трёхмерных точек в системе координат лидара, полученных в результате сканирования окружающего пространства. Данные камер и лидара - данные различной природы, которые могут взаимно дополнять друг друга. Так, например, изображения с камер можно использовать для того, чтобы получить информацию о цвете точек лазерного отражения. При этом возникает задача определения взаимного расположения (калибровки) этих датчиков. Под определением взаимного расположения в данном случае понимается определение смещения одного датчика относительно другого (три степени свободы), а также определение взаимной ориентации двух датчиков (также три степени свободы). Калибровка взаимного расположения датчиков необходима для решения различных задач, в частности, для трёхмерной реконструкции [1, 2] или совмещения информации, полученной с помощью различных датчиков, в общую модель.
Взаимное расположение сенсоров в некоторых случаях может быть измерено вручную, однако полученные таким образом измерения, как правило, не обладают необходимой точностью. Неточная калибровка сенсоров может привести к ошибкам при объединении данных, что, в свою очередь, может привести, например, к фатальным ошибкам при навигации и планировании траектории движения. Таким образом, калибровка взаимного расположения сенсоров, в ча-
стности, лидара и стереокамеры (стереопары), является важной и актуальной задачей, решение которой открывает большие возможности по использованию изображений и лазерных данных вместе для решения задач технического зрения.
Целью работы является разработка метода, позволяющего решать задачу определения взаимного положения многолучевого лидара и стереокамеры. В первом параграфе рассмотрены существующие подходы к решению задачи калибровки. Во втором параграфе изложен предлагаемый метод. В третьем параграфе описаны и проанализированы результаты виртуальных и натурных экспериментов. В заключительной части делаются выводы о проделанной работе.
1. Подходы к решению задачи калибровки
Калибровка обычно осуществляется путём установления геометрических соответствий между некоторыми особенностями в данных, полученных с помощью различных сенсоров. Поиск особых точек на изображении, как правило, не вызывает затруднений, так как для решения этой задачи существует большое количество методов. Более сложной задачей является поиск особых точек в трёхмерных лидарных данных и нахождение соответствий с точками на изображении.
В настоящее время существуют различные подходы к решению задачи калибровки лидара и камеры. В зависимости от типа используемого лидара существующие методы можно разделить на две группы: методы, рассчитанные на облако с (1) высокой и (2) низкой плотностью точек. В зависимости от процесса калибровки, методы калибровки лидара и камеры можно подразделить на две группы: (1) методы, использующие калибровочный щит, (2) методы, которые не используют калибровочный щит.
Одним из ранних методов калибровки лидара и камеры является метод, предложенный в работе [3]. Авторы предлагают осуществлять калибровку камеры и 2Б-лидара с помощью калибровочного щита с текстурой плоской шахматной доски. В работах [4] и [5] подход [3], используемый для 2Б-лидаров, был расширен для 3Б-лидаров. Оба метода требуют использования нескольких ориентаций калибровочного щита и предполагают участие оператора для выделения точек лазерного отражения, относящихся к калибровочному щиту. Особенность работы [4] заключается в том, что оценка начального приближения поворота и смещения сканеров друг относительно друга выполняется независимо. В работе [5] авторы предлагают использовать в качестве калибровочного щита любую ровную стену, закрепив на ней текстуру шахматной доски. В работе [6] описан метод калибровки четы-рёхлучевого лидара и камеры с использованием прямоугольного калибровочного щита с текстурой шахматной доски. На первом этапе находятся начальные приближения параметров калибровки, затем с помощью нелинейной оптимизации найденные параметры уточняются. В работе [7] предложен метод, который использует множество калибровочных щитов с текстурой шахматной доски, благодаря чему для калибровки достаточно одного изображения и соответствующего ему облака точек.
Кроме калибровочного щита с текстурой шахматной доски, используются и другие объекты. Так, в [8] авторы используют прямоугольные ящики с известными геометрическими параметрами. Подход основан на обнаружении плоских участков, соответствующих сторонам ящиков. В работе [9] предложен метод калибровки, где вместо калибровочного щита используется произвольный трёхгранник. В качестве такого трёхгранника авторы предлагают использовать угол любого здания. В работе [10] описан метод калибровки четырёхлучевого лидара и камеры с использованием кругового калибровочного щита. В работе [11] авторы предлагают использовать многоугольные плоские калибровочные щиты с известными геометрическими параметрами. Использование таких щитов позволяет рассчитать параметры калибровки по координатам угловых вершин, найденным по данным камеры и лидара. Авторы работы [12] развивают идеи, предложенные в [11], и используют трёхмерные соответствия вместо двумерных соответствий. Для этого на калибровочные щиты закрепляется специальный маркер, который позволяет по изображению и известным внутренним параметрам калибровки камеры вычислить расположение маркера в пространстве относительно камеры. Авторы показывают, что использование трёхмерных соответствий позволяет улучшить результаты калибровки лидара и камеры по сравнению с использованием 2Б- и 3Б-соответствий. В [13] калибровка осуществляется с помощью плоского калибровочного щита с несколькими круговыми отверстиями. Процесс калибровки основан на идее использования границ, предложенной в [14].
Существует ряд методов, которые позволяют осуществить калибровку без использования каких-либо калибровочных щитов. Так, в работах [15, 16] по облаку точек с помощью математической модели камеры создаётся изображение, интенсивность пикселей которого устанавливается с использованием данных о нормалях или интенсивности точек лазерного отражения. Полученное таким образом изображение и изображение с камеры используются для поиска наилучшего совпадения друг с другом. Похожий подход с использованием информации об интенсивности отражения лазерного луча предложен в [17]. В работе [18] предлагается алгоритм комплексирования данных со стереокамеры и лидара, который позволяет оценить параметры калибровки лидара и стереокамеры. Алгоритм использует оптимизацию методом роя частиц.
В данной работе описан метод, основанный на идее использования трёхмерных соответствий и прямоугольных калибровочных щитов, предложенной в [12]. Метод можно отнести к методам фотограмметрической калибровки. Он позволяет улучшить точность калибровки за счёт использования информации с двух камер стереопары. Серия виртуальных и натурных экспериментов демонстрирует преимущество данного подхода. Дополнительное преимущество подхода заключается в том, что он может применяться как для калибровки лидаров с низкой плотностью точек, так и для лидаров с высокой плотностью точек.
2. Описание метода калибровки
Для нахождения взаимного расположения камеры и лидара необходимо получить два набора трёхмерных координат угловых точек калибровочных щитов: один набор должен быть получен с помощью изображений, другой - по данным лидара. После получения двух наборов точек может быть решена задача нахождения матрицы преобразования между системами координат камеры и лидара.
Весь процесс калибровки состоит из следующих этапов:
1. Сбор данных. Поместить один или несколько калибровочных щитов в поле зрение камер и лидара. Получить набор изображений с камер и облаков точек с лидара.
2. Нахождение трёхмерных соответствий. Вычисление трёхмерных координат угловых точек калибровочного щита в системе координат камеры по изображению и вычисление соответствующих трёхмерных координат угловых точек щита в системе координат лидара по облаку точек.
3. Вычисление параметров калибровки лидара и сте-реокамеры по трёхмерным соответствиям.
Далее индексами В, Ь, С и С2 будем обозначать калибровочный щит, лидар и камеры соответственно. Все системы координат, рассматриваемые в работе, являются прямоугольными декартовыми системами координат. Системы координат, связанные с этими сенсорами, будем обозначать {В}, {Ь}, {С1}, {С2} соответственно (см. рис. 1).
Рис. 1. Схема систем координат сенсоров 2.1. Калибровочный щит
Для калибровки будем использовать калибровочный щит, который представляет собой плоский прямоугольник равномерной светлой цветовой текстуры с закреплёнными на нем АШсо-маркерами. АШсо-маркер [19] - это специально закодированный образ, который позволяет по изображению и известным внутренним параметрам камеры вычислить относительное расположение маркера и камеры. Калибровочные щиты с множеством контрастных текстур (например, текстурой шахматной доски) могут стать причиной неточностей в определении координат точек лазерного отражения и, как следствие, оказать негативное влияние на результат калибровки [11].
Для того, чтобы обеспечить наличие точек лазерного отражения на каждой из четырёх границ калибровочного щита, следует расположить щит так, чтобы его границы составляли с линиями лазерного сканирования угол, близкий к 45°. Выбор размера калибровочного щита зависит от плотности сканирования ли-дара и дальности расположения калибровочного щита. Очевидно, чем меньше плотность сканирования лидара и больше расстояние между щитом и лидаром, тем большего размера щит необходимо использовать, чтобы обеспечить достаточное количество точек отражения на калибровочном щите.
Будем полагать, что все АгЦсо-маркеры имеют квадратную форму. Пусть длина стороны АШсо-маркеров равна е (см. рис. 2). Для простоты изложения будем полагать, что размеры сторон калибровочного щита равны и 8Г. Пусть начало системы координат {В} совпадает с верхним углом калибровочного щита, а оси абсцисс и ординат коллинеарны границам калибровочного щита. Каждый из АШсо-маркеров однозначно задаёт некоторую систему координат (х,у). Будем полагать, что АШсо-маркеры закреплены так, что ориентация их систем координат относительно системы координат {В} совпадает, а положение известно (см. рис. 2).
2.2. Нахождение координат угловых точек щита по изображениям
Калибровочный щит устанавливается перед жёстко закрепленными камерами С1, С2 и лидаром Ь (см. рис. 1). Существует множество методов, позволяющих получить параметры внутренней и внешней ка-
либровки камер [20, 21]. Будем полагать, что для камер С1, С2 параметры калибровки вычислены с помощью [22].
ч2>
Рис. 2. Схема калибровочного щита Точные координаты угловых точек ат АШсо-маркеров (см. рис. 2) в системе координат {В} легко могут быть измерены линейкой, поэтому будем считать их известными: Ват = (ах, ау, аг)Т, т = 1, ..., М. В случае использования четырёх АШсо-маркеров М = 16.
Под матрицей преобразования ТеЖ(3) будем понимать матрицу, составленную из матрицы поворота Яе£0(3) и вектора смещения 1еК3:
(
Т =
где
Я =
Г11 Г12 Г13
Г21 Г22 Г23
Г31 Г32 Г33
0 0 0
Г11 Г12 13
Г21 Г22 Г23
г
\
(1)
t = ( Л Л )Т.
(2)
С помощью алгоритма детекции АШсо-маркеров на изображениях могут быть найдены координаты проекций точек ат [19]. По найденным проекциям точек ат на изображение камеры С1 и известным координатам Ват с помощью РпР алгоритма [23] легко может быть вычислена матрица преобразования ТВС1 (см. рис. 1) из системы координат {В} щита в систему координат {С1} камеры. Аналогичным образом для камеры С2 может быть вычислена матрица преобразования ТС2.
Так как известны параметры внешней калибровки камер, то известна матрица преобразования ТСС21 из системы координат {С2} в систему координат {С1}. Очевидно, что ТВС1 = ТС221 ТВС2. Однако на практике последнее равенство не всегда будет выполняться. Причиной несовпадения преобразований могут быть различные ошибки, возникающие, например, в процессе
детекции Агисо-маркеров или на этапе взаимной калибровки камер.
Уточненной матрицей преобразования из системы координат {В} в систему координат {С!} будем называть матрицу ТВС1 :
Тв = а^тш Т*СВ' В я,
т'С
- ТС ТС
(3)
где ||||2 - евклидова норма. Таким образом, матрица ГВС1 равна матрице Т"В , при которой норма разности принимает наименьшее значение. Задача минимизации (3) может быть решена с помощью алгоритма Нелдера-Мида [24] с использованием ГВС1 в качестве начального приближения решения.
Рассмотрим координаты угловых точек уп, п = 1, 2, ..., N калибровочного щита в системе координат {В} (см. рис. 1):
В V! =(0,0,0)Т ,
В V2 =(5, ,0,0)Т ,
ВVз =(5,,,0)Т ,
ВV4 =(0,5,,0) .
В случае прямоугольного калибровочного щита N = 4.
Когда матрица ТВС1 найдена, легко получить координаты С1 Vп точек уп в системе координат камеры {С1}:
(4)
1V п 1
= ТВ
(5)
Алгоритм поиска координат угловых точек калибровочного щита состоит из следующих этапов:
1. Осуществляется калибровка камер. В результате калибровки становятся известны внутренние параметры камер и матрица ТСС21 .
2. По найденным на изображении угловым точкам ат АгИсо-маркеров и известным координатам Вят этих же точек в системе координат {В} калибровочного щита с помощью РпР алгоритма вычисляется матрица преобразования ТВС1 из системы координат {В} в систему координат камеры {С1}.
3. По формуле (3) вычисляется уточнённая матрица ТВС1 преобразования из системы координат {В} в систему координат {С1}. В качестве начального приближения используется матрица ТВС1 .
4. С помощью (5) вычисляются координаты С1 vn точек калибровочного щита в системе координат камеры {С1}.
Таким образом, трёхмерные координаты С1 Vп угловых точек калибровочного щита в системе координат камеры {С1} могут быть найдены с использованием Агисо-маркеров и уточнены с помощью данных со второй камеры.
2.3. Нахождение координат угловых точек щита по данным лидара Найти координаты ЬV,, угловых точек уп в системе координат лидара {Ь} можно с помощью полуавтома-
тического подхода. Данный подход потребует участия оператора на начальном этапе. Ввиду того, что данные, получаемые с лидара, обладают небольшой плотностью, автоматическое выделение калибровочного щита не является тривиальной задачей, так как зависит от многих факторов, в том числе от количества лазерных точек на калибровочном щите и окружающей обстановки. Участие оператора позволяет стабильно решать эту задачу вне зависимости от окружающей обстановки.
Алгоритм нахождения угловых точек щита по данным лидара можно записать следующим образом:
1. Оператором выделяется область, содержащая облако точек калибровочного щита.
2. В выделенном облаке точек щита определяются линии лазерного сканирования ркл рк,щ , к = 1, 2, ..., К (см. рис. 3), где К - количество линий, пк - количество точек в к-й линии сканирования. Современные многолучевые лидары, как правило, предоставляют информацию о номере линии лазерного сканирования для каждой точки, в противном случае линии лазерного сканирования могут быть определены оператором.
3. С помощью сравнения координат осуществляется поиск крайних точек в каждой линии сканирования, то есть точек рк1 и рк,ч , к = 1, 2, ..., К.
4. Оператором выделяются регионы 5п, содержащие крайние точки рк,1 и рк,пк калибровочного щита (см. рис. 3).
5. В каждой из выделенных областей по крайним точкам рк1 и ркп с помощью алгоритма КАЫБАС [25] осуществляется поиск параметров прямых, аппроксимирующих границы калибровочного щита.
6. В качестве трёхмерных координат Lvn угловых точек уп (см. рис. 1) в системе координат лидара {Ь} берутся трёхмерные координаты точек пересечения смежных прямых, аппроксимирующих границы калибровочного щита. Из-за погрешностей измерений прямые могут не пересекаться, но проходить очень близко друг к другу. В таком случае вместо точки пересечения используется середина перпендикуляра, соединяющего две смежные прямые. Таким образом, трёхмерные координаты ЬVп могут
быть найдены как пересечение смежных прямых, аппроксимирующих границы щита.
2.4. Взаимная калибровка сенсоров Пусть имеются калибровочные щиты ВЛ, 1 = 1, 2, ..., Б, где Б - количество щитов; С1 vBd , Ь vBd -координаты угловых точек калибровочного щита ВЛ в системе координат камеры {С!} и лидара {Ь} соответственно. Будем полагать, что нахождение угловых точек осуществляется так, что координаты С1 vBd , Ь VВ"1 соответствуют одной и той же точке уп на этом калибровочном щите. Невыполнение данного условия приведёт к неправильной калибровке.
Пусть СР - облако угловых точек уп калибровочных щитов в системе координат камеры {С1}, ЬР -
облако соответствующих точек, полученное с помощью данных лидара L:
С, р = { , : С = С, vBd},
(6)
LP = {Lq,- : Lq,- = LvBnd },
где , = 1, 2, ..., N-D, d=L iINJ, n = , - N-d; оператор L • J -целая часть числа.
Pl'l o-/--\:-o Pl,m
V" > / \ 4v^
p{,2 O--/'...............\-0 p2,n;
P/,3 о.................................X-O P\n,
Pi4jj 'v\.'.............................
pbl)j ..............■ ■/■■ °№/)ЛЧ
Л / /S2
НГч/'К'
Рис. 3. Схема облака точек калибровочного щита
Целью калибровки сенсоров является нахождение матрицы преобразования TCl (см. рис. 1). В данном случае, когда для каждой точки в системе координат камеры {С,} известна соответствующая ей точка в системе координат лидара {L}, матрица TCl может быть найдена как решение следующей задачи:
TC1 = arg min X||T f L q,- - C,q,| | (7)
T С i=1
Для решения этой задачи может быть использован алгоритм Нелдера-Мида [24]. В качестве начального приближения решения можно взять матрицу преобразования, полученную с помощью алгоритма Кабша [26, 27].
3. Эксперименты
3.1. Сенсоры и оборудование
В ходе исследований была проведена серия виртуальных и натурных экспериментов. В виртуальных экспериментах моделировался 16-лучевой лидар и стереопара. Виртуальные эксперименты проводились с использованием фреймворка для симуляции роботизированных систем V-REP [28]. В реальных экспериментах использовался 32-лучевой лидар Velodyne HDL-32E и две камеры Prosilica GT (стереопара). Камеры имеют ограниченный угол обзора, в то время как лидар имеет угол обзора 360° и генерирует до 700 тысяч точек лазерного отражения в секунду. Точность измерений лидара Velodyne HDL-32E составляет ± 2 сантиметра.
В статье рассматриваются многолучевые лидары, в частности, 16-лучевой и 32-лучевой. Количество лучей, как правило, соответствует количеству излучателей. Каждый излучатель направлен под определен-
ным углом к горизонту. За счёт вращения (с заданной частотой) отражающей призмы внутри лидара каждый луч делает полный оборот вокруг вертикальной оси лидара. Таким образом, формируется трёхмерная картина окружающего пространства, которая представляется в виде множества точек лазерного отражения (облака точек) (см. рис. 4). При моделировании лидара в среде УЯЕР используется аналогичный принцип, только точки отражения получаются в результате пересечения виртуальных лучей с объектами трехмерной виртуальной сцены.
Исходные данные, необходимые для калибровки лидара и камеры:
1. Изображения сцены, полученные с помощью камер (см. рис. 5).
2. Облака точек, полученные с помощью лидара (см. рис. 4).
3. Параметры внутренней и внешней калибровки камер стереопары.
Рис. 4. Облако точек, полученное с помощью моделирования лидара L
_
Рис. 5. Изображение, полученное с помощью моделирования камеры С1
Рис. 6. Сцена калибровки в симуляторе V-REP
3.2. Оценка точности калибровки
Для получения экспериментальной оценки погрешностей калибровки была проведена серия виртуальных экспериментов. На рис. 6 изображена виртуальная сцена калибровки в симуляторе УЯЕР. Симу-лятор позволяет смоделировать работу камер и лида-ра, а также получить точные данные о взаимном расположении сенсоров. При проведении виртуальных экспериментов моделировалась стереокамера, оптические оси камер которой параллельны, радиус сте-реовосприятия равен 148,4 метра, расстояние между оптическими центрами камер - 0,064 метра. Полученные таким образом данные будем использовать для оценки точности метода калибровки.
Пусть Я, * - матрица поворота и вектор сдвига, полученные в результате калибровки, а Я^ - точная матрица поворота и вектор сдвига сенсоров друг относительно друга. Благодаря возможности задавать все параметры (в том числе искомые параметры внешней калибровки сенсоров) появляется возможность сравнивать полученные параметры внешней калибровки сенсоров с параметрами, заданными в модели, которые являются истинными (эталонными). Рассмотрим величины:
е = ||* - *|2, (8)
е- =1Ы |2, (9)
где ге - векторное представление матрицы Я -1 Яg такое, что поворот на угол, численно равный || ге||2, вокруг единичного вектора ге / || ге ||2 эквивалентен повороту с помощью матрицы ЯчЯг. Будем называть ег ошибкой поворота, а е1 - ошибкой смещения. Величины ошибок е1 , ег характеризуют то, как сильно отличаются полученные в результате калибровки параметры от истинных (эталонных) параметров калибровки.
Виртуальные эксперименты проводились для различных взаимных расположений сенсоров (лидара и стереопары), с использованием двух калибровочных щитов с четырьмя Агисо-маркерами (см. рис. 5). Для лучшего приближения модельных данных к реальным в моделируемые данные лидара добавлялся Гауссов шум N(0, ст2) с различными значениями стандартного отклонения ст. Кадром сцены будем называть облако точек сцены и изображения с камер, которые получены с сенсоров синхронно в один и тот же момент времени. Под положением калибровочных щитов будем понимать расположение и ориентацию калибровочных щитов в пространстве относительно сенсоров.
Далее результаты экспериментов будут представлены в виде диаграмм размаха («ящиков с усами»), которые компактно изображают одномерное распределение вероятностей. Для построения каждой из диаграмм размаха использовалось 25 различных экспериментов. Такой вид диаграмм в удобной форме отображает медиану и среднее, нижний и верхний квартили, минимальное и максимальное значение выборки и выбросы. Границами ящика служат первый и
третий квартили (25-й и 75-й процентили соответственно). Таким образом, в ящике содержится половина всех наблюдений. Длинная горизонтальная линия в середине ящика соответствует медиане (50-й процен-тиль), короткая линия - среднему значению. Концы «усов» - края статистически значимой выборки. Максимальная длина нижнего «уса» определяется как разность первого квартиля и полутора межквартиль-ных расстояний, верхнего «уса» - как сумма третьего квартиля и полутора межквартильных расстояний. Выбросы - результаты измерений, выделяющиеся из общей выборки. На диаграмме выбросы изображаются в виде отдельных точек.
На рис. 7 приведены диаграммы размаха, которые отображают зависимость величин ошибок калибровки et, er от количества кадров, используемых для калибровки, при неизменном положении щитов. Эксперименты проводились для одного и того же положения калибровочных щитов с добавлением шума ст = 0,005. Из полученных диаграмм видно, что увеличение количества используемых кадров уменьшает величину разброса ошибок калибровки и улучшает точность калибровки. Это происходит в силу статистических причин, так как влияние погрешностей в измерениях сенсоров уменьшается при увеличении количества измерений статичной сцены. Ошибка поворота еп рад
0,012 0,010 0,008
0,006
0,004
а)
Ошибка смещения еи м 0,045
0,040
0,035
0,030
0,025
0,020
0,015
0,010
б)
Рис. 7. Влияние количества кадров сцены на точность калибровки
Результаты экспериментов, изображенные на рис. 8, позволяют сделать вывод о том, что увеличение количества используемых положений калибровочных щитов также уменьшает величину разброса
т
т
25 49
Количество кадров
Т
25 49
Количество кадров
ошибок калибровки. К тому же очевидно, что увеличение количества рассматриваемых положений калибровочных щитов равносильно увеличению количества калибровочных щитов. В каждом из экспериментов использовалось 26 кадров сцены для каждого из положений щитов, а данные лидара были зашум-лены с ст = 0,005.
Ошибка поворота ег, рад
0,012
0,010
0,008
0,006
0,004
0,002
0
о
т
L
г Г
а)
3 5
Количество положений
Ошибка смещения et, м 0,035
0,030 0,025 0,020 0,015 0,010 0,005 0
X
X
X
1 3 5
б) Количество положений
Рис. 8. Влияние количества различных положений калибровочных щитов на точность калибровки
Результаты экспериментов по использованию калибровочных щитов с различным количеством АгИсо-маркеров изображены на рис. 9. В каждом эксперименте использовалось 5 различных положений калибровочных щитов и 26 кадров для каждого из положений. Анализируя результаты экспериментов, можно сделать вывод, что увеличение количества Агисо-маркеров на калибровочном щите уменьшает величину разброса ошибок калибровки и повышает точность калибровки.
Очевидно, что погрешность в измерениях лидара будет оказывать влияние на результаты калибровки. Кроме того, различное освещение калибровочных щитов может оказать влияние на детекцию Агисо-маркеров и, как следствие, на точность калибровки. На рис. 10 изображены результаты экспериментов для различных уровней зашумления лидарных данных (ст = 0,001, ст = 0,005, ст = 0,009). В каждом эксперименте использовалось по три различных положения калибровочных щитов, для каждого положения рассматривалось 26 кадров сцены. Эксперименты показывают, что величина ошибок калибровки увеличи-
вается с увеличением величины зашумления. Также можно видеть, что предложенный метод калибровки позволяет осуществлять калибровку лидара и камеры с точностью, сравнимой с погрешностью сенсоров. Повысить точность данных с реальных сенсоров можно с помощью более качественной калибровки внутренних параметров этих сенсоров. Повышение точности данных позволит улучшить результаты внешней калибровки сенсоров.
Ошибка поворота ег,рад
0,06
0,05 0,04 0,03 0,02 0,01
0
а)
2 3 4
Количество ArUco маркеров
2 3
б) Количество АгС/со маркеров
Рис. 9. Влияние количества используемых Агисо-маркеров на точность калибровки
В результате анализа проведенных экспериментов сформулируем методику калибровки взаимного расположения лидара и стереокамеры с помощью одного калибровочного щита:
4.
5.
6.
Изготовить калибровочный щит (см. п 2.1). Закрепить лидар и стереокамеру неподвижно относительно друг друга.
Поместить в поле зрения сенсоров калибровочный щит, зафиксировав его в некотором статичном положении.
Записать не менее 50 кадров сцены, не изменяя положения сенсоров в процессе записи. Изменить положение калибровочного щита и повторить шаг 4. Повторить данный шаг не менее 5 раз. В результате получим кадры сцены при различных положениях щита.
Выполнить калибровку взаимного расположения сенсоров (см. п. 2.2-2.4), рассматривая каждое новое положение калибровочного щита как добавление еще одного щита на сцену.
Ошибка поворота ег, рад 0,005
0,004 0,003 0,002 0,001 О
1 ф ь
т
а)
0,001
Ошибка смещения еь м 0,0175
0,005 0,009
Стандартное отклонение ст
0,0150 0,0125 0,0100 0,0075 0,0050 0,0025
~г
_1_
8 Т Чг1
1=1
б)
0,001
0,005 0,009
Стандартное отклонение ст
Рис. 10. Влияние шума на точность калибровки
Можно выделить следующие особенности:
1. В силу статистических причин точность калибровки повышается в случае увеличения количества рассматриваемых кадров сцены для каждого из положений калибровочного щита.
2. Увеличение количества положений калибровочного щита позволяет уменьшить величину разброса ошибок калибровки. Увеличение количества рассматриваемых положений калибровочного щита равносильно увеличению количества калибровочных щитов.
3. Точность калибровки повышается в случае увеличения количества Агисо-маркеров на калибровочном щите.
4. Максимальная точность калибровки зависит от точности самих сенсоров и может быть повышена в результате более качественной калибровки внутренних параметров сенсоров.
5. Контрастная неравномерная цветовая текстура может приводить к увеличению неточностей в определении координат точек лазерного отражения [11]. По этой причине АгИсо-маркеры желательно располагать на некотором расстоянии от границ калибровочного щита. Для уменьшения ошибок лидарных измерений и для упрощения обнаружения АгИсо-маркеров на изображении рекомендуется использовать калибровочный щит яркого однородного цвета. Кроме того, калибровочный щит должен иметь размеры, обеспечивающие попадание достаточного количества линий сканирования лидара на плоскость щита.
3.3. Натурные эксперименты Помимо виртуальных экспериментов, была проведена проверка предложенного метода калибровки на реальных данных (см. рис. 11). При проведении натурных экспериментов использовалась стереокамера, оптические оси камер которой параллельны, радиус сте-реовосприятия равен 1093,5 метра, расстояние между оптическими центрами камер - 0,502 метра. Эксперименты показывают, что в случае калибровочных щитов с одним АгИсо-маркером использование информации с двух камер (стереопары) позволяет повысить точность калибровки по сравнению со случаем, когда используется одна камера, как в работе [12] (сравните рис. 12а и 12б). Можно видеть, что результаты калибровки с помощью предложенного метода позволяют правильно совместить облако точек лидара и облако точек, полученное с помощью стереопары. Облако точек стереокамеры было получено на основе значений диспаратности [29, с. 452]. Для вычисления диспарат-ности использовался метод, описанный в [30]. Повысить точность калибровки с использованием одной камеры можно с помощью увеличения числа АгИсо-маркеров на калибровочном щите.
Рис. 11. Изображение с левой камеры при проведении натурных экспериментов
Рис. 12. Совмещение облака точек лидара и облака точек стереопары по данным калибровки, полученным с использованием одной (а) и двух (б) камер
Заключение
В работе предложен метод калибровки, который позволяет решать задачу определения взаимного расположения лидара и стереопары. Предложенный метод не налагает никаких ограничений на место, в котором должна проводиться калибровка. Для калибровки достаточно одного калибровочного щита. Для исследования предлагаемого метода проведена серия
виртуальных и натурных экспериментов. Результаты экспериментов показывают, что при достаточном количестве данных метод обладает точностью, сравнимой с погрешностью сенсоров.
Благодарности Автор выражает благодарность научному сотруднику АО НКБ ВС Д.С. Толкачеву за помощь в проведении экспериментов. Автор также благодарит неизвестного рецензента за ряд замечаний, способствовавших улучшению работы.
Литература
1. Гошин, Е.В. Реконструкция 3Б-сцен по разноракурсным изображениям при неизвестных внешних параметрах съёмки / Е.В. Гошин, В.А. Фурсов // Компьютерная оптика.
- 2015. - Т. 39, № 5. - С. 770-776. - DOI: 10.18287/01342452-2015-39-5-770-775.
2. Минаев, Е.Ю. Высокоточная реконструкция пространственного положения пассивного цветового маркера по видеопоследовательности / Е.Ю. Минаев,
A.В. Никоноров // Компьютерная оптика. - 2012. - Т. 36, № 4. - C. 611-616.
3. Zhang, Q. Extrinsic calibration of a camera and laser range finder (improves camera calibration) / Q. Zhang, R. Pless // 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). - 2004. - Vol. 3. - P. 2301-2306.
- DOI: 10.1109/IR0S.2004.1389752.
4. Unnikrishnan, R. Fast extrinsic calibration of a laser rangefinder to a camera / R. Unnikrishnan, M. Hebert. -Technical Report CMU-RI-TR-05-09. - Pittsburgh, PA: Robotics Institute, 2005.
5. Pandey, G. Extrinsic calibration of a 3D laser scanner and an omnidirectional camera / G. Pandey, J. McBride, S. Savarese, R. Eustice // IFAC Proceedings Volumes. - 2010. - Vol. 43, Issue 16. - P. 336-341. - DOI: 10.3182/20100906-3-IT-2019.00059.
6. Huang, L. A novel multi-planar LIDAR and computer vision calibration procedure using 2D patterns for automated navigation / L. Huang, M. Barth // 2009 IEEE Intelligent Vehicles Symposium. - 2009. - P. 117-122. - DOI: 10.1109/IVS.2009.5164263.
7. Geiger, A. Automatic camera and range sensor calibration using a single shot / A. Geiger, F. Moosmann, O. Car,
B. Schuster // 2012 IEEE International Conference on Robotics and Automation. - 2012. - P. 3936-3943. - DOI: 10.1109/ICRA.2012.6224570.
8. Pusztai, Z. Accurate calibration of LiDAR-camera systems using ordinary boxes / Z. Pusztai, L. Hajder // 2017 IEEE International Conference on Computer Vision Workshops (ICCVW).
- 2017. - P. 394-402. - DOI: 10.1109/ICCVW.2017.53.
9. Gong, X. Extrinsic calibration of a 3D LIDAR and a camera using a trihedron / X. Gong, Y. Lin, J. Liu // Optics and Lasers in Engineering. - 2013. - Vol. 51, Issue 4. - P. 394401. - DOI: 10.1016/j.optlaseng.2012.11.015.
10. Fremont, V. Circular targets for 3d alignment of video and lidar sensors / V. Fremont, S.A. Rodriguez F, P. Bonnifait // Advanced Robotics. - 2012. - Vol. 26, Issue 18. - P. 20872113. - DOI: 10.1080/01691864.2012.703235.
11. 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 // Journal of Sensors. - 2014. - Vol. 14, Issue 3. - P. 5333-5353. - DOI: 10.3390/s140305333.
12. Dhall, A. LiDAR-Camera Calibration using 3D-3D Point correspondences. [Электронный ресурс] / A. Dhall, K. Chelani, V. Radhakrishnan, K.M. Krishna // arXiv preprint arXiv: 1705.09785. - 2017. - URL: arxiv.org/pdl71705.09785 .pdf (дата обращения 15.10.2018).
13. Vel'as, M. Calibration of rgb camera with velodyne lidar [Электронный ресурс] / M. Velas, M. Spanél, Z. Materna, A. Herout. - 2014. - URL:
pdfs.semanticscholar.org/ed15/5d1a146e0cba6be98fd71284 61439f88732a.pdf (дата обращения 15.10.2018).
14. Levinson, J. Automatic online calibration of cameras and lasers / J. Levinson, S. Thrun // Proceedings of Robotics: Science and Systems. - 2013. - DOI: 10.15607/RSS.2013.IX.029.
15. Taylor Z Automatic calibration of lidar and camera images using normalized mutual information / Z. Taylor, J. Nieto // 2013 IEEE International Conference on Robotics and Automation (ICRA). - 2013. - DOI: 10.1109/ICVES.2015.7396923.
16. Taylor, Z. Automatic calibration of multi-modal sensor systems using a gradient orientation measure / Z. Taylor, J. Nieto, D. Johnson // 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). - 2013.
- P. 1293-1300. - DOI: 10.1109/IR0S.2013.6696516.
17. Pandey, G. Automatic extrinsic calibration of vision and lidar by maximizing mutual information / G. Pandey, J.R. McBride, S. Savarese, R.M. Eustice // Journal of Field Robotics. - 2015.
- Vol. 32, Issue 5. - P. 696-722. - DOI: 10.1002/rob.21542.
18. John, V. Automatic calibration and registration of lidar and stereo camera without calibration objects / V. John, Q. Long, Z. Liu, S. Mita // 2015 IEEE International Conference on Vehicular Electronics and Safety (ICVES). - 2015.
- P. 231-237. - DOI: 10.1109/ICVES.2015.7396923.
19. Garrido-Jurado, S. Automatic generation and detection of highly reliable fiducial markers under occlusion / S. Garrido-Jurado, R. Muñoz-Salinas, F.J. Madrid-Cuevas, M.J. Marín-Jiménez // Pattern Recognition. - 2014. - Vol. 47, Issue 6. -P. 2280-2292. - DOI: 10.1016/j.patcog.2014.01.005.
20. Кудинов, И.А. Реализация алгоритма определения пространственных координат и угловой ориентации объекта по реперным точкам, использующего информацию от одной камеры / И.А. Кудинов, О.В. Павлов, И.С. Холопов // Компьютерная оптика. -2015. - Т. 39, № 3. - С. 413-419. - DOI: 10.18287/0134-24522015-39-3-413-419.
21. Гошин, Е.В. Решение задачи автокалибровки камеры с использованием метода согласованной идентификации / Е.В. Гошин, В.А. Фурсов // Компьютерная оптика. -2012. - Т. 36, № 4 - С. 605-610.
22. Zhang, Z. A flexible new technique for camera calibration // IEEE Transactions on Pattern Analysis and Machine Intelligence. - 2000. - Vol. 22, Issue 11 - P. 1330-1334. -DOI: 10.1109/34.888718.
23. Lepetit, V. EPnP: An accurate O(n) solution to the PnP problem / V. Lepetit, F. Moreno-Noguer, P. Fua // International Journal of Computer Vision. - 2009. - Vol. 81, Issue 2. - P. 155. - DOI: 10.1007/s11263-008-0152-6.
24. Gao, F. Implementing the Nelder-Mead simplex algorithm with adaptive parameters / F. Gao, L. Han // Computational Optimization and Applications. - 2012. - Vol. 51, Issue 1. -P. 259-277. - DOI: 10.1007/s10589-010-9329-3.
25. 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, Issue 6. - P. 381395. - DOI: 10.1145/358669.358692.
26. Kabsch, W. A discussion of the solution for the best rotation to relate two sets of vectors // Acta Crystallographica. -1978. - Vol. 34, Issue 5. - P. 827-828. - DOI: 10.1107/S0567739478001680.
27. Sorkine-Hornung, O. Least-squares rigid motion using svd [Электронный ресурс] / O. Sorkine-Hornung, M. Rabinovich. - 2017. - URL: igl.ethz.ch/projects/ARAP/svd_rot.pdf (дата обращения 15.10.2018).
28. Rohmer, E. V-REP: A versatile and scalable robot simulation framework / E. Rohmer, S.P.N. Singh, M. Freese // 2013 IEEE/RSJ International Conference on Intelligent Ro-
bots and Systems (IROS). - 2013. - P. 1321-1326. - DOI: 10.1109/IROS.2013.6696520.
29. Bradski, G. Learning OpenCV: Computer vision with the OpenCV library / G. Bradski, K. Adrian. - O'Reilly Media, Inc., 2008.
30. Hirschmuller, H Stereo processing by semiglobal matching and mutual information / K Hirschmuller // IEEE Transactions on Pattern Analysis and Machine Intelligence. - 2008. - Vol. 30, Issue 2. - P. 328-341. - DOI: 10.1109/TPAMI.2007.1166.
Сведения об авторе
Абраменко Александр Андреевич, 1992 года рождения, в 2015 году окончил Южный федеральный университет по специальности «Прикладная математика и информатика», является аспирантом Южного федерального университета, работает младшим научным сотрудником в АО НКБ ВС. Область научных интересов: анализ данных, машинное зрение, робототехнические системы, математические проблемы распознавания образов и классификации. E-mail: [email protected] .
ГРНТИ: 28.23.15 Поступила в редакцию 12 ноября 2018 г. Окончательный вариант
1 декабря 2018 г.
Extrinsic calibration of stereo camera and three-dimensional laser scanner
AA. Abramenko1
'Joint Stock Company "Scientific Design Bureau of Computing Systems" (JSC SDB CS), Taganrog, Russia
Abstract
The paper describes an approach that allows solving the problem of extrinsic calibration of a multi-beam lidar and a stereo camera. The approach does not impose any restrictions on the place in which calibration should be performed. Calibration is performed using a calibration board, which is a flat rectangle with special markers. Three-dimensional correspondences are used for calibration. First, a search for the three-dimensional coordinates of the corner points of the calibration board in the coordinate systems of the stereo pair cameras as well as in the coordinate system of the lidar is made. Next, using the optimization methods, calibration parameters are calculated. The results of a series of virtual and real experiments show that the algorithm allows the calibration to be performed with an accuracy comparable to that of sensors. The proposed approach allows one to improve the calibration accuracy due to the simultaneous use of information from two cameras of the stereo pair and is suitable for lidars with both the low and high point density.
Keywords: stereo camera, lidar, extrinsic calibration, data fusion.
Citation: 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-2-220-230.
Acknowledgements: The author wishes to thank D.S. Tolkachev, a research assistant of JSC SDB CS for his help in conducting the experiments.
References
[1] Goshin YV, Fursov VA. 3D scene reconstruction from stereo images with unknown extrinsic parameters [In Russian]. Computer Optics 2015; 39(5): 770-776. DOI: 10.18287/0134-2452-2015-39-5-770-776.
[2] Minaev EY, Nikonorov AV. High accuracy pose reconstruction of passive colored marker [In Russian]. Computer Optics 2012; 36(4): 611-616.
[3] Zhang Q, Pless R. Extrinsic calibration of a camera and laser range finder (improves camera calibration). 2004 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) 2004; 3: 2301-2306. DOI: 10.1109/IROS.2004.1389752.
[4] Unnikrishnan R, Martial H. Fast extrinsic calibration of a laser rangefinder to a camera. Tech Rep CMU-RI-TR-05-09. Pittsburgh, PA: Robotics Institute, 2005.
[5] Pandey G, McBride J, Savarese S, Eustice R. Extrinsic calibration of a 3D laser scanner and an omnidirectional
camera. IFAC Proceedings Volumes 2010; 43(16): 336341. DOI: 10.3182/20100906-3-IT-2019.00059.
[6] Huang L., Barth M. A novel multi-planar LIDAR and computer vision calibration procedure using 2D patterns for automated navigation. 2009 IEEE Intelligent Vehicles Symposium 2009: 117-122. DOI: 10.1109/IVS.2009.5164263.
[7] Geiger A, Moosmann F, Car O, Schuster B. Automatic camera and range sensor calibration using a single shot. 2012 IEEE International Conference on Robotics and Automation 2012: 3936-3943. DOI: 10.1109/ICRA.2012.6224570.
[8] Pusztai Z, Hajder L. Accurate calibration of LiDAR-camera systems using ordinary boxes. 2017 IEEE International Conference on Computer Vision Workshops (ICCVW) 2017: 394-402. DOI: 10.1109/ICCVW.2017.53.
[9] Gong X, Lin Y, Liu J. Extrinsic calibration of a 3D LI-DAR and a camera using a trihedron. Optics and Lasers in Engineering. 2013; 51(4): 394-401. DOI: 10.1016/j.optlaseng.2012.11.015.
[10] Fremont V, Rodriguez FSA, Bonnifait P. Circular targets for 3d alignment of video and lidar sensors. Advanced Robotics 2012; 26(18): 2087-2113. DOI: 10.1080I01691864.2012.703235.
[11] 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. J Sensors 2014; 14(3): 5333-5353. DOI: 10.3390Is140305333.
[12] Dhall A., Chelani K., Radhakrishnan V., Krishna K.M. LiDAR-Camera Calibration using 3D-3D Point correspondences. arXiv preprint arXiv:1705.09785 2017. Source: <https:IIarxiv.orgIpdfI1705.09785.pdf).
[13] Veras M, Spanèl M, Materna Z, Herout A. Calibration of rgb camera with velodyne lidar. 2014. Source: <https:IIpdfs.semanticscholar.orgIed15I5d1a146e0cba6be98 fd7128461439f88732a.pdf).
[14] Levinson J, Thrun S. Automatic online calibration of cameras and lasers. Proceedings of Robotics: Science and Systems 2013. DOI: 10.15607IRSS.2013.IX.029.
[15] Taylor Z, Nieto J. Automatic calibration of lidar and camera images using normalized mutual information. 2013 IEEE International Conference on Robotics and Automation (ICRA) 2013. DOI: 10.1109HCVES.2015.7396923.
[16] Taylor Z, Nieto J, Johnson D. Automatic calibration of multi-modal sensor systems using a gradient orientation measure. IEEEIRSJ International Conference on Intelligent Robots and Systems 2013: 1293-1300. DOI: 10.1109IlROS.2013.6696516.
[17] Pandey G, McBride JR, Savarese S, Eustice RM. Automatic extrinsic calibration of vision and lidar by maximizing mutual information. Journal of Field Robotics. 2015; 32(5): 696-722. DOI: 10.1002Irob.21542.
[18] John V, Long Q, Liu Z, Mita S. Automatic calibration and registration of lidar and stereo camera without calibration objects. 2015 IEEE International Conference on Vehicular Electronics and Safety (ICVES) 2015: 231-237. DOI: 10.1109HCVES.2015.7396923.
[19] 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. Pattern Recognition 2014; 47(6): 2280-2292. DOI: 10.1016Ij.patcog.2014.01.005.
[20] Kudinov IA, Pavlov OV, Kholopov IS. Implementation of an algorithm for determining the spatial coordinates and the angular orientation of an object based on reference marks, using information from a single camera [In Russian]. Computer Optics 2015; 39(3): 413-419. DOI: 10.18287/0134-2452-2015-39-3-413-419.
[21] Goshin YV, Fursov VA. Solving a camera autocalibration problem with a conformed identification method [In Russian]. Computer Optics 2012; 36(4): 605-610.
[22] Zhang Z. A flexible new technique for camera calibration. IEEE Transactions on Pattern Analysis and Machine Intelligence 2000; 22(11): 1330-1334. DOI: 10.1109/34.888718.
[23] Lepetit V, Moreno-Noguer F, Fua P. EPnP: An accurate O(n) solution to the PnP problem. International Journal of Computer Vision 2009; 81(2): 155. DOI: 10.1007/s11263-008-0152-6.
[24] Gao F, Han L. Implementing the Nelder-Mead simplex algorithm with adaptive parameters. Computational Optimization and Applications 2012; 51(1): 259-277. DOI: 10.1007/s10589-010-9329-3.
[25] 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(6): 381-395. DOI: 10.1145/358669.358692.
[26] Kabsch W. A discussion of the solution for the best rotation to relate two sets of vectors. Acta Crystallographica 1978; 34(5): 827-828. DOI: 10.1107/S0567739478001680.
[27] Sorkine-Hornung O, Rabinovich M. Least-squares rigid motion using svd. 2017. Sourse: (https://igl.ethz.ch/projects/ARAP/svd_rot.pdf).
[28] Rohmer E, Singh SPN, Freese M. V-REP: A versatile and scalable robot simulation framework. 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems 2013: 1321-1326. DOI: 10.1109/IROS.2013.6696520.
[29] Bradski G, Adrian K. Learning OpenCV: Computer vision with the OpenCV library. O'Reilly Media, Inc; 2008.
[30] Hirschmuller H. Stereo processing by semiglobal matching and mutual information // IEEE Transactions on Pattern Analysis and Machine Intelligence 2008; 30(2): 328-341. DOI: 10.1109/TPAMI.2007.1166.
Author's information
Alexander Andreevich Abramenko (b. 1992) graduated from Southern Federal University in 2015 with a degree in Applied Mathematics and Computer Science, is a graduate student at Southern Federal University, and works as a junior research assistant at JSC SDB CS. Research interests: data analysis, machine vision, robotic systems, mathematical problems of pattern recognition and classification. E-mail: [email protected] .
Received November 12, 201S. The final version - December 1, 201S.