大家好呀,我是一个SLAM方向的在读博士,深知SLAM学习过程一路走来的坎坷,也十分感谢各位大佬的优质文章和源码。随着知识的越来越多,越来越细,我准备整理一个自己的激光SLAM学习笔记专栏,从0带大家快速上手激光SLAM,也方便想入门SLAM的同学和小白学习参考,相信看完会有一定的收获。如有不对的地方欢迎指出,欢迎各位大佬交流讨论,一起进步。博主创建了一个科研互助群Q:951026257,欢迎大家加入讨论。
Pixel-Level Extrinsic Self Calibration of High Resolution LiDAR and Camera in Targetless Environments
论文地址:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=9495137
一、文章概述
1.问题导向
在开发自动驾驶汽车时,通常会将激光雷达 (LiDAR)与摄像头传感器结合在一起。激光雷达传感器由于其直接的3D测量能力,已广泛应用于障碍物检测、跟踪和地图绘制应用。外部校准是机器人技术中一个研究得很好的问题,主要分为两类:基于目标的校准和无目标的校准。它们之间的主要区别在于它们如何定义和提取来自两个传感器的特征。当前的外部校准方法严重依赖外部目标,例如棋盘格或特定的图像模式。通过从图像和点云中检测、提取和匹配特征点,将原始问题转化为最小二乘方程并用其求解。由于这些校准目标通常放置在传感器套件附近,因此在远程场景中(例如大规模点云着色),外部误差可能会放大。
2.目标
为了解决上述挑战,我们在本文中提出了一种无目标环境下的自动像素级外部校准方法。该系统通过从图像和点云中提取自然边缘特征并最小化重新投影误差来运行。
3.摘要
在本文中,我们提出了一种在无目标环境下自动外部校准高分辨率 LiDAR 和 RGB 相机的新方法。我们的方法不需要棋盘格,而是可以通过对齐两个传感器中的自然边缘特征来实现像素级的精度。在理论层面,我们分析了边缘特征所施加的约束以及校准精度对场景中边缘分布的敏感性。在实现层面,我们仔细研究了 LiDAR 的物理测量原理,并提出了一种基于点云体素切割和平面拟合的高效准确的LiDAR边缘提取方法。由于自然场景中边缘的丰富性,我们在许多室内和室外场景中进行了实验。结果表明,该方法具有很高的鲁棒性、准确性和一致性。它可以促进 LiDAR 和相机融合的研究和应用。我们已经在 GitHub1 上开源了我们的代码,以造福社区。
4.贡献
-
我们仔细研究了激光雷达测量的底层原理,发现常用的深度不连续边缘特征对于校准来说既不准确也不可靠。我们提出了一种新颖、可靠的深度连续边缘提取算法,从而获得更准确的校准参数。
-
我们评估了我们的方法和实现在各种室内和室外环境中的稳健性、一致性和准确性,并将我们的方法与其他最先进的方法进行了比较。结果表明,我们的方法对初始条件具有稳健性,与校准场景一致,并在自然环境中实现了像素级校准精度。我们的方法的精度与基于目标的方法相当(有时甚至更好),并且适用于新兴的固态和传统的旋转激光雷达。
-
我们开发了一款实用的校准软件,并在 GitHub1 上开源,造福社区
二、方法
2.1 边缘提取
为了避免投影引起的零值和多值映射问题,我们直接在 LiDAR 点云上提取边缘特征。边缘有两种类型:深度不连续和深度连续。
深度不连续边缘是指前景物体与背景物体之间的边缘,深度发生跳跃;相反,深度连续边缘是指深度连续变化的线的平面连接边缘。然而,仔细研究 LiDAR 测量原理,我们发现深度不连续边缘对于高精度校准来说既不可靠也不准确。当从前景物体扫描到背景物体时,一部分激光脉冲被前景物体反射,另一部分被背景反射,产生两个反射脉冲到达激光接收器。在前景物体反射率较高的情况下,第一个脉冲产生的信号将占主导地位,即使光束中心线偏离前景物体,也会造成前景物体的假点超出实际边缘(图(a)中最左边的黄色点)。当前景物体靠近背景时,两个脉冲引起的信号会汇合,汇合信号会形成一组连接前景和背景的点(称为出血点,即图 (a) 中的黄色点)。这两个现象会错误地夸大前景物体,并在边缘提取(图 (b))和校准中造成重大错误。
为了避免深度不连续边缘引起的前景膨胀和出血点,我们提出提取深度连续边缘,如下图所示。(1) 我们首先将点云划分为给定大小的小体素
(2) 对于每个体素,我们重复使用 RANSAC 来拟合和提取体素中包含的平面。
(3) 然后,我们保留相连且在一定范围内形成一定角度的平面对(例如 [30°, 150°]),并求解平面相交线
(4) 对于图像边缘提取,我们使用Canny算法[19]。
(5) 提取的边缘像素保存在k-D树(k=2)中,用于对应匹配。
详情请看。。。