-
面阵相机和线激光扫描仪的组合被广泛应用在移动测量[1]、自动驾驶[2]、机器人[3]等领域。相机能够提供场景的高分辨率视觉色彩、纹理信息,但缺乏空间场景的深度信息。线激光扫描仪能获取真实的摄影物距,具有成本低、扫描角度大、能提供目标的景深信息等特点。因此,两种传感器信息能够互为补充[4],提供更多的地物信息。由于相机和激光器安装位置的不同,影像纹理和激光深度数据融合的首要问题是两种传感器的外参标定,即找到相机和线激光器之间的空间相对位置关系,计算两个传感器坐标系转化的旋转矩阵与平移向量。
和三维激光扫描仪相比,线激光扫描仪更便宜,体积小,得到了广泛应用。但线激光扫描仪的角分辨率低,测量精度不高,一般不提供强度信息,导致采集的激光点数十分有限,噪声比较大,且特征点难以精确定位。因此,如何找到线激光数据与相机影像数据之间的直接对应特征,是外参标定的困难和关键所在[5]。
目前的普遍做法是在两者共同观测区域放置一个人工标定物建立两者之间的几何联系。棋盘格标定板被广泛应用于相机标定领域,是一种最常见和方便使用的标定物[6-7],很多学者研究了基于棋盘格的相机和线激光外参标定方法。例如,Zhang等[8]使用单面棋盘作为标定物,利用激光点在棋盘平面上的约束条件解算外参。Zhou等[9]和Ying等[10]同样使用单面棋盘作为标定物,不过是利用激光线和棋盘法向量垂直的约束条件先求解外参中的旋转矩阵后计算平移向量。同样是利用棋盘格,Vasconcelos等[11]和胡钊政等[12]将三维空间中的点线面关系转化为典型的透视三点问题(perspective-three-point,P3P)[13],提出最小解算法求解外参。基于棋盘格的方法优势在于方法成熟,但是高精度棋盘格需要定制,比较昂贵。针对这些问题,一些学者提出了用特殊形状的板子作为标定物的算法。例如,Li等[14]使用一种三角形板子作为标定物,利用激光点在三角形边线上的约束条件标定外参。Wasielewski等[15]和Sim等[16]利用V型板,准确提取激光在两个面的交点和影像上两个面的交线,建立了交点和交线之间的约束,但是这类方法需要估计一个外参初值迭代优化,而这在实际应用中往往是非常困难的。
为了同时利用棋盘类标定物和V型板类标定物的优点,本文提出了基于V型棋盘的标定方法。V型棋盘的制作非常简单,只需要在普通V型板子上贴上规则的棋盘格即可。使用V型棋盘作为标定物有以下3个优点:①V型棋盘可以利用两个棋盘面法向量夹角已知的关系进行粗差剔除和交叉验证,筛选出拍摄不清晰导致像点误差较大的数据。②使用V型棋盘作为标定物时,还可以建立激光交点和棋盘面交线之间的点线约束。线激光器的角度分辨率低,点间距比较大,难以进行准确特征点定位。而V型棋盘通过拟合落在两个棋盘面上的激光线得到准确的交点,该交点在棋盘面的交线上,与影像中对应的棋盘面交线特征对应。③使用V型棋盘标定出激光和相机的外参后,可以将激光点反投到像片上,在像片上计算激光交点到V型棋盘面的交线的距离,可定量且直观地判断实际标定结果的误差。
HTML
-
首先定义两个传感器坐标系统,如图 1所示,以空间中任意点为原点建立世界坐标系(Ow-xwyWzW)。以相机光心为原点,与成像平面平行建立XOY平面,光心前方为Z轴建立相机坐标系(Oc-xcyczc)。以激光器扫描中心为原点,扫描平面为XOZ平面建立激光坐标系(OL-xLyLzL)。其中,激光点P在相机坐标系和激光坐标系下的坐标可以分别表示为Pc=(xc, yc, zc)T,PL=(xL, 0, zL)T。P点在像平面成像的点qc的齐次坐标为qc=(u, v, l)T,则在不考虑像片畸变的情况下,PL和qc的关系可以表示为:
式中,K是相机的内参矩阵; s是尺度因子,可以通过相机检校提前获得[17]; R和T分别表示激光坐标系到相机坐标系的旋转矩阵和平移向量。
-
本节主要介绍V型棋盘可建立的几何约束。如图 2所示,V型棋盘的左右平面分别记为∏1和∏2,浅黄色平面代表激光器扫描平面,浅黄色点代表激光点。其中,∏1平面的所有激光点拟合出直线L1,∏2平面的所有激光点拟合出直线Lr,两条直线相交于点PL,在像平面上成像为qc。同时,相机同时拍摄到两个棋盘平面,在相机坐标系中,∏1和∏2棋盘面对应的单位法向量可以表示为nl和nr,绿色线表示两个棋盘面相交形成面交线lc。根据这些点-线-面之间的几何关系可以列出相应的约束方程。具体来讲,包括点-面约束条件、线-面约束条件、点-线约束条件3种类型几何约束。
-
点-面约束条件表示激光点在棋盘平面上这个物理事实。在相机坐标系中,因为激光交点PL在棋盘平面∏1,所以激光点到相机原点向量和棋盘法向量的乘积为相机原点到棋盘平面的距离。用数学公式表达为:
同理,激光交点PL也在棋盘平面∏2上,可以列出相应的约束方程:
对V型棋盘在不同姿态下进行N次观测,将所有激光交点投影到相机坐标系中,计算这些激光点到棋盘平面的距离平方和,最优外参解应该满足投影误差和最小的条件。因此,点面约束条件可以表示为:
式中,Epp表示点-面约束投影误差均值,单位为m;niL和nir分别表示第i个姿态左右棋盘平面在相机坐标系下的单位法向量;dil和dir分别表示第i个姿态相机原点到左右棋盘平面的距离;PiL表示棋盘在第i个姿态下激光交点在激光坐标系下的坐标。
-
线-面约束条件利用的是激光拟合直线和棋盘平面之间的关系。对∏1平面而言,激光坐标系下激光点拟合的直线Ll和相机坐标系下棋盘平面的法向量nl垂直,因此两者之间的约束关系可以表示为:
同理,也可以列出激光拟合直线Lr在棋盘平面∏2上的约束方程:
对V型棋盘在不同姿态下进行N次观测,将左右棋盘面激光拟合直线转换到相机坐标系中,计算这些激光直线方向向量和棋盘平面法向量内积平方和,内积越小,说明外参值越准确。因此,线-面约束条件可以表示为:
式中,Elp表示线-面约束误差均值,单位是1;Lil和Lir分别表示棋盘在第i个姿态下左右棋盘面激光拟合直线的方向向量。
-
点-线约束的基本原理是在像片坐标系中,激光交点所对应的像点,应该在V型棋盘面交线对应的直线lc上。按式(1)将激光交点投影到像平面上得到像平面坐标qc,在像平面坐标中计算qc到lc的距离d,用向量的形式表示为:
式中,lq表示激光交点和棋盘面交线上一点的连线的向量;l表示棋盘面交线的方向向量。在不同姿态观测N组数据,其误差函数可以表示为激光点到交线的距离平方和,点-线约束条件可以表示为:
式中,Epl表示点-线约束误差均值,单位是像素;di2代表第i个姿态下激光交点到棋盘面交线的距离平方。
3种约束条件中,点-面约束条件同时建立了旋转矩阵和平移向量的约束,并且可以线性化求解,但是几何上只保证了激光点位于平面上;线-面约束条件只建立旋转矩阵的约束,相对较弱,但是几何上保证了激光线的方向;点-线约束同时建立了旋转矩阵和平移向量的约束,保证了激光交点在像平面上的位置,但是不能线性化求解。为了在线性化求解的同时约束激光点所在平面、激光线方向和激光交点的位置,本文提出了融合3种约束条件的标定方法,首先利用点-面约束条件求出外参初值,然后融合3种约束条件对初值进行整体优化。
1.1. 问题定义
1.2. 约束条件
1.2.1. 点-面约束条件
1.2.2. 线-面约束条件
1.2.3. 点-线约束条件
-
通过上面的约束条件,可以求解出激光和相机之间的外参初值和迭代优化值,具体的求解过程如下:
1) 求解左右棋盘平面在相机坐标系中位置。记棋盘坐标系到相机坐标系的旋转矩阵和平移向量分别为Φ和Δ,上述外参能通过张振友检校方法得到[17]。同时,因为棋盘角点坐标可视为zw=0,则棋盘格平面在相机坐标系内能够用下式唯一确定:
式中,n表示棋盘平面在相机坐标系内的单位法向量;d为棋盘平面到相机坐标系原点的距离;Φ3表示Φ的第3列。用上述方法分别计算V型棋盘左右平面的法向量nl、nr和到相机原点的距离dl、dr。考虑到实际中棋盘角点的坐标可能存在较大的误差,还需要进一步验证式(10)的结果。按式(11)计算两个棋盘面法向量夹角的余弦值,求该值和棋盘面实际夹角θ余弦的差值绝对值ε,当ε大于阈值δ(本文中δ=0.01)时,认为该组数据误差过大,将这一组数据排除。表示为:
2) 激光点拟合直线方程。实际应用中,激光点数据也会存在误差,因此要将所有激光点拟合成一条直线减小误差的影响。激光打到V型棋盘上会形成明显的分界线,人工选取两个平面上的激光点集合,然后用最小二乘拟合的方法分别拟合出激光线Ll和Lr。即
3) 求两条激光直线的交点。联立方程(12)和(13),求得两条激光线的交点PL坐标。
4) 求解外参初值。注意到PL=(x, 0, z),将其写为PL=(x, z, 1),代入式(2)和(3)中,得
其中,H是一个3×3的包含R和T的变换矩阵,表达式为$\boldsymbol{H}=\boldsymbol{R}\left(\begin{array}{lll}{1} & {0} \\ {0} & {0} & {\boldsymbol{T}} \\ {0} & {1}\end{array}\right) $。分析式(14)可知,这是一个线性表达式,一组数据可以提供两个线性无关的约束方程。方程一共有9个未知数,因此,最少需要5组数据来解算H。一旦H得到,那么外参可以表示为:
式中, H1、H2和H3分别代表H矩阵的第1列、第2列和第3列。
5) 优化外参初值。得到激光和相机之间的外参初值之后,这还不是外参的最优解,还需要对外参进一步优化。为了使得外参同时满足点-面约束、线-面约束和点-线约束等约束条件,将V型棋盘所有约束条件方程式(4)、式(7)、式(9)结合起来,得到误差方程最终形式:
式中,w1、w2和w3为每一项约束条件设置的权值,其目的是使得3种不同单位的约束条件能发挥相同的作用。具体而言,w1、w2和w3分别为这几组数据中3种误差最大值的倒数。式(16)的解是一个非线性优化的问题,这里采用列文伯格-马夸尔特法(Levenberg-Marquardt, L-M)[18]对外参进行整体优化。
-
为了验证本文算法在不同条件下的精度,可以利用仿真实验评测算法性能。实验中,设置激光扫描仪的角分辨率为0.25°,扫描范围为-45° ~225°。模拟相机的焦距是20 mm,每个像素的大小是6.7 μm,像片的宽、高分别设置为1 280个像素和1 024个像素,畸变因子为0。每个棋盘面为11×11的格网,格网长宽均设置为50 mm。仿真实验中相机和线激光之间的外参真值已知,因此可以使用旋转矩阵和平移向量的误差来评价不同算法的标定精度,对应的误差计算公式如下:
式中,ER和ET分别对应旋转矩阵的误差和平移向量的误差,单位分别为rad和mm,这两个值越低,表明相应的旋转向量和平移向量的精度越高。
-
为了验证算法对于激光点噪声的适应性,设置V型棋盘格为两个互相垂直的平面,在激光距离数据中加入均值为0、标准差为2~20 mm的高斯噪声,在像点数据加入均值为0、标准差为0.5像素的高斯噪声。每个噪声水平下,独立进行100次实验,每一次实验中,仿真产生10组V型棋盘姿态数据,分别用本文算法和文献[8-9]中的算法计算外参,统计每一种算法的误差均值和标准差,将最后的结果绘制成条形图,如图 3所示。
从图 3可以看出,随着激光噪声标准差的增大,3种方法计算出的外参误差都在缓慢增大。同时,每一个噪声水平下,本文提出的算法和文献[8-9]的算法相比,旋转矩阵和平移向量的误差均值均比较小,误差的标准差也比前两种方法略小。实验结果表明,本文算法具有较高的精度和鲁棒性。
-
为了验证算法对于像点噪声的适应性,设置V型棋盘格为两个互相垂直的平面,在激光距离数据中加入均值为0、标准差为2 mm的高斯噪声,在像点数据中加入均值为0、标准差为0.5~5个像素的高斯噪声。每个噪声水平下,同样独立进行100次实验,用上述3种算法计算外参值,统计每一种算法的误差均值和标准差,绘制成条形图,如图 4所示。
从图 4可以看到,随着像点噪声的标准差不断增大,3种方法计算出的外参误差都在急剧增大。和前面两种方法相比,本文提出的算法在不同噪声水平下旋转矩阵和平移向量的误差均值都是最小的,误差的标准差也相对较小。
-
为了进一步验证该算法在实际应用中的效果,可使用实验室设备采集的真实数据来进行实验。实验中采用德国SICK公司的LMS111激光器和日本JAI公司的BM-500GE型号的CCD相机。其中,线激光器的参数如下:角分辨率为0.5°,扫描范围从-45°~225°。相机获取像片宽高的有效像素为2 058×2 456,像元尺寸为3.45 μm×3.45 μm。V型棋盘两个棋盘平面夹角为90°,左右两边分别为8×8和8×10个棋盘格,每个格子长宽大小均为50 mm。
实验中将线激光器和相机的相对位置关系固定下来,移动V型棋盘格,采集10个不同姿态下的数据,用本文算法标定相机和激光之间的外参值,得到的旋转矩阵和平移向量分别为:
按式(1)将所有的激光点都反投影到影像上,最后反投结果如图 5所示。
图 5中,红点代表激光点,红色线段代表激光点拟合直线,黄点代表两条激光线交点,绿色线段代表V型棋盘面交线。可以看到,两幅影像中,激光点经过投影变换后分布在V型棋盘两个平面上,而且每一个平面上激光点呈现直线均匀分布,这和线激光扫描仪工作时的姿态是相吻合的。同时,激光交点基本上位于棋盘面交线上。为了定量评价本文算法外参标定的精度,在每一组棋盘姿态下,计算激光交点到棋盘交线的像素距离,最后的平均误差为5.8个像素。实验表明, 基于V型棋盘的标定方法在实际应用中能取得较好的结果。
3.1. 仿真实验
3.1.1. 不同激光噪声水平下仿真实验
3.1.2. 不同像点噪声水平下仿真实验
3.2. 真实场景实验
-
本文的贡献主要有两点:一是结合棋盘类标定物和V型板类标定物的优点,引入V型棋盘标定物。标定过程中,通过激光交点和法向量约束排除了激光点噪声和像点噪声的影响。外参优化过程中,综合利用了激光点和V型棋盘之间的三类几何约束条件,使得外参优化条件更加精确,取得了更好的标定结果。二是从V型棋盘的特点出发,提出了在实际应用中验证激光和相机外参精度的思路,通过计算激光交点到V型棋盘面交线的距离,可以定量地确定外参标定的结果是否正确。