一种3D激光雷达和摄像机的联合标定方法
2019-09-23王甦菁
刘 振,王甦菁,李 擎
(1.北京信息科技大学 高动态导航技术北京市重点实验室,北京 100101;2.中国科学院心理研究所 行为科学重点实验室,北京 100101)
0 引 言
随着无人驾驶技术的发展,基于外部传感器的无人车能够实现对例如车辆、道路等周围环境的信息感知[1]。基于3D 激光雷达和摄像机的两种传感器之间的信息融合可以有效解决无人车的环境感知任务[2]。3D 激光雷达可以提供物体丰富的结构信息,摄像机可以提供物体丰富的颜色和特征信息,然后通过先进的算法融合3D激光雷达和摄像机数据来检测车辆等障碍物[3]。每个传感器以互补的方式提供数据,以产生统一和精确的结果,因此两者信息的融合成为当前研究的热点。
激光雷达和摄像机是两种类型不同的传感器,使用标准的方法容易且快速标定出两者之间的外部参数是进行数据融合的前提。2D 激光雷达和相机传感器的标定包括基于平面棋盘格的标定方法[4-5]或采用正交三面体[6]或V 形靶标[7]作为标定物的标定方法等。文献[4]使用了平面棋盘格标定板来标定激光雷达和摄像机,将平面标定板放置于摄像机和激光雷达的视野中,首先估计出摄像机与不同摆放位置的棋盘平面标定板的相对姿态,利用标定平面上激光雷达扫描点与平面之间的约束以获得线性解,但该方法至少需要5 次棋盘格标定板的数据才能实现标定。文献[5]将现有的2D 激光雷达和摄像机的标定方法扩展到3D 激光雷达,采用类似于文献[8]所描述的通过几何约束关系来估计激光雷达与相机的外参数,但该标定过程也要求采集至少三次平面标定板数据才能完成标定。文献[9]采用一块直角梯形棋盘格标定板来完成激光雷达和摄像机的标定过程,利用黑白棋盘格得到摄像机的外部参数,利用激光雷达在梯形标定板上的扫描信息得到激光雷达在车体上的安装高度和俯仰角度。虽然该方法只需要采集一次数据就可以完成激光雷达和相机的联合标定,但是其梯形标定板不易制作。
本文在文献[9]的基础上结合所使用3D 激光雷达的特性改进了标定方法,只需要利用一块黑白棋盘格标定板就可以完成对激光雷达和摄像机的标定过程。实验中将棋盘格标定板放置在车体的正前方视野中,采集一次数据就可以实现对激光雷达、摄像机和车体构成的整个系统的标定,该方法简化了标定操作过程,易于实现。
1 激光雷达标定原理
激光雷达作为无人车对车辆周围环境进行感知的主要传感器,一般采用与车体刚性连接的方式。在实际安装时不可避免会出现一定的俯仰角度、偏转角度和横滚角度。在实际安装过程中,由于横滚角度和偏转角度一般情况下很小,所以本文中假定横滚角和偏移角为0。图1为3D 激光雷达、摄像机与车体的相对安装位置。
图1 安装位置示意图Fig.1 Schematic diagram of installation location
3D 激光雷达扫描模型的侧视图如图2所示。图2中激光雷达的安装高度为h,Ols为3D 激光雷达坐标系原点,(xveh,yveh,zveh)为车体坐标系,Oveh为车体坐标系原点,将3D 激光雷达内部N个激光器从下至上依次标号为0,1,2,…,i,…,N,φ为3D 激光雷达出厂时标定的相邻两线束间隔的俯仰角。
第零束和第一束激光由于有较大的俯仰角扫描到地面的数据点可分别表示为P0(ρ0,θ0,δ0) 和P1(ρ1,θ1,δ1),ρ0和ρ1分别为两线束的距离值,θ0和θ1分别为其水平角度,δ0,δ1分别为俯仰角度,相差φ。则将激光雷达坐标系转换到车体坐标系的转换关系为:
图2 3D 激光雷达扫描模型侧视图Fig.2 Side view of scan model of 3D LIDAR
可将式(1)简写为:
式中,Rls->veh,Tls->veh分别为激光雷达坐标系到车体坐标系的旋转矩阵和平移向量。
把两束激光雷达扫描线投影至yveh-zveh平面,分别求取最大值OlsA=max(ρ0·sinθ0),OlsB=max(ρ1·sinθ1)。由几何关系可知△AOvehOls和△BOvehOls构成直角三角形。根据正弦定理有:
由式(3)~式(5)联合建立约束方程,可以求解出激光雷达的安装高度和俯仰角。在实际计算中,由多束激光扫描至地面的信息可求得多组解,使用最小二乘法减小估计误差。
2 摄像机标定原理
为建立摄像机坐标系与车体坐标系的变换关系,将棋盘格标定板垂直地面摆放在车体正前方视野中,提高棋盘格角点提取的精度和摄像机外参数标定的准确性,棋盘格坐标系也易于转换为车体坐标系。图3显示了棋盘格标定板与车体的相对摆放姿态。
建立棋盘格坐标系与车体坐标系的旋转矩阵为:
图3 车体坐标与棋盘格坐标示意图Fig.3 Schematic diagram of vehicle coordinates and checkerboard coordinates
得到棋盘格坐标系中的坐标点Ppla与车体坐标系中的坐标点Pveh的转换关系为:
式中,Rpla->veh,Tpla->veh分别为摄像机坐标系到车体坐标系的旋转矩阵和平移向量。
以棋盘格坐标系作为世界坐标系,棋盘格坐标系与摄像机的转换关系为:
式中,Rpla->cam,Tpla->cam分别为棋盘格坐标系到摄像机坐标系的旋转矩阵和平移向量。
车辆坐标系与摄像机坐标系的转换关系为:
式中,Rpla->cam,Tpla->cam分别为车辆坐标系与摄像机坐标系的旋转矩阵和平移向量。Rveh->cam可由Rpla->cam和Rpla->veh得到:
为得到旋转矩阵Rpla->cam,由摄像机的透视投影关系,可以建立棋盘格坐标系的齐次坐标M(x,y,z,1)和角点在图像中的像素齐次坐标m(u,v,1)的位置映射关系:
然后对由m和M对应的点集合构成的线性方程求解,得到H的最小二乘解。其中:
式中,λ为缩放因子,在摄像机选定情况下摄像机内部参数K也就确定,由此得到外参Rpla->cam。具体求解过程参见文献[8]。
3 摄像机与激光雷达的联合标定
综合激光雷达与车体及摄像机与车体的标定结果可以建立摄像机坐标系与激光雷达坐标系的转换关系,实现摄像机与激光雷达的联合标定:
为了验证本方法的标定效果,进一步把激光雷达数据点与图像像素进行融合,得到其在图像中的位置。由摄像机坐标系与图像像素坐标系的转换关系:
可得到激光雷达坐标系与图像像素坐标系的转换关系为:
4 实验结果及分析
本实验选用的3D 激光雷达为镭神智能公司生产的C16 多线混合固态激光雷达,雷达外壳内,安装有16 对固定在轴承上的激光发射与激光接收装置,通过内部的电机旋转以5 Hz转速下进行360°的全景扫描,测程范围为0.5~120 m,测距精度为±3 cm,垂直视场角为±15°,垂直方向上角度分辨率为2°,水平方向角度分辨率为0.09°。摄像机分辨率为1920×1080。在实际场景实验中,将激光雷达水平安装在一辆电动车的前方正中点的位置,摄像机处于激光雷达的正上方0.2 m,标定板摆放在车体正前方约4 m 的位置,通过Camera Calibration Toolbox for Matlab[10]标定工具箱可以直接标定出摄像机的内参数K,所以采集一次数据即可实现激光雷达、摄像机和车体的联合标定。
图4为3D 激光雷达数据点与图像像素融合的效果图,由距离车体的远近,将3D 激光雷达数据点以颜色渐变的方式可视化,距离越远颜色越深。
图4 3D 激光雷达数据点与图像像素融合的结果Fig.4 Result of fusing 3D LIDAR data points with image pixels
由图4融合结果可以容易看出,位于障碍物板边缘处的三维数据点由于距离发生了突变,相应的像素点颜色也随之发生了很大的变化,对于激光雷达探测的较远处场景也能很好地体现出来。3D 激光雷达数据点与图像像素实现了较好的融合,标定结果基本满足实际情况。但从水平方向看激光雷达像素点出现较小右移的情况,而且越靠近垂直方向上方的激光束扫描点右移情况越明显,这可能是激光雷达每线束在水平方向有偏转角误差导致,在接下来的研究中将寻求通过标定的方法得到误差角并给予补偿,提高标定精度。
5 结 论
为解决3D 激光雷达数据点与图像像素信息融合的问题,本文提出一种3D 激光雷达与摄像机联合标定的方法。实验结果表明所提出的标定方法基本满足实际情况,易于实现。