基于混合贝塞尔曲线模型的车道检测算法
2018-03-19王舜燕
韩 浩,王舜燕
(武汉理工大学 计算机学院,湖北 武汉 430070)
0 引 言
关于LDR(车道检测与重建)的研究主要面对如下问题:①如何避免路边树木和建筑物的阴影干扰;②如何降低图像噪声的影响;③如何在不同光照环境下保持鲁棒性;④如何应对不同的弯道轮廓和曲率;⑤如何实时检测和重建车道。
车道检测的一种思路是利用颜色、纹理、边缘、宽度等道路特征来检测车道[1],如模板检测法、自适应随机Hough变换法和区间生长法等,这种方法易受光照等环境影响,适用于车道线清晰、干扰少的场景。杨志杰等提到用RGB彩色通道特种来检测结构化道路[2],而党宏社等根据车道的纹理变化来区分车道线[3],然而,这在大型或致密阴影的道路上却不那么有效,图像和一些有用的边界信息将会丢失。
车道检测的另一种思路是用适当的模型来拟合车道线。直线模型已广泛出现在各中研究中,比如Hough变换和及其变型[4]。这种模型在检测直线时比较有效,但道路出现弯曲时,其效果会大打折扣。郭磊等则提出直线-抛物线模型,针对道路图像不同区域采用不同的模型;WangYan等采用双曲线模型,用聚类算法统计左右车道的像素,估计消失点位置,再拟合出车道并估算模型参数。基于模型的方法考虑了道路的几何结构信息,用几个特定参数表述较为完整的车道区间,对路面干扰具有较好的鲁棒性,但模型的选择和求解是关键问题。
本文提出的是基于扩展搜索和贝塞尔模型拟合的车道检测和重建方法。与其它方法相比,此方法利用了图像中车道标线的连续性和平滑过渡来获得较高的搜索效率,进而提高实时性和检测率。通过小区间搜索,扩展搜索算法可以很好的适应直线和曲线车道的检测。此外,给出了车道重建质量的度量,当低于阈值时,便通过两个连接的二阶贝塞尔曲线来拟合边界。
1 检测算法
1.1 车道边界的梯度特征
一般来说,相机的仰角α比较小,而道路图像只占据了屏幕的一个部分一旦摄像机固定后,高度h和a可以变动的区间就比较小。因此,在安装相机时尽量调整角度和位置使最终的道路视野夹角最大。
在本文中,我们设视角上界坐标y0=150。由于本文主要研究有着清晰车道线的结构化道路,车道线与路面有着明显的灰度差异,这不受阴影,光照或车道线颜色的影响。在图像车道线恰当的位置截取适当尺寸的区间(如图1(a)和图1(b)所示),使这些区间有着明显的梯度差异。此外,每个区间都被车道线分成两个三角形(假设车辆行驶在一个车道上且并无换道)。摄像头的视距越远,车道线之间的距离越窄。因此,用于计算梯度特征的L×L区间在不同的距离下有不同的大小。大量实验和仿真结果表明,将该区间沿着Y轴分为3个部分的处理方式会有更好的实践效果。图1中显示:[0,y2],[y2,y1] 和[y1,y0](其中y2=45,y1=90),以及L×L=9×9、5×5和3×3。
图1 图像坐标与处理范围
图2 左右车道边界的模板
车道检测算法的实时性很大程度上依赖于搜索算法的效率。如果我们能够控制车道边界的搜索区间,使它沿着车道线向上延伸,那么实时性和检测率就会得到提升。
1.2 确定初始位置
我们选定左右两边车道线的最底端的位置为扩展搜索的初始位置。
为了降低路面其它无关信号的干扰,避免诸如箭头等路标的影响,在确定初始位置的同时,也要寻找额外的两个连续搜索区间。搜索顺序的设定要尽量保证计算时间最小。首先考虑搜索底部具有最大特征值的那个部分,然后检查它是否满足阈值条件,如果不满足,搜索的最外层的位置,如果仍不能找到初始位置,则从内到外、自底向上搜索整个区间。
1.3 扩展搜索
扩展搜索是指沿着外边界初始位置向上一个接一个搜索出区间,并覆盖小区间的方法。我们把已经搜索出的临近区间设定潜在区域,并从中选定梯度特征最大的那个区间,如果特征值大于阈值T0,那么它就是边界区间,否则更新潜在区域并继续搜索。车道线具有多种几何形式,例如直线或者曲线、连续或不连续。显然很难设计一种统一的方法来判定不同形式车道的潜在区域,因此我们必须依据不同情况分别选择相应搜索方法。
1.3.1 连续搜索
在连续搜索中,区间的梯度特征值可以由模板①或模板③计算得出,而潜在区域也可以从两个临近搜索区间的坐标变化中确定;
图3黑色方框表示我们已经搜索的n个左道区间,每个区域的坐标最低点是Pi(xi,yi)(i=1,2,…,n)。 第n+1个区间的最低点Pn+1(xn+1,yn+1) 的搜索范围可以确定为
yn+1=yn+L
xn+1∈[xn-s1,xn+(xn-xn-1)+s2]
(1)
这里L是第n个区间的尺寸,s1和s2分别是左右补偿;一般来说,在连续搜索时xi比xi-1要大,因此s1要比s2小以保证车道边界不溢出搜索区域。
图3 在左边界连接搜索中设定初始区域
类似,对于右车道边界,第n+1个区间的最低点Pn+1(xn+1,yn+1)的搜索范围可以确定为
(2)
用模板①或模板③计算潜在区域中每个区间以寻找最大特征值区间,如果特征值大于阈值,则搜索继续下一个区间。
这里要说明的是,在确定初始搜索区间的时候如果P0不存在,那么P2可以这样确定y2=y1+L,x2∈[x1,x1+20]。
1.3.2 弯曲搜索
连续搜索中的潜在区域并非总会奏效,如果出现弯道,那可能会找不到区间;在搜索无果情况下,即执行弯曲搜索,此时使用模板③或模板④,并修改潜在区域。
左车道边界点Pn+1
yn+1=yn+L
xn+1∈[xn+(xn-xn-1)-s2,xn+s1]
(3)
(4)
由于搜索区域通常只会有一个转角,故弯曲搜索可以进行直到终止条件。弯道上通常只需要检测出一个边界弯曲就可以。
1.3.3 不连续搜索
在一些情况下,车道边界可能不连续,借助分析车道线的平滑程度,我们需要计算从边界发生断点到重新出现车道线的x轴坐标距离,通常这个距离较小。
在左边界非连续搜索中设定潜在区域如图4所示。
图4 在左边界非连续搜索中设定潜在区域
这里有潜在搜索区域
yn+1=yn+L
xn+k=[xxk-ss,xxk+ss]
(5)
这里k代表从断点向上经过的区间的数量,L是相应区间的大小,ss是左右补偿,xxk是直线上起始点Pa(xa,ya)到终点Pn(xn,yn)的x轴坐标距离
(6)
1.3.4 终止条件
综合考虑处理区域的限制、车道非感兴趣区域,我们可以如下设定终止条件:①潜在区域超出可处理区间的范围;②非连续搜索时,k>10;③弯曲搜索时找到边界区域;④搜索右车道时,潜在区域包括左车道边界切线。一旦以上任一条件满足,则立即终止。
2 模型拟合与车道重建
2.1 车道边界模型
重建的目的在于准确地拟合出车道。这里选用的模型为n次贝塞尔曲线
(7)
这里bj是控制点,其中t∈[0,1];Bj,n(t) 是伯恩斯坦多项式,其中
(8)
二次贝塞尔曲线由3个控制点确定(图5(a)),控制点b0和b2分别是曲线的起点和终点,控制点b1是b0和b2两点处切线的交点,一旦b0和b2确定,曲线就只依赖于b1。
虽然说只要确定了二次贝塞尔曲线就可以确定了车道边界,但是如果车道曲率发生变化,那模型拟合的质量就会大打折扣,此时我们可以混合多个贝塞尔曲线来提高拟合效果。图5(b)中显示了两个二次曲线拟合,b1和b3具有强约束,这能创建范围更广的车道边界。
图5 不同曲率下的车道模型
2.2 车道边界拟合
通过最大类间方差法,我们可以很好地提取每个搜索区间中的边缘像素,并获得车道外边界的最低点Qi(xi,yi)(1≤i≤m,m是边界区域的个数)。当使用一个贝塞尔曲线拟合边界时,Q1是起始控制点而Qst和Qm是终止控制点。由于中间控制点即是起点和终点处切线的交点,所以我们只需找到合适的中间点就可以获得最佳的贝塞尔曲线。尽管切线没有给定,但是我们可以把起点Qst和下一个点Qst+1的连线近似为切线,同理也可得到终点Qen和Qen-1的近似切线。而且,这两条近似切线的交点也逼近真实的中间控制点,故其潜在区域也可根据交点来划分。(如图6中白色矩形,其大小为20*20)
图6 中间控制点的潜在区域
潜在区域中的每个点都能构建贝塞尔曲线,进过二值化处理,贝塞尔曲线两边的灰度差异达到最大,目标函数为
(9)
这里gt是曲线上点pt的像素值,ggt是pt的外临近点的像素值。特殊地,如果这个交点不存在,那么说明车道是直线,此时起始控制点和终止点之间的连线就是所求曲线本身。
2.3 重建质量的度量和改进
本文我们提出一种度量方法来评价车道重建的效果,如下
(10)
图7中,左边界具有较高的重建质量,他们的评价值为0.87和0.76(表1);但右边界(图7(b))的效果却不尽人意,评价值只有0.24,可以用两个贝塞尔曲线来拟合 以提高评价值,当然这也取决于实际的效果。
图7 一个贝塞尔曲线拟合的结果
边界图7(a)图7(b)左边界右边界左边界右边界R0.870.580.760.24
这里给定临界值R1,如果R (11) τkk=|tk+1-tk| (12) 两个贝塞尔曲线拟合右边界如图8所示。 图8 两个贝塞尔曲线拟合右边界 摄像头安装时高1.35 m,倾角5°,图像分辨率设为320*240,实验所用的图片信息源于对不同光照、阴影、曲度情况下的高速公路和普通城市道路的拍摄截图,车速控制在30 km/h到60 km/h。 (1)不同阴影和障碍干扰下的实验结果(图9) 复杂场景下的结果表明,本文所阐明的算法能够很好地应对道路阴影状况,进而得出扩展搜索可以避免搜索区的障碍干扰。比如085帧中的路中央有一个箭头,但是该算法所得结果依然较好。这说明,在获得车道边界点的过程中,二值化处理有良好的适应性,从而让我们在有阴影的情况下也能得到较好的梯度特征。最终实验共得1511帧,其中209帧未通过测试,检测率为86.2%。未通过测试的场景中,汽车太靠近车道线,如帧253。 图9 不同阴影和障碍下的实验结果 (2)弯道上的实验结果(图10) 这些图像序列显示了从直道转向弯道的行驶过程。结果表明,边界模型和拟合算法能够适应直道和弯道;有着较大曲率转角的车道在用两个贝塞尔曲线拟合时表现良好。最终实验共得845帧,其中76帧未通过测试,检测率为91.0%。 图10 不同曲率的弯道的实验结果 (3)不同照明场景下的实验结果(图11) 实验结果表明,该算法可以很好地适应各种照明环境,只要光照不是过弱或过强,都能得到车道的梯度特征。扩展搜索不仅可以避免阴影和障碍物的干扰,而且能够提高实时性,平均每帧处理时间为12 ms。 图11 不同照明下的实验结果 本文中主要阐明了扩展搜索算法和贝塞尔曲线模型。其中扩展搜索利用车道的平滑性和可延展性,通过小区间搜索的方式,成功地完成了连续、非连续、弯曲等情况下的搜索任务,从而检测出车道位置。而贝塞尔曲线则能够很好地拟合直道和弯道,在曲率变化较大的地方也可以选用两个贝塞尔曲线来应对。在现实中的结构化道路上实测结果是良好的,算法在应对复杂场景也具有鲁棒性和实时性。同时,那些没有通过测试的场景也说明问题所在,比如车辆靠近车道线时;通过反复分析失败案例,我们可以改进原有算法以得出更好的方案。在非结构化道路上的检测方案则有待进一步的学习和研究。 [1]PENG Yanzhou,GAO Hongfeng.Research on highway lane detection method[D].Luoyang:University of Science and Technology of Henan,2015(in Chinese).[彭艳周,高宏峰.高速公路车道检测方法研究[D].洛阳:河南科技大学,2015.] [2]YANG Zhijie.Lane detection based on RGB channels[J].Electronic Science and Technology,2015,28(1):95-98(in Chinese).[杨智杰.基于RGB彩色通道的结构化道路车道线检测[J].电子科技,2015,28(1):95-98.] [3]DANG Hongshe,GUO Chujia.Lane marking detection method based on texture feature[J].Journal of Chongqing Jiaotong University(Natural Science),2014,10(5):116-119(in Chinese).[党宏社,郭楚佳.一种基于纹理特征的车道线检测方法研究[J].重新交通大学学报自然科学版,2014,10(5):116-119.] [4]CHEN Jun,DU Huanqiang,ZHANG Changjiang.Research of lane detection based on progressive probabilistic Hough transform[J].Bulletin of Science and Technology,2016,32(3):194-199(in Chinese).[陈军,杜焕强,张长江.基于概率霍夫变换的车道检测技术研究[J].科技通报,2016,32(3):194-199.] [5]PENG Hong,XIAO Jinsheng,CHENG Xian,et al.Lane detetion algorithm based on extended Kalman filter[J].Journal of Optoelectronics Laser,2015,26(3):567-574(in Chinese).[彭红,肖进胜,程显,等.基于扩展卡尔曼滤波器的车道线检测算法[J].光电子·激光,2015,26(3):567-574.] [6]CHEN Gongchun,JIA Zhixun.Algorithm for lane detection based on visual sensor[J].Transducer and Microsystem Technologies,2014,11(33):125-128(in Chinese).[陈功醇,贾志绚.基于视觉传感器的车道检测算法[J].传感器与微系统,2014,11(33):125-128.] [7]SHEN Zhenqian,MIAO Changyun,GENG Lei,et al.Vechicles detection and tracking algorithm for complex nighttime traffic scene[J].Journal of Transportation Systems Engineering and Information Technology,2016,16(1):46-63(in Chinese).[沈振乾,苗长云,耿磊,等.夜间复杂交通场景中的车道线检测和跟踪[J].交通运输系统工程与信息,2016,16(1):46-63.] [8]Wu PC,Chang CY,Lin CH.Lane-mark extraction for automobiles under complex conditions[J].Pattern Recogn,2014,47(8):2756-2767. [9]Nan ZX,Wei P,Xu LH.Efficient lane boundary detection with spatial-temporal knowledge filtering[J].SENSORS,2016,16(8):1276. [10]Niu JW,Lu J,Xu ML.Robust lane detection using two-stage feature extraction with curve fitting[J].Patern Recogition,2015.59(SI):225-233. [11]Kawabata K,Ma L,Xue J.A path generation method for automated vehicles based on Bezier curve[C]//IEEE/ASME International Conference on Advanced Intelligent Mechatro-nics,2013:991-996.3 实验结果与分析
4 结束语