基于Catmull—Rom样条曲线的弯曲车道线检测研究
2015-08-19何鹏高峰魏厚敏
何鹏++高峰++魏厚敏
摘要:车道线检测是智能辅助驾驶系统的关键技术之一。采用图像处理技术检测道路上的弯曲车道线,详细介绍了感兴趣区域的选取,背景减除,二值化提取车道线信息,结合Hough变换和Catmull-Rom样条曲线检测弯曲车道线。结果表明,基于Catmull-Rom样条曲线的算法可以有效地检测弯曲车道线。
关键词:智能车辆;弯曲车道线;检测;Catmull-Rom 样条曲线;机器视觉
中图分类号:TP391 文献标识码:A
Study on Curve Lane Detection Using Catmull-Rom Spline
He Peng1, Gao Feng1, Wei Houmin2
(1. School of Transportation Science and Engineering, BeiHang University, Beijing 100191, China;
2. Experimental Research Department of Emission and Energy-Saving,
China Automotive Engineering Research Institute, Chongqing 401122, China)
Abstract: Lane detection is a crucial component of automotive driver assistance system. This paper developed a vision based algorithm of detecting curve lanes, which exploits defining region of interest, subtracting background, extracting lane information by binarization, detecting curve lanes by combining Hough transform and Catmull-Rom spline. The experimental results indicate that this algorithm is effective.
Key words: intelligent vehicle; curve lane; detection; Catmull-Rom spline; computer vision
随着国民经济的快速发展和人民生活水平的日益提高,汽车保有量和驾驶员数量不断增加,汽车已经成为人们生活中不可替代的交通工具,汽车的安全、舒适、节能、环保越来越成为人们关注的焦点。环境保护和不断提高的安全技术要求对汽车工业产生了极大的影响。解决此类问题的一个很好的手段是信息技术。信息技术的发展极大地推动了智能交通系统的发展,智能车辆是智能交通系统的重要组成部分,是集环境感知、规划决策和智能辅助驾驶等功能于一体的综合智能系统,代表了未来车辆的发展方向,具有广阔的应用前景。
汽车在给人们带来方便的同时,随之而来的问题也日趋凸显,那就是随着机动车的增多,交通事故频繁发生,由此导致的人员伤亡和财产损失数量惊人。近年来交通事故已经成为世界各国面临的严峻问题。我国更是世界上交通事故死亡人数最多的国家。研究表明,20%的交通事故是由于驾驶员注意力分散(接听电话、与乘客聊天、设置GPS或车载娱乐系统)引起的。鉴于驾驶员注意力分散引起交通事故带来的巨大损失,智能辅助驾驶系统的研发成了当今汽车学术界与工业界的热点。在智能辅助驾驶系统中,对于路面车道线的检测是非常重要的一环。车道线是最基本的交通标志,也是汽车行驶的基本约束。根据卡梅隆大学的统计,美国和日本每年所有致命的交通事故中44%是与车辆偏离车道线有关的。同时,车道偏离也被视为车辆侧面撞击事故的主要原因。因此,车道线的自动检测,将有效地提醒驾驶员车辆行驶路线,避免车道偏离所导致的意外碰撞,减少事故的发生率[1-2]。
基于机器视觉的车道线检测是这一问题的主要解决方案。通常是在车辆的前挡风玻璃处安置一个光轴方向与车辆行驶方向一致的摄像头,通过对捕捉到的图像进行处理实现车道线检测。关于对直线车道线的检测前人已有诸多研究,通过基于Hough变换的算法可以有效、精确地实现直线车道线的检测[3-5]。前人对于弯曲车道线检测的研究相对较少,文献[6]和[7]应用LMedSquare曲线拟合技术进行弯曲车道线检测,此技术在拟合时需要数据点较多,计算量较大。文献[8]采用三阶Bezier曲线技术进行弯曲车道线检测,由于Bezier曲线不通过控制点,其控制点的确定难度较大。本文重点针对弯曲车道线,通过结合Hough变换和Catmull-Rom样条曲线,并且根据弯曲车道线的先验知识通过确定较少的控制点精确地实现了弯曲车道线的检测。
1 检测算法概述
汽车在公路上行驶时,所遇到的公路形态包括:直道、直道进入弯道、弯道、弯道进入直道。对于任何一种情况,由于弯道的半径远大于视距,近处都可以视为直道。因此本文在进行弯曲车道线检测时,对弯曲车道线进行分段拟合,近端区域采用直线描述,远端区域采用样条曲线描述。
图1 算法流程
图1为弯曲车道线的检测算法流程图。首先通过对原始灰度图像的水平投影确定感兴趣区域;通过路面图像直方图确定路面背景灰度值,并将其从感兴趣区域减除;采用Otsu方法进行二值化处理;通过Hough变换确定近端区域直线,并确定弯曲车道线的初始定位;根据弯曲车道线的几何特征确定样条曲线的控制点;采用Catmull-Rom样条曲线确定远端曲线,完成弯曲车道线检测。
2 图像预处理
车载摄像头获取的车辆前方原始图像中一般包含车道线、天空、树木、指示牌、隔离带等信息。为有效地提取原始灰度图像中的车道线信息,需要首先对图像进行预处理,包括感兴趣区域确定、背景减除和二值化[3]。
2.1 感兴趣区域
图2 原始图像
图3 水平投影图
由于车载摄像头获取的图像中经常包含相当一部分天空(图2),这些多余的部分会增加图像的处理时间,影响检测算法的实时性,因此需要根据实际情况确定图像的有效处理区域(感兴趣区域)。感兴趣区域可以通过对原始灰度图像的水平投影来确定。
。 (1)
式中,I(x, y)为x列y行处像素的灰度值;W为图像宽度,p;PH(y)为y行的水平投影值。图3为图2的水平投影图。
通过对水平投影图从上至下寻找水平投影值快速减小的位置可以确定感兴趣区域的上边界。图4为确定的感兴趣区域。
图4 感兴趣区域
2.2 背景减除
为减小图像中无效背景信息对车道线信息提取的干扰,提高图像二值化的精确性和检测算法的鲁棒性,在图像二值化前需要减除路面背景灰度值。由于图像的最下方主要为路面,可以通过图像最下方10行的灰度直方图确定路面背景灰度值。图5为对图4进行背景剪除后的结果,可以发现,背景剪除使图像中车道线和背景之间的对比加强,这有利于下一步二值化提取车道线信息的实现。
图5 背景减除后的图像
2.3 二值化
通过对图像的二值化可以将有效前景(车道线)信息和无效背景(路面等)信息区别开来。二值化的阈值可以通过Otsu方法确定。
。 (2)
式中,H为图像高度,p; W为图像宽度,p;N1 为灰度值大于二值化阈值T的前景图像像素数;N2 为灰度值小于T的背景图像像素数;μ1 前景图像的平均灰度值;μ2 为背景图像的平均灰度值;g为类间方差。通过使类间方差g得到最大值可以确定二值化阈值T。
图6为对图5进行二值化后的结果
图6 二值化图像
3 Hough变换
Hough 变换是Hough于1962年提出的一种形状匹配技术,运用两套坐标系之间的变换来检测平面内的直线和有规律曲线,这种变换具有在变换空间(Hough空间)内所期望的点集凝聚在一起形成峰值点的特性。它将原始图像中直线或给定形状的曲线变换成一个点,即原始图像中直线或给定形状的曲线上的所有点都集中到Hough空间的某个点上形成峰值点。这样就把对原始图像中的直线或给定形状曲线的检测问题,变成寻找Hough空间中的峰值点问题。平面中任意一条直线可以用两个参数ρ和θ完全确定(图7),其中ρ为该直线到原点(图像的左下侧角点)的距离,θ为该直线的方位,其函数关系通过式(3)表述。
图7 Hough变换示意图
。 (3)
为减少计算时间,根据车道线的几何特征,在确定近端区域左侧直线时将寻找范围限定在-75°<θ<-30°范围内,在确定近端区域右侧直线时将寻找范围限定在30°<θ<75°范围内。图8中两条绿色直线为通过Hough变换确定的左右两侧近端区域直线。可以发现,通过Hough变换确定的直线较好地拟合了弯曲车道线的近端区域部分。
图8 近端区域直线
4 Catmull-Rom样条曲线
4.1 Catmull-Rom样条函数
Catmull-Rom样条曲线是从三次曲线方程演变而来的,最早被用来描绘曲线和曲面,近几年它的应用愈加广泛,包括计算机图形、图像处理和模式识别等。
如果已知两点P0、P1和这两点切线的斜率P0、P1,可以确定一条过两点的三次曲线:
。 (4)
根据两点位置和斜率可得:
。 (5)
求解式(4)和式(5)可得:
。(6)
式中, t∈[0,1]。
图9 Catmull-Rom样条曲线
推广到一般情况,对于平面上给定的N个点(P0,P1,P2,···,PN-1),只要已知每个点切线的斜率就可以利用这种方法确定一条经过所有点的曲线。但是由于某一点切线的斜率一般是未知的,通常用其前后两点的连线方向(Pi+1-Pi-1)/2来近似代替。由此可得Catmull-Rom样条函数为[9-10]
。(7)
4.2 Catmull-Rom样条曲线控制点
通过对Catmull-Rom样条曲线(图9)分析可以发现,Catmull-Rom样条曲线除首尾两点之外经过所有控制点;其与单一的二次或三次曲线相比,可以形成任意形状的曲线,更适于拟合弯曲车道线。
由于Catmull-Rom样条曲线不通过首尾两点,一般假设最先的两个控制点和最后的两个控制点是相同的,为拟合弯曲车道线就需要在中间再增加一个控制点。因此,通过两组(每组3个)控制点可以确定左右两条样条曲线,即通过(PL0,PL1,PL2)确定左侧车道线的远端区域曲线,通过(PR0,PR1,PR2)确定右侧车道线的远端区域曲线。两组控制点在图6所示的车道线信息(白色像素点)中确定。
图8中两条直线的交点O为直线车道线的消失点,根据弯曲车道线的几何特征和透视原理可知,弯曲车道线的消失点(交点)位于过点O水平线的下方。将图8中过点O水平线下方距离水平线最近的一点定义为左右两条样条曲线的第一个控制点PL0和PR0。将图8中左右两侧车道线位于两条直线的最上方一点,即左右两侧车道线偏离两条直线的第一点定义为左右两条样条曲线的第3个控制点PL2和PR2(图10)。
由于在消失点附近左右两条车道线相距很近,为有效准确地确定两条样条曲线的第2个控制点,需要分别确定仅包含单侧车道线的区域。根据弯曲车道线的几何特征和透视原理可知,左侧车道线位于直线PL2O左侧,直线PL0 PL2右侧;右侧车道线位于直线PR2O左侧,直线PR0 PR2右侧。图10中三角形PL0C PL2中仅包含左侧车道线,四边形AB PR2C中仅包含右侧车道线。根据Catmull-Rom样条曲线控制点的切线斜率特征,将三角形PL0C PL2中距离直线PL0PL2最远的一点定义为PL1,将四边形AB PR2C中距离直线PR0PR2最远的一点定义为PR1。确定两组控制点后,可以通过式(7)确定左右两条样条曲线。
图10 Catmull-Rom样条曲线控制点
5 检测结果
图11 弯曲车道线检测结果
图12 弯曲车道线检测结果
图11和图12中的两条红线为采用本文建立的检测算法在不同道路环境下检测出的左右两侧弯曲车道线,可以发现结合Hough变换和Catmull-Rom样条曲线的检测算法可以有效地检测出弯曲车道线。
6 结论
本文提出一种基于机器视觉的弯曲车道线检测算法,首先确定感兴趣区域,然后通过背景减除和二值化提取车道线信息,最后结合Hough变换和Catmull-Rom样条曲线检测弯曲车道线。检测结果令人满意。
参考文献:
[1] 毛世榕,胡桂明,胡进. 基于机器视觉的车道线检测算法 [J]. 装备制造技术,2011,39(9):59-61.
Mao Shirong, Hu Guiming, Hu Jin. Machine Vision-Based Lane Detection Algorithm [J]. Equipment Manufacturing Technology, 2011, 39(9): 59-61. (in Chinese)
[2] 鞠乾翱,应忍冬,蒋乐天. 基于机器视觉的快速车道线识别 [J]. 计算机应用研究,2013,30(5):1544-1550.
Ju Qianao, Ying Rendong, Jiang Letian. Computer Vision Based Fast Lane Detection [J]. Application Research of Computers, 2013, 30(5): 1544-1550. (in Chinese)
[3] He Peng,Gao Feng. Study on Lane Detection Based on Computer Vision [J]. Advanced Materials Research,2013(765-767):2229-2232.
[4] Jiang Yan, Gao Feng,Xu Guoyan. Computer Vision-Based Multiple-Lane Detection on Straight Road and in a Curve [C]// IEEE International Conference on Image Analysis and Signal Processing(IASP),2010:114-117.
[5] Jiang Yan,Gao Feng,Xu Guoyan. Self-Calibrated Multiple-Lane Detection System [C]// IEEE Position Location and Navigation Symposium,2010:1052-1056.
[6] 管欣,董因平,高振海. 基于LMedSquare的车道曲线拟合算法 [J]. 吉林大学学报(工学版),2004,34(2):194-197.
Guan Xin, Dong Yinping, Gao Zhenhai. LMedSquare Based Road Curve Fitting Algorithm [J]. Journal of Jilin University (Engineering and Technology Edition), 2004, 34(2): 194-197. (in Chinese)
[7] 季聪. 基于双目视觉的智能车辆路径识别方法研究 [D]. 兰州:兰州交通大学,2013:37-38.
Ji Cong. Research on Intelligent Vehicle Path Recognition Method Based on Binocular Vision [D]. Lanzhou: Lanzhou Jiaotong University, 2013: 37-38. ( in Chinese)
[8] 杨生鹏. 无人驾驶智能车基于单目视觉的道路检测 [D]. 大连:大连理工大学,2011:25-28.
Yang Shengpeng. Monocular Road Detection for Intelligent Unmanned Ground Vehicles [D]. Dalian: Dalian University of Technology, 2011: 25-28. (in Chinese)
[9] 张伟. 智能车辆中的道路检测与识别 [D]. 重庆:重庆大学,2006:45-47.
Zhang Wei. Study on Lane Detecting Technique in Intelligent Vehicle [D]. Chongqing: Chongqing University, 2006: 45-47. (in Chinese)
[10] Wang Yue, Shen Dinggang, Teoh E K. Lane Detection Using Catmull-Rom Spline [C]// Proceedings of the 1998 IEEE International Conference on Intelligent Vehicles,Vol.1,1998:51-57.
作者简介:何鹏(1983-),男,山西黎城人。博士后,主要从事智能车辆环境感知关键技术研究。
Tel:13693182670
E-mail:face17101@aliyun.com 。