锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

绝了!多个激光雷达和相机的快速且鲁棒的外参标定方法(代码开源)

时间:2023-05-27 18:07:00 6ec激光传感器

文章;Fast and Accurate Extrinsic Calibration for Multiple LiDARs and Cameras

作者:Xiyuan Liu , Chongjian Yuan , and Fu Zhang

编译:点云PCL

代码:https://github.com/hku-mars/mlcc.git

来源:arXiv 2021

本文仅进行学术分享。如有侵权行为,请联系删除。欢迎加入我们。免费知识星球,获取PDF论文,欢迎转发朋友圈。如有错误,请评论并留言。未经作者许可,请勿转载。欢迎大家积极分享交流。

微信官方账号致力于云处理,SLAM,欢迎视觉、高精度地图相关文章和技术,欢迎加入我们,共同进步,感兴趣可联系微信:920177957(请务必按文章末尾要求添加,否则不通过)。

摘要

本文提出了基于自适应体素化的快速、准确、无目标的多激光雷达和相机外参标定方法。理论上,激光雷达外参标定与捆集调整相结合。我们推导了成本函数的二级导数作为加速优化的外部参考解决方案。在实现层面,我们采用自适应体素化技术,将激光雷达点云动态分割成不同大小的体素,减少了特征匹配过程中的计算时间,并在多个激光雷达相机配置下的室外测试场景中进行了实验,验证了该方法的鲁棒性和准确性。

530dfd08262d3d1c0949b6f7ae941ff9.png

图1:激光雷达位置和外参实现的浓密色点云采用提出的方法优化。

介绍

由于激光雷达在三维距离探测和点云密度方面的优越特性,以及来自相机的丰富色彩信息,越来越多的移动机器人使用多个激光雷达和相机进行自主导航和测绘。多个传感器的集成有助于估计机器人的状态,同时产生浓密的彩色地图。为了更好地感知周围环境,有必要将多个传感器的感知转换为同一坐标系,即了解每个传感器之间的刚性转换。

在本文中,我们的工作涉及多个激光雷达和相机之间的外参校准,多传感器外参校准存在几个挑战:

(1)传感器之间重叠视野有限(FoV),目前的方法通常需要每对传感器之间的公共视野,这样所有的传感器都能看到每一个特征。然而,这FoV重叠可能很小,甚至不存在,这使得这些方法不太实用。

(2) 对于一般的基础,计算时间要求ICP激光雷达所有激光雷达的点云,最大化点云的一致性,优化激光雷达的外部校准方法。激光雷达数量的增加意味着特征点对应搜索会更耗时。这是因为每个特征点都需要使用,包括整个点云k-d搜索并匹配附近的特征点。在激光雷达相机外参标定中,激光雷达点的数量越多,特征提取的计算时间也越长。

主要贡献

为了应对上述挑战,本文提出了一种快速、无目标的外部校准方法,用于多个激光雷达和相机。为了在所有传感器之间创建共同的可见特性,我们将运动引入传感器平台,以便每个传感器在不同的时间扫描相同的区域。首先,使用有效的捆集调整(BA)激光雷达有激光雷达点云,以校准激光雷达之间的非本征点云。为了产生多视图对应,我们实现了自适应体素化,将点云动态分为多个不同大小的元素。由于每个元素中只有一个平面特征,这个过程大大降低了特征对应匹配的时间消耗,然后通过匹配图像和上述重建点云之间的共同可见特征来校准相机和激光雷达之间的外参。为进一步加上述自适应体素地图,以提取激光雷达的边缘特征,以进一步加特征对应匹配。此外,我们还利用点云的深度连续边缘特征来避免前景膨胀和断点。综上所述,主要贡献如下:

(1)将多激光雷达外参校准问题转化为BA问题推导了成本函数的雅可比矩阵和Hessian矩阵。加速和优化激光雷达之间的外部参数解过程。

(2)实现自适应体素化,加速匹配和激光雷达深度连续边缘提取的过程。

(3)提出了一种快速、可靠、无目标的多激光雷达和摄像机外参校准方法,传感器之间几乎没有FoV外参校准在重叠的情况下进行。

(4)提出的方法的精度和鲁棒性与基于目标的方法相当,并在室外测试场景中得到验证GitHub上开源法。

主要内容

为了在多个激光雷达和相机之间创建可能没有FoV对于重叠的共视特征,我们将机器人平台旋转到m位,以便所有传感器扫描相同的感兴趣区域(见图2)。

图2:两个相对方向的传感器通过旋转产生的重叠视野。两个传感器Li和Lj/Ck没有原始设置FoV重叠。随着旋转运动的引入,所有传感器在不同的时间扫描同一区域。

自适应体素

为了找到不同激光雷达扫描点之间的对应关系,我们假设激光雷达轨迹的初始基础S、激光雷达外参EL和相机外参EC可用,初始激光雷达轨迹S可通过在线激光雷达使用SLAM获得初始外参的轨迹可以通过CAD设计或粗糙的手眼校准。边缘和平面特征点从每个激光雷达扫描中提取k-最近邻搜索(kNN)匹配地图附近的边缘和平面点。这将在每次迭代中重复构建全局映射k-d在本文中,我们使用论文[3]中提出的更有效的体素地图在所有激光雷达之间建立相应的关系。

体素地图是通过点云(使用当前轨迹S和外参)EL配准)切割成小体素,使体素中的所有点大致位于一个平面上(有一些可调公差)。固定分辨率体素地图的主要问题是,如果分辨率较高,分割将非常耗时,如果分辨率过低,环境中落入同一体素的多个小平面将无法分割。为了更好地适应环境,我们实现了自适应体素化过程。更具体地说,首先将整个地图切割成具有预设尺寸(通常较大,如4米)的元素,然后,对于每个元素,如果所有激光雷达扫描数据中包含的点大致形成一个平面(通过检查特征值之间的比率),则视为一个平面元素;否则,它们将分为八个元素,并再次检查每个元素,直到包含的点大致形成平面或体素大小达到预设的最小下限。此外,自适应体素化直接在激光雷达原始点上执行。

图3 显示了复杂校园环境中自适应体素化过程的典型结果。可以看出,此过程可以分割不同大小的平面,包括地面上的大平面、建筑墙上的中平面和树冠上的小平面。采用自适应体素化分割的激光雷达点云,相同体素内的点的颜色相同,初始体素化的默认大小为4m,最小体素大小为0.25m

多激光雷达外参校准

通过自适应体素化,可以获得一组不同大小的体素,每个体素包含大致位于平面上的点,并为所有激光雷达姿势创建平面约束。(a)所示。然后,通过对因子图的优化,估计激光雷达的外部参数,并将优化问题描述为(有许多推导公式,感兴趣的可以查看原文)

激光雷达与相机外参校准

使用校准激光雷达外参EL和轨迹S , 密集的点云地图可以在全局范围内获得,生成的全局点云可以通过匹配点云和图像的边缘特征来找到最好的外部EC。

从点云和图像中提取两种边缘,一种是前景和背景对象之间的深度不连续,另一种是相邻两个非平行平面之间的深度连续。深度不连续边缘会受到前景膨胀和断点的影响,因此我们使用深度连续边缘来匹配点云和图像。同时,将点云分成大小相同的体素,并通过RANSAC算法估计每个元素中的平面,然后计算每两个相邻元素中包含平面之间的角度。如果该角度超过阈值,则提取两个平面的交叉线作为深度连续边。

图5:提取比较深度连续边缘,A) 真实世界的图像。B) 本场景原点云。C) 提取边缘,黄色圆圈表示错误估计。D) 边缘通过自适应体素化提取。在这种情况下,边缘提取的时间消耗为38s,我们提出的方法是5s。

如图5所示,我们的方法可以有效地消除错误计,节省计算时间。我们使用图像边缘提取Canny为了进一步加快校准过程,避免错误匹配,我们进行了算法FoV检查确保只使用当前相机FoV通过将激光雷达边缘投影到具有当前外部估计的图像平面上,建立激光雷达边缘与相机边缘的对应关系,然后,我们通过最小化图像平面上点到边距的残差来优化外部参数。

标定流程

本文提出的多传感器校准工作流程如图6所示,激光雷达的原始点云在校准开始时通过LOAM处理以获得初始激光雷达轨迹s。然后将激光雷达的所有原始点云按时间划分为点云面片。

图6:校准过程:多激光雷达外参校准(浅蓝色区域)和激光雷达相机外参校准(浅绿色区域)。自适应体素化在黄线周围的步骤中生效。

在多激光雷达的外部校准中,首先使用激光雷达的点云平面来优化激光雷达的姿态,然后校准外部EL,在这个阶段,轨迹s固定在前一阶段的优化值上,只优化EL,最后,用整个点云面片对S和EL联合优化。在优化的每次迭代(在S、EL或两者上),使用S和EL自适应体素化执行当前值。在多激光雷达相机外参标中使用S? 和E? 上一步的L用于提取3D深度连续边。然后使用外部参数EC将这些3D反向投影到每个图像,并从图像中提取2D Canny边匹配,通过最小化两边定义的残差,使用Ceres最佳迭代求解EC。

实验

为了测试提出的算法,我们定制了一个Livox AVIA LiDAR4,一个Livox MID-100 LiDAR5和两个MVCA013-21UC6摄像头,如图7所示。

图7:我们定制的多传感器车辆平台,左:每个传感器FoV覆盖范围及其FoV规格。右:右手坐标系中表示每个传感器的方向。

所有的实验都是高性能的PC机上进行的,该PC机配有i7-9700K处理器和32GB RAM。对于提出的多激光雷达外参校准,我们首先使用8字形路径进行标准手眼校准,以获得初始外部EL,然后我们将我们的多传感平台旋转360度◦ 并每隔几度保持机器人平台静止,这样我们就可以在每个姿势从每个激光雷达获取足够稠密的点云。在数据采集过程中保持机器人平台静止也可以消除由运动失真和时间同步引起的问题,手动选择时间戳T,仅选择机器人平台静止时的点云和图像数据。

图8:实验场景

A.收敛性和计算时间比较

图9中绘制了两种方法的外参旋转和平移误差与迭代时间的关系,表中总结了两种方法每次迭代的平均时间成本,该工作使外参的平移和旋转误差快速收敛到适当的值。

图9 :提出的方法与以前工作的收敛性进行比较

上述10次试验中两种方法的校准结果如图10所示,这表明我们提出的方法的速度增加不会导致精度损失,考虑到计算时间开销和收敛速度,我们提出的算法可以节省总校准时间至少为以前工作的十分之一。

图10:三个MID-40激光雷达的外参校准结果,每个方框图分别由10次试验和两对激光雷达的20个外参组成。

B 多激光雷达外参标定

两个MID-100激光雷达的外参统计

AVIA与MID-100外参的统计

C 多激光雷达与相机之间的外参标定

图11:每个方框图使用场景2中收集的数据展示了20次试验的结果,初始旋转误差的平均值和标准偏差为2.5390◦ 和1.4203◦ . 初始平移误差的平均和标准偏差分别为0.1389m和0.0778m。

图12:两个测试场景中MID-100和对向相机的外部校准结果,每个方框图显示了20次试验的结果,初始旋转误差的平均值和标准偏差为2.5913◦ 及1.2771◦ . 初始平移误差的平均和标准偏差分别为0.1007m和0.0588m。

通过校准结果和相应图像数据生成的彩色点云如图

总结

这篇文章提出了一种用于多个激光雷达和相机的快速无目标外参校准方法,推导了成本函数的导数,并实现了自适应体素化,大大缩短了总的校准时间,在室外测试场景中的多个激光雷达相机配置下的实验结果表明,即使传感器对之间不存在FoV重叠,提出的方法也具有鲁棒性和可靠性。

接下来博主将对该开源代码进行梳理和分析欢迎交流!

资源

三维点云论文及相关应用分享

【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法

3D目标检测:MV3D-Net

三维点云分割综述(上)

3D-MiniNet: 从点云中学习2D表示以实现快速有效的3D LIDAR语义分割(2020)

win下使用QT添加VTK插件实现点云可视化GUI

JSNet:3D点云的联合实例和语义分割

大场景三维点云的语义分割综述

PCL中outofcore模块---基于核外八叉树的大规模点云的显示

基于局部凹凸性进行目标分割

基于三维卷积神经网络的点云标记

点云的超体素(SuperVoxel)

基于超点图的大规模点云分割

更多文章可查看:点云学习历史文章大汇总

SLAM及AR相关分享

【开源方案共享】ORB-SLAM3开源啦!

【论文速读】AVP-SLAM:自动泊车系统中的语义SLAM

【点云论文速读】StructSLAM:结构化线特征SLAM

SLAM和AR综述

常用的3D深度相机

AR设备单目视觉惯导SLAM算法综述与评价

SLAM综述(4)激光与视觉融合SLAM

Kimera实时重建的语义SLAM系统

SLAM综述(3)-视觉与惯导,视觉与深度学习SLAM

易扩展的SLAM框架-OpenVSLAM

高翔:非结构化道路激光SLAM中的挑战

SLAM综述之Lidar SLAM

基于鱼眼相机的SLAM方法介绍

扫描下方微信视频号二维码可查看最新研究成果及相关开源方案的演示:

如果你对本文感兴趣,请后台发送“知识星球”获取二维码,务必按照“姓名+学校/公司+研究方向”备注加入免费知识星球,免费下载pdf文档,和更多热爱分享的小伙伴一起交流吧!

以上内容如有错误请留言评论,欢迎指正交流。如有侵权,请联系删除

扫描二维码

                   关注我们

让我们一起分享一起学习吧!期待有想法,乐于分享的小伙伴加入免费星球注入爱分享的新鲜活力。分享的主题包含但不限于三维视觉,点云,高精地图,自动驾驶,以及机器人等相关的领域。

分享及合作方式:微信“920177957”(需要按要求备注) 联系邮箱:dianyunpcl@163.com,欢迎企业来联系公众号展开合作。

点一下“在看”你会更好看耶

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章