APP下载

基于机器视觉的车道线检测与识别算法

2022-02-20

无线互联科技 2022年24期
关键词:车道灰度边缘

谷 峥

(重庆交通大学,重庆 400074)

0 引言

随着我国经济的快速发展,汽车保有量的增加,交通事故也更加频繁。据了解,每年有一百万左右的人死于交通道路事故。查阅相关资料可知,在所有的致命交通事故中,有相当部分是由于车道偏离引起的。而车道偏离自动预警系统作为安全驾驶辅助系统的一种,能够有效地避免大量因车辆偏离而导致的严重交通事故。

车道偏离自动预警系统的核心是车道线的识别与检测技术,为了增加汽车本身的安全性能,车道线的识别与检测技术成为近年来的研究热点。

目前,国内外研究人员提出了许多基于机器视觉的车道线提取方法。一般分为两大类:基于特征和基于模型。基于特征一般是利用车道线的边缘、纹理、颜色、频域特征对车道线进行识别,将特征突出出来加以研究。基于模型主要是设计车道线模型,例如直线、抛物线、样条曲线,利用一定的方法求取模型以拟合车道线。

Lee等[1-2]采用车道线边缘分布函数的方法进行车道标识线局部特征边缘点的检测与提取,又采用Hough变换实现车道线检测与识别[3]。其方法受光照的影响较小,但当车道标识线出现断裂、破损时,该算法处理效果较差。

Yuji[4]利用车道线具有扩张中心聚焦,当存在道路边境时,大部分朝向扩张中心的边缘点都位于道路边界的特征,提出了一种能够识别多种车道线的识别方法。该方法选取的阈值相对较低,利用零交叉技术获得边缘特征图像,在去噪和直方图分析之后,采用Hough变换检测车道线。同样,该算法对于光照变化的处理较好,而在进行弯道识别时比较乏力。

姜仁婉[5]基于中值滤波和Canny算子处理后灰度值的图像直方图具有较亮的边缘区域为小概率事件的特点,提出了新的阈值选取算法,即将灰度值均值作为二值化的阈值,又采用闭运算对图像进行边缘修补。最后并未采用Hough变换检测车道线,而是利用车道线平行且位于图像下方1/2区域的特点,利用最小二乘法进行拟合。并且考虑到实际环境更为复杂,提出了根据车道线的对称性和感兴趣区域以虚拟出车道线。该方法对于某些复杂场景具有较好的鲁棒性,但是过于复杂且实时性有待提高。

基于此本文提出了机器视觉的车道线检测与识别算法,该方法简单高效,经实验验证,具有较好的实际应用价值。

1 图像预处理

由于汽车行驶环境复杂多变,特别是在城市的结构化道路上行驶时,道路特征物体较多,天气等原因也进一步使得环境复杂化。因此,在获取汽车行驶的道路图像后,需要对获得的图像进行预处理,去除图像中冗杂的信息,提取有价值的特征信息,提高算法的可靠性。

1.1 道路图像灰度化

由摄像机采集到的道路图像一般为彩色图像,图像信息量大,一般包括R(红)、G(绿)、B(蓝)3个通道的信息,红绿蓝3色被称为三原色,任意一种颜色都是由一定配比的三原色组成。将3个颜色刻度化,范围为0~255。其中数字0代表最暗,数字255代表最亮。因此任意一种颜色都可以用该正方体中的点表示出来,如白色的RGB数值表示为(R:255,G:255,B:255),黄色的RGB数值表示为(R:255,G:255,B:0),黑色的RGB数值表示为(R:0,G:0,B:0)。而当3个颜色的数值R=G=B时,彩色就只代表了一种灰度颜色,该值被定义为此颜色的灰度值,范围是0~255,随着数值的增加,颜色呈现白化趋势。由此,相比起用3个字节分别表示每一个颜色的数值,从而表示某一像素所代表的颜色,用灰度值的一个字节来表示某一像素更加简洁。所以,为了提高算法的实时性,一般在处理图像前要将彩色图像转变为灰度图像。虽然彩色图像的细节更加丰富,但是灰度图像也能将识别车道线所需要的特征信息保留下来。

加权平均法是对R、G、B3分量配以不同的权值进行加权平均计算,3分量的权值是根据人眼对于红绿蓝3种颜色的敏感度而定。据相关研究表明,人眼对于绿色的敏感度最高,红色次之,而对于蓝色的敏感度最低。根据此原理对红绿蓝3分量分别赋予0.3,0.59,0.11的权值,再进行平均计算,继而得到最符合人眼视觉的灰度图像。原理公式如下:

f(i,j)=0.3R(i,j)+0.59G(i,j)+0.11B(i,j)

(1)

1.2 道路图形滤波处理

一般而言,道路图像的噪声干扰为加性噪声,在图像的获取或者传输过程中,受到外部环境以及采集图像的设备硬件本身的影响,使得车载图像信号容易受到噪声的影响。故而,常用滤波对图像进行处理,其去噪效果较好,同时能够较为完整地保留所需要的特征信息。常见滤波算法有:均值滤波、高斯滤波、中值滤波。每种道路环境都有其特点,因此在应用滤波算法时应该就道路环境进行分析,以选取最合适的算法。本文在对城市道路进行处理分析后,最终选用高斯滤波进行处理。

通俗地讲,高斯滤波处理图像就是对整个图像进行加权平均。用模板求出的加权平均值去代替模板中心的目标像素点的值,从而得到目标像素点滤波处理后的灰度值。高斯滤波具体公式如式(2)所示:

(2)

式中:Wx,y表示目标像素点的邻域,wx,y表示权重,I(x,y)表示输出结果。

1.3 图像边缘检测

边缘作为图像信息里的一大基本特征,在处理图像时对边缘进行处理成了最基本的问题。所谓边缘点,指的是图像中像素点灰度值发生跃变的点。因此,边缘就成了图像中信息最集中,偶然性最大即不确定性最大的地方。在目标与背景、颜色变化较大的区域,都是边缘经常存在的地方。从图像属性的角度来说,边缘的存在反映了某种变化。所以,可以肯定的是,若对结构化道路进行边缘检测,其处理图像会将车道标识线与道路本身区分开来,从而去除大量不必要的背景信息,减少数据量,提高算法实时性。通常来说,图像的边缘变化有以下几种形式。

图1 笛卡尔坐标系中的Hough变换

(1)阶跃式:图像亮度变化较大的两个区域之间。

(2)渐变式:其边缘上的灰度值是变化的。

(3)屋顶状式:一般存在于亮度变化规律呈二阶函数图像状的地方。

(4)模糊阶跃式:可能产生于图像的噪声。

由于Canny算子的抑噪能力较好,同时采用双阈值处理连接边缘,故其检测能力、定位精度都相对较好,因此本文采用Canny算子作边缘检测方法。

1.4 感兴趣区域划分

上述Canny算子对图片处理后,还包含了许多冗杂的环境信息,这些都是不被需要且影响结果准确性的特征信息。一般而言,待识别检测的车道线通常位于图像下方的一个梯形区域,通过画出一个掩膜梯形再与原图进行拼合操作,就能得到感兴趣区域内的边缘检测图。

2 基于Hough变换的车道线检测与识别算法

车道线检测与识别的方法主要有两大类:基于特征或基于模型。基于特征的检测识别方法主要是利用图像的边缘特征来识别车道线。基于模型的检测识别方法主要是采用将模型(如直线模型、抛物线模型、双曲线模型)与例如Hough变换相结合,从而求出模型参数达到识别车道线的目的。换句话说,预处理得到的图像,仅仅是组成车道线的一些像素点,这些像素点彼此独立,而通过检测识别算法就可以将这些独立的点组成逻辑上的一条车道线。

2.1 基于Hough变换的车道线检测算法

Hough变换是一种常见的基于模型的检测识别方法,一般用于检测图像中某些如直线、圆等特定的形状。由于Hough变换具有较好的抗干扰能力,因此在车道线的检测与识别领域得到了非常广泛的应用。

通常情况下,过某点(x1,y1)的直线在坐标系下的表示方法如式(3)所示:

y1=m0x1+b0

(3)

其中:m0表示斜率;b0表示截距。

过该点(x1,y1)的这条直线m0和b0的值是恒定的,则该条直线在以m为横轴,b为纵轴的参数空间中,就能找到唯一一点与之对应。变换式子如下:

b0=-x1m0+y1

(4)

Hough变换就是基于这种思想产生的 。在普通直角坐标系中,过点(x1,y1)的直线有无数条,则与之对应的斜率和截距就有无数组,将这无数条线投影到参数空间中就构成一条直线,其表达式如式(5)所示:

b=-x1m+y1

(5)

现引入点(x2,y2),则过该点的所有直线在其参数空间的投影表达式为式(6)所示:

b=-x2m+y2

(6)

式(5)与式(6)在参数空间中有相交点(m0,b0),如图1所示。由此,不难发现,普通坐标系那条直线上的每一点所决定的参数空间中的每一条直线都会经过(m0,b0)。换句话说,在参数空间中相交的直线,其对应的普通坐标系上的点共线。通过这个特性,就可以将经过边缘点的直线求解出来。

2.2 车道线拟合

经过以上Hough变换后,图像中呈现的车道线并非只有一条,而是由许多线段组成的。鉴于车道线在图像中具有汇聚性,现通过斜率对车道线进行左右分类,即左侧车道线斜率为负数,右侧车道线斜率为正数。然后,再使用最小二乘法对分类后的车道线线段进行拟合,最后将其映射到原图像中,使得车道线被识别出来。

3 实验结果及分析

本文采用Python编写实现,计算平台为Legion-Y9000P 12th Gen Intel(R) Core(TM) i7-12700H 2.70 GHz,16 GB内存计算机。采用公开数据集对本文算法进行验证。本文算法结果如图2所示,可以看到对于车道线检测较为精准,但是识别距离略显不足。

图2 算法结果展示

4 结语

本文研究了一种基于机器视觉的车道线检测与识别算法。该算法首先对采集到的道路图像进行灰度化、滤波预处理;然后对图片进行边缘检测;最后利用Hough变换对处理后的图像进行车道线检测。通过公开数据集数据验证,本文算法对车道线的识别情况较好,但在检测距离上还略有不足。总的来说,本文算法具有一定的实际意义,可以为该方向研究提供一定的参考价值。

猜你喜欢

车道灰度边缘
采用改进导重法的拓扑结构灰度单元过滤技术
北斗+手机实现车道级导航应用
避免跟车闯红灯的地面车道线
基于灰度拉伸的图像水位识别方法研究
浅谈MTC车道改造
基于最大加权投影求解的彩色图像灰度化对比度保留算法
基于灰度线性建模的亚像素图像抖动量计算
低速ETC/MTC混合式收费车道的设计与实现
在边缘寻找自我
走在边缘