黄 强,潘常春,裴 凌,刘海春,李岚臻,李 扬,李泽亚
(1.上海交通大学电子信息与电气工程学院,上海 200240;2.上海交通大学北斗导航与位置服务重点实验室,上海 200240;3.上海西虹桥导航技术有限公司,上海 201799;4.北京跟踪与通信技术研究所,北京 100089)
激光雷达与视觉传感器在智能化移动机器人与无人驾驶领域具有广泛应用,激光雷达的优点在于其有着较远的探测距离和较高的三维信息获取能力、受环境影响较小、鲁棒性好,但也存在着价格高昂、数据点稀疏的问题;视觉传感器的优势在于其有着非常丰富的直观视觉信息,以及大量优秀的视觉算法,在环境感知和目标检测方面具有极大优势,且成本低廉,但也存在着难以获取相对精确的三维信息、鲁棒性差、需要大量计算资源、受环境光照影响较大的问题。对两者进行数据融合可以发挥两个传感器各自的优势,提升整体运行中的精度与鲁棒性,在多传感器融合的SLAM和多模态的环境感知等多个领域内都是研究的热点问题。而传感器间的联合标定是实现传感器融合的重要基础,其精度直接影响后续融合算法的精度。
激光雷达与视觉传感器的标定方法主要分为静态离线标定与动态在线标定两大类。静态离线标定主要依赖于标定物如棋盘格、Arucomarker[1-2]等构成的标定板等。Q.Zhang等[3]采用棋盘格标定板首先进行了单线激光雷达与视觉传感器的联合标定。通过激光点云识别出标定板是静态标定中的重要一步,A.Dhall等[4]和L.Zhou等[5]通过检测激光雷达下的标定板边缘点来拟合角点,借此实现点云配准。A.Khosravian等[6]将棋盘格提取公式转化为具有明确目标函数的组合优化问题,并提出了一种用于优化目标的分支定界技术。在激光点云分类上,A.Geiger等[7]利用贪婪的思想去除数量少的点集以实现配准,而康国华等[8]则是利用点云中心粗配准实现点云整体精配准。改进标定板也是静态标定中的一种思路。Z.Chen等[9]则设计了一种标定立方体,通过建立立方体下雷达点云与图像之间的方程,并采集标定立方体多角度点云来求解标定参数。L.Tao等[10]针对不同材料的激光雷达反射强度设置阈值来获取激光雷达点云,并据此设计了一种新标定板。ROS下的Autoware工具箱[11]也采用棋盘格与手动选择的方式进行多线激光雷达与视觉传感器的标定。动态在线标定主要依赖于环境特征,一般采用边缘检测等方式得到特征之间的对应关系,斯坦福大学人工智能实验室智能车[12]与百度Apollo平台[13]上使用的激光雷达与相机的联合标定均采用此方式,其标定效果受标定环境和振动等问题影响较大,通常容易在竖直方向有较大的标定误差。
静态标定在精度上优于动态标定,是当前主要研究方向。在上述静态标定方法中,一部分[5,7-8]针对传统标定板进行标定,存在采集帧数和激光点云较多的问题,并且需要手动选取雷达点云;另一部分[9-10]对标定板进行了改进,但改进过于复杂,对具体实施效率影响较大。针对上述问题,本文在Tao等[10]的标定板上进行改进,设计了一种新的标定板,通过分解重构提升标定板的易用性与适用性,实现激光雷达特征点的自动识别,并增加相机校验机制以缓解误差,提升了标定结果的精度与鲁棒性,最终分别与双目相机的左右目进行标定实验,量化地评估其标定结果的误差。
本方法通过设计可重构标定板,为激光雷达marker的自动识别提供基础。通过算法自动识别标定板雷达点云,并通过相机识别校验机制缓解相机识别中存在的误差。相比于传统方法,本方法具有以下优势:
1)不需要复杂的标定板,实用性高;
2)避免了人为选取雷达点云,提升了易用性;
3)针对相机可能存在的误差进行了处理,提升了鲁棒性。
具体涉及的软件模块构成如图1所示。
图1 标定软件模块构成
本文提出了一种可重构的标定板以实现多线激光雷达与视觉传感器的联合标定,该标定板为基于Tao等[10]提出的标定板进行改进得到的。前者通过强度进行特征点的选取,但需要手动选取并且标定板的适用范围非常局限,在实际操作中需要花费大量的时间去寻找标定板所处的合适位置;当视觉传感器与激光雷达的传感器相对位置发生变化时,同样需要花费大量的时间去调整合适的位置,且位置的调整是无规律可循的;同时,在一些视觉传感器与激光雷达的相对位置下不存在所谓的标定板的合适位置,极大地限制了该方法的适用性与易用性。
因此,本文在上述标定方法的基础上对标定板进行了改进,将标定板中视觉marker与激光雷达marker构建成标准化单板。在实际使用时,通过观测激光雷达的可视化数据,摆放单个激光雷达marker标准化单板,以及观测视觉传感器下图像,调整视觉marker标准化单板的位置。然后基于两侧的刻度尺数值进行先验信息的快速重构,从而实现标定板的重构,大幅提升了其适用性与易用性。具体的可重构标定板的设计图如图2所示。
图2 可重构标定板设计图
在激光雷达marker标准化单板中,为了实现激光雷达marker的自动识别,借鉴条形码的思路设计了用于识别的起始符与终止符,中间的黑色方块即为激光雷达识别的marker,如图3所示。在激光雷达marker标准化单板中,每个黑色块以及中间的白色块均为既定的宽度。
图3 激光雷达marker标准化单板
激光雷达marker的自动识别方法借鉴了条形码识别方法[14],首先累积若干帧的数据,并采用强度阈值对ROI区域进行激光雷达特征点的滤波。但受限于激光雷达的测距精度,以及观测的激光雷达标准板通常处于较远距离,因此与常规的条形码近距离扫描方式存在一定差异。而且所采用的Velodyne 16线激光雷达的精度为3cm,而本文所使用的标准化单板上的marker方块尺寸为1cm,这导致了激光雷达采样结果稀疏,同时依靠三维空间距离的判定会存在难以识别的问题。
针对这种情况,本文采用预设投影的方式,通过预设的投影矩阵将激光雷达的三维点投影到像平面,在像平面上对单线以DBSCAN聚类[15]方法进行投影点的聚类,并采用相对宽松的比例阈值以及对应的实际物理距离等组合约束进行激光雷达marker的识别,最终识别出21(3×7)处。对识别出的激光雷达marker点再做进一步的校正。该方法从一定程度上缓解了激光雷达测距精度和远距离识别的问题,最后结合所有帧数据信息实现特征点的对应。其算法流程图如图4所示。
在实际的运行中,由于环境因素、距离远近和对焦问题等影响,会存在视觉marker识别不稳的情况,引入不必要的误差。对于上述问题,本文采用双视觉marker进行校验的方法对识别不稳的情况进行检测与剔除,如图5所示。
(1)
图5 视觉校验
其优化模型可写作
(2)
在初始外参上通过最小二乘拟合求解上述优化问题。
为了验证所提标定方法的性能,采用ZED双目相机与Velodyne 16线激光雷达进行联合标定,标定实验场景如图6所示。
图6 标定实验
(3)
将式(3)得到的左右目外参与相机出厂时给定的左右目外参进行比较,计算标定的误差。实验中,通过改变标定板位置进行了三组实验,取均值作为最终评价指标。实验数据如表1所示,前两行是雷达与左右目分别标定时的均方根误差(Root Mean Squared Error, RMSE),后六行为标定所得左右目外参与出厂外参的误差。
表1 相机左右目与雷达标定实验误差
相机左右目标定的RMSE分别为0.98cm和1.57cm,取二者的均值1.275cm作为整体标定实验的RMSE。
在上述实验的基础上,复现文献[4]中Dhall等的实验,同样也进行雷达与相机左右目的标定,将实验结果与本文实验结果进行对比,如表2所示。
表2 对比实验结果
对比实验结果显示,本文标定效果优于文献[4]中Dhall等的方法。
除了利用数据客观地评价标定结果外,也可以采用将激光雷达点云投影到像平面上的可视化方法进行结果验证。雷达点云投影到像平面,利用标定得到的雷达与相机的外参可以实现。投影得到的可视化图像如图7所示。通过对比可以看出,经过本文方法标定后的雷达点云投影到图像后,与图像中场景的契合度比较高,优于Dhall的方法,直观地表明了本方法下雷达与相机的标定精度高。
(a)本文方法
图8 双目相机投影验证可视化结果
本文主要设计了一款可重构标定板用于雷达与相机的联合标定。基于此标定板提出了一种类条形码的激光雷达特征点的自动识别方法,以及一种棋盘格和Aruco marker的相机校验方法。算法分析与实验结果表明:
1)通过将多种标定板进行合理的重构组合,能够得到优于单一标定板的标定效果,并且重构组合后的标定板具有一定的灵活性,以及很高的实用性。
2)雷达点的自动识别和误差帧的自动剔除减少了标定中的误差。在标定过程中,设计自动处理环节能有效地减少误差,并且使得标定更加方便快捷。
3)本文新设计的标定板以及相应改进算法,在标定实验中RMSE为1.275cm,重投影后对应效果好,具有较高的实用性和工程应用价值。
本文实验中使用的标定板没有经过精加工,后续可以对标定板采取进一步标准化、模块化的工业化加工,以提升标定结果的精度。