基于特征点提取的弯道识别算法研究

2014-02-08 05:43葛平淑徐国凯宫长明赵秀春
大连民族大学学报 2014年1期
关键词:拐点像素点车道

葛平淑,徐国凯,宫长明,赵秀春

(大连民族学院机电信息工程学院,辽宁大连 116605)

高速公路弯道是交通事故的多发路段,其事故发生概率大且事故严重程度高。单位里程的公路,弯道上的事故次数明显高于直线路段发生的事故数,这是因为车辆在弯道路段易发生侧滑甚至侧翻。根据《中华人民共和国道路交通事故统计年报》,2006年,弯道路段发生的事故数量占全部交通事故的9.31%,从事故严重程度来看,受伤人数和死亡人数分别占事故总人数的11.2%和12.23%,直接经济损失占全部交通事故损失的11.47%。因此,保证车辆在高速公路弯道路段的行驶安全性至关重要,对于汽车安全辅助驾驶技术而言,能够准确识别弯道边界并判断道路弯曲方向是实现车道偏离预警、车道保持等主动安全功能的技术关键。

目前,国内外弯道检测的相关研究主要采用基于道路模型的检测方法,常见的道路模型主要有二项式模型[1]、抛物线模型[2]、双曲线模型[3]、直线 -抛物线模型[4]、广义曲线模型[5]等。文献[1-5]均采用基于道路模型的传统方法,研究了弯道分道线的检测提取算法。该方法大致可分为两个基本步骤:一是建立道路的曲线模型,二是求解模型的数学参数。上述传统方法对特定的结构化道路或等级较高的公路有较好的检测效果,但一种车道模型很难普遍应用于多种不同的道路,适用性较差。在国内,曲线道路边界的识别技术还不成熟,主要原因在于曲线识别的模式复杂、情况多样、道路模型难以统一,并且由于算法的复杂性,很难满足准确性和实时性的要求[6]。因此,本文提出了一种基于特征点提取的弯道车道线检测新算法,在提取车道线直线段上的特征点后,根据道路弯曲方向提取曲线段上的特征点,并对车道线候选特征点进行滤波,最终逐点连线分段拟合出弯道车道线。该方法主要基于以下考虑:①弯道图像的近景部分可以近似看成是直线道路;②由微分法可知,长度很短的曲线段,可看成是直线段[7]。另外,文中方法与基于道路模型的传统方法的区别在于,省略了曲线模型建立和数学参数求解的复杂过程,通过依次连接车道线特征点,分段拟合实现弯道的识别和二维重建,算法简单、实时性高,且普遍适用于一般等级的高速公路弯道路段。

1 图像的获取和预处理

车辆在行驶时需要的周围道路环境信息,是通过机器视觉传感器来获取的。在车辆的正前方安装CCD图像传感器获取视觉信息,得到一系列数字图像。本实验用VC++驱动彩色光学CCD图像传感器获取图像并对图像进行预处理,最后转换为二值图。

首先对彩色图像进行灰度化处理,再采用双边滤波对灰度图像进行平滑,选用基于大津法的自适应阈值算法[8]进行阈值分割,然后将分割所得二值图和滤波所得灰度图进行逻辑与运算,这样在对图像进行二值化的同时保留了原图和背景中相同的部分,去除了不同的部分。实验证明,用上述方法对图像进行预处理,能够将道路边界较清晰的突显出来,且对不同的光照条件和天气变化具有良好的适应性。实验结果如图1,(a)为原始图像,(b)为对应预处理后的图像。从左往右依次为正常光照、阴影遮盖和阴雨干扰下的道路图像。

图1 图像预处理结果

2 弯道标志线检测

2.1 道路模型的建立

根据CCD的标定参数及其视距,参考高速公路设计和建设标准,从大量的实验道路图像中得出结论:车辆前方40 m视距以内的弯道分道线在图像上都可近似为直线[9]。由实验道路图像可知,在大多数情况下该近似模型都能成立。通过上述分析可建立如图2的弯道模型。

图2 弯道模型

在准确识别弯道边界的基础上,为缩短车道线识别的时间,本文提出了一种基于特征点提取的弯道标志线识别算法。该算法首先利用Hough变换获得左、右车道线的两直线方程;接着分别确定对应车道线直线段上的特征点;然后按照文中给出的判断准则求解道路的弯曲方向;从而根据弯道方向搜索曲线段上的特征点,并对车道线候选特征点进行滤波;最终逐点连线分段拟合当前车道线,进而实现车道线的二维重建。整个算法的流程如图3。

图3 弯道标志线识别算法流程图

2.2 Hough 变换

弯道分道线的近似直线段一般位于道路图像的下半区域,因此,将图像下方1/2区域定为预搜索区域。这样可减少图像控件中被投票的目标点数,缩小Hough变换的投票空间,在一定程度上提高算法的实时性和稳定性。

在此基础上,为缩小搜索范围,减少算法时间,文中将左、右车道线的检测分开处理。由经验可知,左车道线的直线倾角angleleft一般小于90°,而右车道线的直线倾角angleright通常情况下为90°~180°。为进一步减少搜索时间,对近百帧不同道路环境下图像的试验结果进行统计分析,最终将 angleleft确定在40°~70°之间,同 时 将 angleright确定为 110°~160°,上下浮动各5°。此时,左、右车道线的斜率分别设为kl、kr,如图4,其中(a)为左车道线模型,(b)为右车道线模型。

图4 车道线模型

本文采用上述Hough变换方法对Sobel算子运算后的图片进行处理,通过比较提取Hough变换后参数平面上的峰值点,由此分别获得图像中左、右车道线直线段的方程。

2.3 确定直线段的特征点

根据左、右车道线直线段的方程,可分别确定道路图像中两车道线的最低点pointbottom和最高点pointtop,即车道线直线段的特征点。一般情况下,在图像中左车道最低点的横坐标为0,最高点的纵坐标为0,对右车道而言,最低点的纵坐标通常为图像最大高度Height,最高点的横坐标为0。直线段上特征点的确定示意图如图5。

图5 直线段特征点的确定

另外,为保证直线上段特征点提取的准确性,这里考虑了特征点溢出图像的情况。左车道线特征点的溢出情况如图6。其中,图(a)为最低点pointbottom溢出的情况,此时理论上的最低点应为A1,但由于A1超过图像的最大高度,溢出图像边界,故需将实际最低点设定为该车道线与图像最大高度处的交点A2;图(b)则表示最高点pointtop溢出的情况,此时B1应为理论最高点,但鉴于B1已超过图像的最大宽度,因此将该车道线与图像最大宽度处的交点B2定为实际最高点。同时,右车道线特征点的溢出情况如图7。其中,图(a)表示最高点 pointtop溢出,图(b)表示最低点pointbottom溢出。同理,此时需将C2设定为右车道线的实际最高点,D2设定为右车道线的实际最低点。在获得左、右车道线的两直线方程后,两直线的交点pointmeet也随之确定。

图6 左车道线特征点溢出情况

图7 右车道线特征点溢出情况

2.4 判断弯道方向

(1)初步确定两车道线的候选拐点。将车道线最低点pointbottom与两车道线直线部分交点pointmeet间的直线段设为预搜索区域,从最低点处按规定步长从下往上依次扫描。当满足设定的停止准则时,搜索停止,此时的像素点可初步确定为该车道线上直线段与曲线段的交点,即所谓的拐点pointtemp。实验中当搜索到一个黑色像素点,且已搜索到的白色像素点大于指定数量时,搜索停止。若任一车道线的拐点不能按上述搜索条件确定,则令该车道线拐点的纵坐标与另一已知车道线拐点的纵坐标相等,从而初步确定该车道线的拐点。

(2)对车道线候选拐点进行滤波。为保证定位准确需对上述所得的车道线候选拐点进行滤波,方法为:首先确定实验图像中左、右车道线候选拐点中的较高点,将该点与另一车道线候选拐点间的直线段作为滤波区域,然后在该区域自上而下依次扫描,当搜索到第一个白色像素点时,停止搜索,此像素点即为滤波后所得的该车道线的准确拐点。

(3)判断车道线弯曲方向。将左、右车道线的拐点pointtemp与两车道线直线段交点pointmeet间的区域设为搜索区域,分别在各车道线区域从下往上扫描,在图像每一行中,从对应车道线直线方程上的点开始,分别向左、右两侧各遍历5列,并统计直线段两侧白色像素点的个数。其中,将左车道线左、右两侧白色像素点的个数分别记为numll、numlr,同时将右车道线左、右两侧白色像素点个数分别记为numrl、numrr。

其中N为常数,试验中设为10。

车道线弯曲方向求解的流程图如图8。

图8 车道线弯曲方向求解流程图

2.5 弯道标志线的重建

在已知车道线弯曲方向和车道线拐点的前提下,设定曲线段上特征点的搜索准则:从当前车道线直线方程上的点开始,向该车道的弯曲方向遍历N列,当搜索到第一个白色像素点时停止扫描,实验以此确定各车道线曲线段的特征点。例如,如果当前车道是左弯道,在各车道线拐点point-temp与两车道线直线部分的交点pointmeet间从下往上依次扫描,在图像每一行中,从对应车道线直线方程上的点开始,向左遍历10列,当搜索到第一个白色像素点时,即停止搜索。此点即为左弯道对应曲线段在该行的像素点。另外,根据大量试验得出,此时两直线段交点pointmeet的纵坐标不应小于0.4倍图像高度。由上述方法同理可得右弯道分道线上曲线段的系列特征点。

在这里,试验也没有采用传统方法中先根据求解所得的数学参数确定道路曲线模型,再对车道线建立对应曲线模型进行二维重建[10]的模式,而是调用OpenCV库的cvLine函数依次连接车道线特征点,分段拟合并重建当前车道的直线段和曲线段。由于车道线各相邻特征点距离仅1-2个像素,根据微分原理可得到相对平滑的分道线曲线。

3 实验结果

为了测试文中方法的准确性和鲁棒性,试验使用性能为 AMD Sempron(tm)×2、2.41GHz CPU、1.0G内存的PC机对道路图像进行测试,图像大小为320*240(像素)。实验对不同形状车道线的识别结果进行统计分析,统计结果见表1。

表1 对不同形状道路识别实验结果统计

结果表明,该算法不仅能准确识别不同形状的弯道车道线,而且对直线车道也有良好的识别效果,平均识别率约为91.72%。不同车道线形状下的车道识别结果如图9,上行为原始图像,下行为识别结果,图像上绿色线段为车道线重建结果,红色文字表示车道线弯曲方向。

图9 不同车道线形状下车道识别结果

另外,对文中方法与基于道路模型的传统方法的实时性进行了比较,实验结果表明,其算法时间较传统方法减少了27 ms,同时识别准确率提高了20%。随机抽取150帧320*240的弯道图像进行试验后的统计结果见表2。为进一步验证文种方法的有效性,实验又选取了部分存在不同干扰的道路图像进行测试,识别结果现举例如图10,上行为原始图像,下行为识别结果。

表2 两种方法的实验比较

图10中,(a)列是存在地面路标干扰时的原图和识别结果,(b)列有大面积阴影遮盖的原图和识别结果,(c)列为存在车道线遮挡时的原图和识别结果,(d)列是阴雨天气下的原图和识别结果。从识别结果可以看出该方法识别虚线型分道线的有效性。

图10 不同干扰下车道线识别结果

4 结论

为降低高速公路弯道处的交通事故发生率,研究了一种基于特征点提取的高速公路弯道识别算法,采用准确提取车道线直线段和曲线段上各相关特征点的方法,逐点连线分段拟合从而实现弯道路段分道线的识别与重建。通过对大量的道路图像进行验证测试,在多数情况下,该算法都能准确区分弯道的方向,而且计算复杂度均在应用要求规定的范围内,但该算法仅限于识别当前车辆所在车道的分道线。为保证车辆在高速公路变换车道时的安全性,需改进文中方法以实现多车道分道线的检测与重建。另一方面,为实现弯道路段的车道偏离预警,还需要实时计算弯道的曲率半径,进而结合控制理论确定车辆在弯道处的临界安全车速和合适的汽车方向盘转角,以此提高驾驶的安全性。这将作为下一步研究的重点。

[1]CHIU K Y,LIN S F.Lane detection using color-based segmentation[C]∥Proceedings of IEEE Intelligent Vehicles Symposium,Washington,DC:IEEE,2005:706-711.

[2]WANG Y F,DAHNOUN N,ACHIM A.A novel system for robust lane detection and tracking[J].Signal Processing,92(2012),319-334.

[3]KHALIFA O O,KHAN I M,ASSIDIQ A M.A hyperbola-pair based lane detection system for vehicle guidance[C] ∥World Congress on Engineering and Computer Science,San Francisco,CA,2010:585 -588.

[4]JUNG L R,KELBER C R.A lane departure warning system based on a linear- parabolic lane model[C]∥IEEE Intelligent Vehicles Symposium,2004:891-895.

[5]刘富强,张姗姗,朱文红,等.一种基于视觉的车道线检测与跟踪算法[J].同济大学学报:自然科学版,2010,38(2):223 -229.

[6]马雷,武波涛,李昊.基于蚁群算法的弯曲道路边界的识别[J].兵工学报,2009,30(9):1236 -1241.

[7]许波文,张建明,刘志强.基于分段归类拟合算法的车道检测系统[J].计算机工程与设计,2009,(30)20:4766-4769.

[8]管欣,贾鑫,高振海.基于道路图像对比度-区域均匀性图分析的自适应阈值算法[J].吉林大学学报:工学版,2008,38(4):758 -763.

[9]刘涛,黄席樾,周欣,等.高速公路弯道识别算法[J].重庆大学学报:自然科学版,2003,26(7):24-27.

[10]高德芝,段建民,杨磊,等.应用多阶动态规划的车道线识别方法[J].机械工程学报,2011,47(8):141-145.

(责任编辑 刘敏)

猜你喜欢
拐点像素点车道
北斗+手机实现车道级导航应用
避免跟车闯红灯的地面车道线
基于局部相似性的特征匹配筛选算法
浅谈MTC车道改造
秦国的“拐点”
新拐点,新机遇
恢复高考:时代的拐点
基于5×5邻域像素点相关性的划痕修复算法
基于canvas的前端数据加密
《廉洁拐点》