张峻荧 张成海 倪洪飞 于涛
摘 要:针对智能车辆的弯道检测问题,本文依据车道线灰度相似特性和摄像头成像几何关系提出了一种基于视觉检测弯道的方法。文中首先介绍了基于形态学处理的直线检测方法,其中着重介绍了应用形态学提取车道信息的方法和利用车道线宽度比例法分割图像的方法;然后详细介绍如何根据直线检测结果和真实车道线的重叠状态实现实线曲线的检测;最后重点介绍了融合实线检测结果、成像几何关系、车道投影特征和单目测距模型实现虚线车道线检测的方法。实验结果表明基于车道线投影特征、灰度相似特性和摄像头成像几何关系的弯道检测方法具有很强的鲁棒性和抗干扰性。
关键词:驾驶辅助;区域生长;成像几何;曲线拟合
中图分类号:U467.5 文献标识码:A 文章编号:1005-2550(2016)06-0065-07
Abstract: For detecting the curve lane on all intelligent vehicles,this paper proposed a visual detection method based on the gray similar features on lanes and the imaging geometry of a camera. Firstly this paper introduced a linear detection method based on morphological processing, which focused on the application of morphology to extract the lane information and the image segmentation depending on the lane line width ratio; Then introduced how to realize the detection of solid curve line according to the overlap state between the linear line detection result and the real lane line; Finally introduced the method for detecting the dotted lane line ,which was realized by the fusion of the solid line, the imaging geometry, the lane projection and the visual model. The experimental results showed that the detection method based on the lane line shape features, gray similar characteristics and camera imaging geometry had enough robustness and anti-interference.
Key Words: driving assistance; region growing; morphology; imaging geometry; curve-fitting
前 言
驾驶辅助系统通过感知车辆行驶环境,结合车辆本身的行驶状态来评估当前行车安全性,当存在安全隐患或危险即将发生时通过视觉、触觉、听觉中的一种或多种方式提醒驾驶员,当有必要时可以启动车辆控制系统以减轻甚至避免危险的发生。车道线检测是行车环境感知中的重要探测目标之一,也是提高其它探测目标如车辆、道路标识、静止物体等的准确性的常规且可靠的手段。利用视觉检测车道线是公认的通用方式。
目前成熟的车道线检测技术大多都是适用于直道的,而实际的行车环境中即便是在高速或高等级的道路上,弯道出现的概率也不低,且据国家交通部公布的数据,每年弯道路段事故数量占总事故数平均约10%,故弯道检测的必要性是不言而喻的。通过准确定位车辆行驶前方弯道车道线位置可以避免弯道上行驶时无意识偏离本车道,也可以排除本车道区域以外非避撞目标对车辆行驶前方障碍物识别的干扰,提高识别准确率,还可以直接判断车辆前方道路可行驶区域以控制车辆的转向换道、加速、制动避撞等动作。
弯道检测技术难以成熟应用的主要原因是因为弯道形状多变、道路模型多样、干扰多。现有最常用也是普遍认为最有效的弯道视觉识别技术是采用基于道路模型的方法,通过建立一个最适应的车道曲线模型,然后基于车道线边缘点分布进行模型参数解算。在特定的结构化高等级公路上检测效果较好,但不同道路工况、车辆颠簸与否条件下的弯道模型都不同,预设模型不能适用于弯道幅度和形状多变的行车环境,同时边缘点是模型参数求解的计算依据,车道线以外的边缘点会对曲线模型准确性造成影响。
针对弯道识别的需求和已有弯道识别技术存在的不足,本文提出了一种弯道识别方法,能够适用于弯道幅度和形状多变的行车环境且受车道线外干扰点影响小。技术方案框架如图1所示:采用已经验证可靠的识别算法进行直线车道线检测;根据直线检测结果与实际车道线的重叠状态判断当前行车环境是否是弯道且有实线,若是则依据车道线像素灰度的相似性检测实线一侧车道线,否则采用前述道路模型拟合的方法进行两侧车道线检测;在实线检测结束后融合实线分布状态、车道投影特征、单目测距模型实现虚线曲线的检测。
1 线性车道线检测
智能车辆视觉系统通过摄像头采集RGB图像,根据通用的R、G、B分量提取方法按照30:59:11的比例进行图像灰度化以减少计算量;使用形态学进行图像预处理以消除掉部分非目标信息,凸显有用的目标信息;进行灰度拉伸增强图像对比度,便于后续的图像分割;针对已经形态学预处理车道线灰度特征明显的特点,采用计算量小的宽度比例法进行车道线二值化将车道线从背景中分割出来;依据车道线形状特性使用sobel左右分区45°算子进行边缘提取;根据车道线在图像中的分布范围利用设定区域约束的霍夫变换实现最终线性车道线的检测。对图像的有效信息进行分析不难发现道路上的车道线一般位于整个图像的下方约2/3区域,上方其余区域是天空等非路面区域。为了减少计算量,增强车道线检测的实时性、准确性,本文的算法只对整个图像下方的2/3区域进行处理。
1.1 形态学处理提取车道线
形态学是以形态结构元素为基础对图像进行分析的数学工具,基本思想是用具有一定形态的结构元素去度量和提取图像中对应的形状,以达到消除图像中无关信息从而增强目标的可检测性和最大限度简化数据的目的。运用形态学可以从原图中将车道线特征提取出来,排除原图中大部分干扰因素。
采用尺寸较大的线性结构元对图像进行先腐蚀处理后膨胀处理可以将车道线及与其相似的特征从图像上去除,而将其它信息加以凸显。通过对比形态学处理前后的图像,从特征差异中提取出主要包含车道线信息的车道线特征图。再利用尺寸较小的3*3结构元对车道线特征图像进行先腐蚀后膨胀的处理以有效消除较小的干扰因素,如车道印迹。
1.2 车道线二值化
从图3b)中可以看出,图像本身信息已经简化,图像中目标相对单一,为了提高检测准确性并减少计算量,本文采用车道线宽度比例法实现车道线的二值化,其依据是车道线在图像中所占的宽度范围的可标定性。当摄像头安装角度固定时,车道线宽度的像素数范围即可通过MATLAB等软件进行确定,即车道线宽度所占像素数与图像总像素数比例范围Ф可定。根据经验和研究的可行性,我们一般将图像下方2/3区域分为两区,靠近图像底部的1/3部分为近视野区,其余部分为远视野区,如图4所示。显然在图像中近视野区的车道线宽度像素数多于远视野区的车道线宽度像素数,故在进行阈值分割时远近视野区使用不同的车道线宽度比例。
2 实线曲线检测
2.1 车道线缺口填充
由于光照或路面干扰影响,有的图像中实线车道线二值化后不连续,会影响实线一侧的检测,如图7a)圆圈标记处的缺口。形态学闭运算可以用来填充比结构元素小的区域内细小空洞、连接邻近区域并不明显改变其形状,利用形态学闭运算可以有效地对车道线上的缺口进行填充。
2.2 确定实线曲线检测的起始位置
实线一侧由部分直线和部分曲线拼接而成,在检测过程中直线部分保留前述检测结果,曲线部分采用基于局部灰度相似性进行检测,拼接的一个关键问题是正确如何确定直线和曲线的分离点来保证检测的鲁棒性,而该分离点在不同道路、不同行车工况和状态中是动态变化的,会随机出现在远视野区或近视野区的任何位置。车道线二值化图中实线一侧上像素值相同(均为255)且通过闭运算处理之后基本连续,从此特性出发,分析直线检测结果(图8a))和二值化车道线重叠状态(图8b)),在图8b)中从下往上逐个查找二者的不重叠像素点位置,并通过各位置邻近行、列特特征对比的约束条件确定分离点(图8c)中“X”标记处),分离点所在行即为实线曲线检测的起始行。
2.3 依据车道线像素灰度的相似性检测实线车道线
车道线二值化闭运算图中实线上灰度都是255,基于局部灰度相似性从图8c)中分离点“X”和其所在行开始往上对所有相连且灰度为255的像素点逐个进行像素合并,合并过程中将被合并的每行车道线边缘位置更新到前述记录的车道线位置数据PL[NUMLINES]或PR[NUMLINES]中直到完成实线曲线检测。当两侧均为实线时,到此即完成了弯道检测,效果如图10所示;当另一侧为虚线时(图9),还需要继续进行虚线检测。
3 虚线曲线检测
根据单目摄像头的投影特征,建立了行车环境中目标纵向分布位置在摄像头中的成像几何关系,如图11a)所示,与此对应的真实车道线信息在空间坐标中的位置模型如图11b)所示,目标成像效果如图11c)所示。其中图11b)和图11c)中下方的四个“X”点为虚线曲线拟合的参照点,在整个拟合中参照点一旦确定即不发生变化。标记“?”表示待拟合的点,即从拟合起始行StH行向上逐行开始的虚线侧的边缘点。
图11c)中第一行两个参照点是左右车道线直线检测结果与图像底边的交点,其像素位置即PL[0]、PR[0],(Dy0,δL0)和(Dy0,δR0)分别是两个参照点在空间坐标系中与摄像头安装位置的纵向距离和横向夹角;StH是左侧虚线拟合的起始行位置,其确定方法类似于实线上曲线部分与直线部分分离点的查找方法,即基于直线检测结果与实际车道线的重叠状态,但由于虚线一侧是不连续的,故查找方向是自上而下,PL[StH-1]和PR[StH-1]分别是此行上的两个参照点像素位置,(Dy1,δL1)和(Dy1,δR1)分别是这两个参照点在空间坐标系中与摄像头安装位置的纵向距离和横向夹角;m表示从StH往上各行的行位置,PR[StH-1]是此行上的实线上参照点像素位置,(Dy2,δR2)是此参照点在空间坐标系中与摄像头安装位置的纵向距离和横向夹角。
3.1 位置模型建立
3.2 虚线拟合
与虚线上各像素点有关联的数据包括三维空间中实线侧与虚线侧基本稳定的横向间距、图像中同一像素行上实线侧车道边缘点的像素坐标和该行距离摄像头的纵向距离,同时从图11b)和已建立的关系模型中可以看出这三个参数也是计算虚线侧位置数据PL[]的必须已知量,这三个参数中前两者均已已知,未知的参数Dy2需要计算。
4 算法分析与测试
4.1 测试结果
为了验证本文提及的方法的效果,在Visual C++ 6.0平台上完成了所提技术方案与基于道路模型拟合的对比实验。本车道两侧均为虚线时检测方法相同,故对比测试是针对的两车道高速或市区弯道公路工况。测试中道路预设模型为性能较好的回旋曲线模型,从测试中提取了三段连续的高速公路图像样本,每段连续图像分别包括了700帧图片,并从测试中分别提取了出现车辆颠簸的图像样本和路面出现干扰标识的图像样本。
从测试数据和效果可以看出:基于道路模型拟合的方法虽然在弯道形状与预设模型特征一致的工况中检测效果理想,但此方法不适用于弯道形状与预设模型不一致工况。而本文所提的技术方案从原理上考虑了算法工况适应性问题,具有较强的鲁棒性:当弯道的幅度和形状发生变化时,实线内部的灰度合并方向、起始位置会跟随车道线分布状态动态调整,故适用于弯道形状多变、路面不平坦的行车环境;且实线车道线的检测只在连通的实线内部进行灰度合并,而车道线以外的干扰通常不和实线车道线连通,故算法抗干扰能力强。
5 结论
研究的弯道识别算法与传统的分段直线模型、道路模型拟合方法相比,通过动态检测能准确判断弯道的起始位置和走向,搭建的车道位置模型能较好地拟合出弯道的真实形状和位置。通过大量道路图像的验证测试,本算法适用于弯道形状多变的行车工况,具有较强的鲁棒性。
参考文献:
[1]徐岩, 雷涛.XU Yan,LEI Tao. 基于形态学方法的车道线检测算法研究[期刊论文]-铁道学报2009(1).
[2]刘涛, 黄席樾, 周欣, 黎昱. LIU Tao, HUANG Xiyue, ZHOU Xin, NI Yu.高速公路弯道识别算法[期刊论文]-重庆大学学报2003(7).
[3]葛平淑, 徐国凯, 宫长明, 赵秀春. GE Pingshu,XU Guokai, GONG Changming, ZHAO Xiuchun. 基于特征点提取的弯道识别算法研究[期刊论文]-大连民族学院学报2014(1).
[4]黄席樾, 汪先矩, 柴毅, 周欣, 黄瀚敏. HUANG Xiyue, WANG Xianju, CHAI Yi, ZHOU Xin, HUANG Hanmin. 基于道路几何模型的单目测距算法[期刊论文]-重庆大学学报2000(3).