【摘要】国内外学者对环境感知开展了深入的研究,车道线参数是所要感知的重要信息之一。车道线检测常采用视觉传感器,将俯视图转换成灰度图,寻找积分投影图中代表车道线的波峰位置,在灰度图中定位搜索窗口位置,记录窗口内部点的位置,进行二次曲线拟合,得到车道线方程。
【关键词】车道线,逆透视图,梯度差值法,颜色空间LUV,信息融合
1 图像预处理算法
在结构化道路上,一般会有较为明显的车道线标记。车道线颜色多为白色,也有黄色,在灰度图中,车道线的灰度值与深色路面的灰度值有较大差异,通过设定二者差值的阈值,较易分离车道线信息。但对于水泥路等浅色路面或车道线不清晰的情况而言,仅仅依靠灰度值差异来分离,可能达不到理想效果。本文提出的车道线分离算法,充分考虑了多种路面情况,采用了两种方法对图像进行预处理,即灰度图的梯度差值法和颜色空间LUV法。
1.1 梯度差值法
本算法基于IPM变换得到的俯视图,设置逆透视图分辨率为640x480。由于光照强度对于灰度图的影响很小,因此为了提高不同光照下算法的鲁棒性。
由于车道线的灰度值是高于路面的,即在车道线与路面交界处,梯度会发生突变。根据这一特性,只需对比相隔大约一个车道线宽度距离的点的灰度值,若二者差值满足设定阈值,则认为该点是车道线内的点,这就是梯度差值法。
(3.1)
其中为阈值化后图像中的第i行,第j列像素坐标处的灰度值。效果如所示:
图1.1 梯度差值法处理效果图
如上图所示,梯度差值法已将车道线较完整的分离出来。但同一阈值,对于不良路面的处理效果如图:
图1.2 梯度差值法不足之处
对于不良路面的处理,由于图像预处理时阈值的选择过大,导致路面左边车道线信息被过滤掉。由于路面条件恶劣,甚至无论怎么调整阈值,分离效果都不会理想。如图,若直接用这个分离图对车道线进行检测,显然会缺失掉左边那条线。为了弥补梯度差值法效果受限于路面条件的缺点,本文引入颜色空间LUV进行处理。
1.2 颜色空间LUV
颜色空间LUV,是基于人类对颜色的感知创建的,继承了Lab特性的同时,更加符合人类的视觉感受。可以考虑设置表示亮度的L通道阈值,对低亮度进行抑制。在极端路面条件下,车道线的亮度可能较低,而阈值为定值,可能会把车道线过滤掉;在非极端路况下,二者亮度差较大,所以设置的阈值不会受到路面情况变化的影响。分离效果如图:
图1.3 颜色空间LUV对于淡色路面的处理
图1.4 颜色空间LUV对于双黄线的处理
图1.2中,左边车道线分离失败,在设定了阈值参数后的LUV颜色空间下,成功分离了车道线。如图1.4右边的LUV处理结果图,最左边车道为双向车道的分界线,由于LUV对于黄色车道线敏感,导致将地面横向标志线当成了车道线分离出来了,这可能会造成车道线位置定位不准确的问题,继而造成车道线检测失败。
2 定位车道线位置
2.1 信息融合的载体选择
针对这两种方法处理图像的积分投影图,本文选择垂直积分投影图作为信息融的载体,统计图中每列的不为0的像素点个数,作为该列所在行的纵坐标。通过寻找图中代表车道线的波峰位置,定位后文设计的“动态搜索窗口”。
2.2 信息融合
弯道路段,车道线在近处和远处的积分投影图波峰横坐标不相同;在换道过程中,直线车道会在俯视图中呈现一定角度偏转,波峰位置与弯道路段情形一样。因此,不能以整体图像计算垂直积分投影图,否则会造成垂直积分投影图的波峰位置失去意义。本文将用两种方法处理后的图,自下而上均分为4个部分,针对每个部分做相同处理,以下均以图像最底层那部分为例。处理效果如图所示:
图2.1 信息融合后的垂直积分投影图
图中上部为梯度差值法处理结果,其右边为垂直积分投影图;中间为颜色空间LUV法处理效果图,其右边为垂直积分投影图;下部为信息融合后的垂直积分投影图。从波峰高度来看,显然图中车道线信息得到了加强。
3 车道线检测
3.1 波峰位置动态更新算法
设定车辆初始位置的路面条件良好,车道线缺失、破损等只存在于行驶途中。由于帧数的连续性,记录前一帧与当前帧每边车道线波峰横坐标的差值,表示某一边车道线前后帧位置变化幅度。以车辆所在车道的两条车道线为例,分别左右车道线前后帧的变化幅度为和;记录每一帧左右两边波峰横坐标差值为,表示俯视图中的车道宽度。设上一帧两条定位准确的车道线的波峰位置横坐标分别为和,当前帧的车道线出现了车道线模糊不清,且附近有强干扰的情况。用所述图像处理算法,得到此帧车道线波峰位置横坐标为和。
(1.1)
(1.2)
(1.3)
若,即当前帧代表的某一边车道线波峰横坐标相较于前一帧的变化幅度,超过了由上一帧波峰横坐标度量的车道宽度的1/4。可以认为,相邻帧图片经过处理后,得到的积分投影图中代表车道线波峰的横坐标变化幅度应该不大。由于车道中心处可能有道路导向箭头标志线,而干扰能力最强的就是标志的主干部,取车道宽度的1/4就可以有效的避开可能会存在的强干扰。接下来分情况讨论:
1.且
此情况说明,代表右边车道线的波峰横坐标变化幅度满足不等式,即当前帧处理得到的右边车道线变化幅度在可信范围内,记录此次变化幅度为,令当前帧的波峰位置作为下一帧的比较对象;由不等式得,左边车道线的波峰横坐标变化幅度较大,可能此处的路面突然受到了干扰或者缺失了,从而出现了误检现象。由于车辆不会完美的沿着车道中心线直线行驶,如果直接沿用上一帧的波峰位置,随着车辆的前进,以定位车道线位置的可信度会越来越低。考虑到车道线是相互平行的,左右两边的变化幅度相近。已知代表右边车道线的波峰位置可信,所以可以右边的变化幅度作为左边波峰的变化幅度,则根据如下公式更新左边车道线的波峰位置:
(1.4)
对于且的情况与之类似,不再赘述。
2.且
由不等式可知,代表左右两边车道线的波峰位置都定位失败了,说明此时道路条件突然变的恶劣,或是遇到了强干扰,如强光或大面积遮挡等。在垂直积分投影图层面看,往往会出现大量噪音或波峰数量很少甚至没有的两种极端情况,此时,以前一帧的波峰位置与前一帧的变化幅度之和,更新为当前帧的波峰位置,即:
(1.5)
(1.6)
利用这一算法的处理效果图如下:
图2.2 更新波峰位置效果图
3.2 拟合车道线
确定了代表车道线所在位置的波峰后,根据积分图中代表车道线的波峰位置对车道线进行拟合,就可得到车道线方程。具体步骤如下:
1.设计动态搜索窗口
该窗口的主要任务是在逆透视图的灰度图中搜索车道线上的点。对于窗口位置的确定,是根据上文分析的积分图中代表车道线的波峰位置确定。波峰位置每一帧都是动态更新的,因此,此搜索窗口也是动态的。对于窗口的尺寸选择,若过大,可能会引入不必要的噪音干扰。本文设定尺寸为40x120。窗口宽为40个像素,中心线为确定的波峰横坐标,高为120像素。
2.记录点坐标
搜索窗口根据波峰位置定位到灰度图中的某一部分,认为该部分就是车道线所在位置,则落入窗口内的点都是车道线点。在窗口内搜索灰度值不为0的点,记录这些点的坐标位置。
本文一开始就声明,将逆透视图自下而上均分4个部分,且只以第一部分为例,即图像最底层那部分。在循环处理了这4个部分后,将动态搜索窗口记录的点,以纵坐标递增规则重新排序,排序后的点坐标用作已知条件,计算相关参数。
3.二次曲线拟合
本文选定车道线拟合方程为:
(1.7)
其中,x,y为动态搜索窗口记录的点的横纵坐标。
对于参数、、可以通过最小二乘法求解。在计算出最优解后,式(1.7)即为已知方程,这就是车道线的二次曲线方程。效果如图:
参考文献:
[1] 石林军,余粟.基于多约束条件下的霍夫变换车道线检测方法[J].计算机测量与控制,2018,26(09):9-12+38.
[2] 狄帅. 车道偏离预警中车道线识别算法研究[D].河南工业大学,2013.
[3] 孙宇飞. 高级辅助驾驶中的车道线检测研究[D].北京交通大学,2018.