全景泊车辅助系统的关键技术
2020-10-27文淑容
钱 峰,李 勇,文淑容
(1 湖北工业大学机械工程学院现代制造质量工程湖北省重点实验室,湖北 武汉 430068;2 湖北省产品质量监督检验研究院,湖北 鄂州 436070)
随着车载电子技术的快速发展,人们对乘用车安全驾驶的要求越来越高,传统的车载辅助驾驶系统只在车尾安装摄像头,只能覆盖车尾的小部分区域,而车辆两侧后视镜无法捕捉的区域和车头左右立柱遮挡的区域,无疑会形成视野盲区,增加驾驶的风险,在狭窄的街道和停车场容易出现擦碰事故。为消除视野盲区,提高驾驶的安全性,就必须让驾驶员能够实时查看车辆周围的环境,这就需要多个鱼眼摄像头共同采集车辆周围的图像,然后通过主控处理单元进行拼接,形成一幅覆盖车辆周围的全景环视图像。
全景泊车辅助系统包含两大核心技术:一是鱼眼摄像头标定及鱼眼图像畸变矫正技术,二是全景图像拼接技术。鱼眼镜头焦距小,视场大,采集的图像有严重的畸变问题。畸变的存在不仅使人眼观察的效果差,也不利于图像的进一步处理,需要对其进行矫正。目前,国内外学者对鱼眼图像的畸变矫正已经进行了大量研究。其中,比较有代表性的有球面透视投影模型校正法[1]、等距模型校正法[2]、椭圆模型校正法[3]。这些方法不需要标定模板,校正过程比较简单,但都存在校正图像边缘信息缺失、图像宽大,畸变校正不彻底等问题。在系统完成鱼眼图像的畸变矫正后,为形成一幅覆盖车辆周围的全景图像,需要进一步将矫正后的图像进行拼接。目前,关于图像拼接的方法主要有基于特征点的图像拼接法[4-5]和基于区域的图像拼接法[6-7]。这两种方法都能够较快地实现图像的拼接,但拼接后的全景图像都不同程度地存在残留拼接缝隙、伪影、变形大等问题。
本文在现有全景泊车辅助系统[8-10]的基础上,对鱼眼图像畸变矫正技术和全景图像拼接技术进行了研究,设计了一种新的全景泊车辅助系统。该新系统比较完整地保留了鱼眼图像畸变矫正后的信息,消除了图像拼接后的残留缝隙,并有效解决了全景图像变形大、伪影等问题。
1 眼摄像头标定及鱼眼图像畸变矫正
1.1 鱼眼摄像头标定
为了对鱼眼摄像头所采集的图像进行畸变校正,需要对鱼眼摄像头进行标定来获取内外参数,找到图像坐标系和世界坐标系的对应关系,从而建立畸变图像和矫正后图像的映射关系。本文的标定过程是通过将鱼眼摄像头固定在一个位置,在距摄像头f处(即鱼眼摄像头的焦距处)放一个黑白棋盘格,通过旋转棋盘,每次旋转36°,直至旋转360°,使摄像头和黑白棋盘格的相对视角不同,采集10张黑白棋盘格图像,通过算法来计算摄像头的内外参数(图1)。
图1 车载鱼眼摄像头标定示意图
1.2 鱼眼图像畸变矫正
为了解决传统鱼眼图像畸变矫正方法中存在的矫正图像边缘信息缺失、图像宽大、畸变矫正不彻底等问题。本文提出了基于线性特征的两步式鱼眼图像畸变矫正方法。第一步先结合传统的线性鱼眼图像畸变矫正算法的优势对鱼眼图像进行初步矫正;第二步加入多项式变换算法,对矫正后的鱼眼图像作进一步的修正,使矫正后的图像尽可能多的保留原图像的信息。
假设(u,v)为图像坐标系中的任意点,(u0,v0)为坐标系的原点,u轴,v轴的单位为像素。(Xc,Yc,Zc)为摄像头坐标系点,(X0,Y0,Z0)为坐标系原点,Xc轴,Yc轴,Zc轴的单位为mm。图像坐标点和摄像头坐标系点之间的关系[9]如
(1)
式中:k,l为单位像素的大小;f为鱼眼摄像头的焦距;θ为鱼眼摄像头的安装角度,在安装精度要求不高的情况下,θ为90°。因此,方程[9](1)又可表示为
(2)
a,b,u0,v0为鱼眼摄像头的内参数,由鱼眼摄像头本身决定。由于鱼眼摄像头在生产和安装的过程中存在误差,即使同一生产线制造的鱼眼摄像头,其参数也可能存在较大差异。考虑到鱼眼摄像头的径向畸变和切向畸变,为了获取更加准确的标定参数,图像坐标点和世界坐标点的关系如图2所示,可表示为[11]
(3)
(4)
(5)
(6)
式中:R3×3为旋转矩阵,t3×1为平移矩阵,r3×1为旋转矢量。(x′,y′)是理想图像坐标点,(x,y)为畸变图像坐标点。k1,k2,k3为径向畸变系数,p1,p2为切向畸变系数,r为畸变半径,r2=x2+y2。
1-世界坐标系;2-入射光线;3-单位球面;4-摄像头坐标系;5-像素坐标系;6-图像平面;7-图像坐标系图2 鱼眼摄像头成像过程
考虑到鱼眼摄像头为非线性结构,结合上文所建立的鱼眼摄像头坐标点与世界坐标点以及图像坐标点之间的关系,可以推导出世界坐标系点与图像坐标系的关系:
(7)
由式(7)可知,f(abu0v0r3×1t3×1k1k2k3p1p2)为鱼眼摄像头的内外参数。当世界坐标系中的点[Xw,Yw,Zw,1]T和f确定时,像素坐标系中的点[u,v,1]T也即唯一确定。在同一图像中,图像坐标系中的点(u,v)的灰度值g(u,v)唯一确定。通过这种唯一确定关系,可以实现鱼眼图像的畸变矫正。f(abu0v0r3×1t3×1k1k2k3p1p2)中的参数包含鱼眼摄像头的所有特征,可以通过实验值f′(abu0v0r3×1t3×1k1k2k3p1p2)获取。由于实验值f和真实f′之间有误差,因此,矫正图像中从f′值中获取的g′值与畸变图像中从f值中获取的g值之间也有差异。为了最大限度的将鱼眼畸变图像矫正为正常视野的图像,上述问题又可被等效为寻找g和g′之间的最小差异[9],其数学关系
(8)
其中:n×m为矫正后的图像尺寸。g1表示的畸变的鱼眼图像的灰度值,g2为矫正后的图像的灰度值,鱼眼图像矫正的效果如图3所示,像素误差为0.5 pix。
图3 鱼眼图像畸变矫正效果图
2 全景图像拼接
在完成鱼眼图像的畸变矫正后,为形成一幅覆盖车辆周围的全景图像,需要进一步将矫正后的图像进行拼接。根据图像拼接的特点、配准方式、应用场景的不同,全景图像拼接主要分为两类:一类是基于特征点的全景图像拼接法,另一类是基于区域的全景图像拼接法。为了减少图像拼接过程中的计算量、噪声的影响,提高精度,本文选择基于特征点的全景图像拼接法对图像进行拼接。
2.1 俯视投影变换
在全景泊车辅助系统中,4个鱼眼摄像头以不同的角度安装在车辆的前、后、左、右,其光轴与地面不全是垂直关系。因此,鱼眼摄像头采集的图像中的地面与水平面不全平行,且四个鱼眼摄像头采集的图像中的地面相互之间也不平行。这导致采集的图像不能进行拼接,也无法形成鸟瞰图像。为了使系统能最终获取一幅环视的全景鸟瞰图,就必须对矫正后的鱼眼图像进行俯视投影变换。
本文采用基于图像的单应性矩阵DLT算法来对矫正后的鱼眼图像进行俯视投影变换。该算法不需要测量鱼眼摄像头的安装角度和安装位置等参数,俯视变换图像更加精确,安全,可靠。基于图像的单应性矩阵DLT算法的俯视投影变换计算公式
(9)
其中:s为比例因子;L1,L2,L4,L5,L6,L8,L9,L10为矩阵H中的未知参数;(u,v)为像素坐标点,(Xw,Yw,Zw)为世界坐标点,Zw=0。为了求解这些未知数,并进一步求解出俯视投影变换过程中的单应性矩阵H,选择黑白棋盘格的4个顶点作为世界坐标点,并与相应的像素坐标点建立映射关系,组成8组方程。鱼眼摄像头采集的图像经畸变矫正后与俯视投影变换图像的对应点的坐标关系
(10)
图3b中的鱼眼图像畸变矫正效果图,通过基于图像的单应性矩阵DLT算法的俯视投影变换效果如图4所示。
图4 俯视投影变换效果
2.2 基于SIFI特征点匹配的全景图像拼接
在完成对鱼眼图像的畸变矫正、俯视投影变换等预处理后,可通过对相邻鱼眼摄像头采集图像的重叠部分的特征点进行提取和匹配,进而实现全景泊车辅助系统的全景图像拼接。基于SIFI(尺度不变特征转换,ScaleInvariant Feature Transform)特征点匹配是对两幅图像重叠部分的特征点进行相关性计算,得到一组互相关系数。然后根据需要设定阈值,对满足阈值的特征点进行保留并配对。假设两幅待配准图像分别以函数D1(x,y)和D2(x,y)表示,则在特征点中心为(0,0),S∈(0 (11) 鱼眼图像的畸变矫正和图像拼接是全景泊车辅助系统中的关键步骤,其结果不仅需要在PC仿真中进行测试,还需要在实际场景中安装在嵌入式开发板上进行测试。 本文中所陈述的鱼眼图像畸变矫正,采用的是两步法和多项式坐标变换法,通过多个角度采集黑白棋盘格图像,使鱼眼摄像头标定的更加精确,矫正的效果更好。鱼眼图像矫正效果如图5所示。 图5 鱼眼图像畸变矫正效果图 本文通过基于SIFI特征点的图像拼接法对矫正后的鱼眼图像进行了拼接,消除了缝隙处的拼接线,实现了图像的平滑过渡,拼接后的全景图像视觉效果较好。如图6所示,黑色矩形框为模拟平台(车辆)所处位置。基于特征点的全景图像拼接法所需的时间与基于区域的全景图像拼接法时间进行对比(表1)。 图6 拼接后的全景图像 表1 基于特征点与基于区域的全景图拼接法的耗时对比 从表1可知,基于特征点的全景图像拼接法处理各个视图的部分区域图像的时间均小于基于区域的全景图像拼接法的时间,且时间的提升率均在35%以上,这对于实时性要求很高的车载系统有较高应用价值。 本文对全景泊车辅助系统的关键技术进行了研究,提出了一种新的鱼眼图像畸变矫正方法,有效地改善了矫正图像宽大、局部信息缺失、矫正不彻底的问题。通过SIFI特征点匹配的方法对矫正后的图像进行了拼接,实现了相邻图像在拼接处的平滑过渡和无缝拼接。通过模拟平台进行仿真和测试表明:该系统成本低廉,耗时低,鲁棒性强,最后形成的全景图像效果良好,能够辅助驾驶员泊车。3 系统实验和结果
3.1 鱼眼图像畸变矫正的实验结果
3.2 全景图像拼接实验结果
4 结论