基于MATLAB的车道线识别算法研究
一、课题背景
为了提高车道线识别算法的实时性和准确性,提出了一种基于改进Hough变换的车道线检测方法。在车道线的预处理阶段,首先确定图像中的感兴趣区域,然后
对图像进行平滑处理、自适应阈值分割、边缘检测,从而减少了后期的处理数据量,排除了大部分的干扰因素。在车道线的识别阶段,根据圆和椭圆的性质,对传统的霍夫变换进行改进,极大减小了在检测圆和椭圆时的计算量,并提高了检测的准确性。最后使用OpenCV图像处理库编写程序,证明了新算法的正确性,得到了理想的结果。
关键词:车道线识别 椭圆检测 霍夫变换
二、车道线的预处理
预处理是车道线识别过程中一个十分重要的一环。良好的预处理能使排除各种干扰,使运算量大大下降,大大提高车道线识别的实时性和准确性,反之,则不仅会使识别效率降低,甚至导致得到错误的结果。
预处理的过程主要分为车道线的设置感兴趣区域、平滑滤波、阈值分割、边缘检测。本章首先简要介绍车道线的基本知识,然后对感兴趣区域的原理和应用进行分析,并针对车道线的具体特征和要得到的目标选择合适的预处理方法,进而对每种预处理过程中的算法进行分析讨论,得出适合的预处理算法。
认识车道线
车道线的基本分类
车道分界线是用来分隔同方向行驶的交通流的交通标志线,凡同方向车行道有两条或两条以上车道时,均应划车道分界线。车道分界线有两种,即车道分界虚线和导向车道分界实线。车道分界虚线,在保证安全的原则下,准许车辆越线超车或变更车道行驶;导向车道分界实线,不准车辆越线或变更车道。
图(2-1)所示为各种车道线:
车道线的标划区分
白色虚线:划于路段中时,用以分隔同向行驶的交通流或作为行车安全距离识别线;划于路口时,用以引导车辆行进;
白色实线:划于路段中时,用以分隔同向行驶的机动车和非机动车或指示车行道线;划于路口时,用作导向车道线或停车线;
黄色虚线:划于路段中时,用以分隔对向行驶的交通流,划于路侧或缘石上时,用以禁止车辆长时在路边停放。
黄色实线:划于路段中时,用以分隔对向行驶的交通流;划于路侧或缘石上时,用以禁止车辆长时或临时在路边停放。
双白虚线:划于路口时作为减速让行线;划于路段中时,作为行车方向随时间改变之可变车道线;
双黄实线:划于路段中时,用以分隔对向行驶的交通流;
黄色虚实线:划于路段中时,用以分隔对向行驶的交通流。黄色实线一侧禁止车辆超车、跨越或回转,黄色虚线一侧在保证安全的情况下准许车辆超车、跨越或回转;
双白实线:划于路口时,作为停车让行线。
车道线的基本形状
通过对各种车道线的比较,我们可以法线,车道线基本分为两种形状:直线和圆,其他的形状还包括三角形等,但它们的基本组成元素仍然是直线,所以我们同样能对其运用直线的方式处理。但是必须注意的是,由于图像采集设备与道路之间有一定的倾角,所以道路中的圆出现在图像中时将会变为椭圆。
通过将基本的识别目标固定在直线和椭圆的范围中,我们便将车道识别的问题抽象为直线和椭圆的识别,研究方向进一步固定。
感兴趣区域
感兴趣区域简称为ROI(region of interest)是将图像中的重要区域进行标记,随后的各种算法和分析将主要针对ROI。这样做的好处是不仅使处理的数据量变少,而且也排除了非重点区域的潜在干扰。
观察采集到的图像,如图所示,我们可以发现,图像中的上部是天空和较远处的信息,这一部分信息是不需要的,而且可能会对处理结果造成干扰。所以,在图像的处理中我们应当适当选取ROI,对于以后的处理有莫大裨益。
如图(2-2)所示,其中下部较暗的区域即为我们的感兴趣区域:
平滑滤波
各类图像处理系统在图像的采集、获取、传送和转换(如成像、复制扫描、传输以及显示等)过程中,均处在复杂的环境中,光照、电磁多变,所有的图像均不同程度地被可见或不可见的噪声干扰。噪声源包括电子噪声、光子噪声、斑点噪声和量化噪声。如果信噪比低于一定的水平,噪声逐渐变成可见的颗粒形状,导致图像质量的下降。除了视觉上质量下降,噪声同样可能掩盖重要的图像细节,因此,在对采集到的原始图像做进一步的处理时,需要对图像进行必要的滤波降噪处理。
均值滤波
均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素,模板大小一般为3×3、5×5、或7×7 ,用其临近区域像素值的均值来替代目标像素。
均值滤波的原理如图(2-3)所示,其中a)图中1-8为像素点的临近区域,b)图为的权系数矩阵:
均值滤波方法如公式(2-1)所示:
(2-1)
均值滤波具有算法简单,计算速度快的优点,但它的缺点也很明显:降低噪声
的同时使图像产生模糊,特别是景物的边缘和细节部分。
中值滤波
中值滤波是一种非线性数字滤波器技术,经常用于去除图像或者其它信号中的噪声。
中值滤波的思想是将一个像素替换为其临近区域的所有像素的中值,临近区域一般选以此像素为中心的奇数大小的窗口,常用的为3×3、5×5、7×7等。
中值滤波的计算方法如公式(2-2)所示:
(2-2)
中值滤波法对消除椒盐噪声非常有效,在光学测量条纹图象的相位分析处理方法中有特殊作用,但在条纹中心分析方法中作用不大.
中值滤波在图像处理中,常用于保护边缘信息,是经典的平滑噪声的方法。
图(2-4)为中值滤波效果图:
高斯滤波
高斯滤波是一种线性平滑滤波,适用于消除高斯噪声,广泛应用于图像处理的减噪过程。通俗的讲,高斯滤波就是对整幅图像进行加权平均的过程,每一个像素点的值,都由其本身和邻域内的其他像素值经过加权平均后得到。高斯滤波的思想是:用一个模板(或称卷积、掩模)扫描图像中的每一个像素,用模板确定的邻域内像素的加权平均灰度值去替代模板中心像素点的值。
高斯滤波的效果图如图2-5所示: