- 09/25
- 2006
-
QQ扫一扫
-
Vision小助手
(CMVU)
摘要
本文采用单目视觉进行道路识别算法的研究,建立了直线道路边界模型,通过中值滤波、Sobel算子及二值化进行了图像预处理,最后给出了道路边界识别算法,并通过算法试验证明了算法的有效性。
关键词 机器视觉 道路识别 单目视觉
引言
作为智能车辆研究的关键支持技术,机器视觉技术具有价格低廉、用途多样、结构简单、能方便的与其它传感器进行数据融合等特点。基于机器视觉的路径识别、障碍物探测和目标跟踪等问题已经成为当前的研究热点。
通过机器视觉获取环境信息,进而对车辆进行控制是实现车辆智能化的重要途径之一,基于机器视觉的道路识别要求其能够实时地为车辆提供前方道路信息,包括道路宽度、曲率以及本车在道路中的位置等,本文采用单目视觉对车辆道路识别方法进行探讨。
1 道路边界模型
要从单目视觉中获得道路的三维信息,人们往往需要给出一定的约束假设,如道路的平面假设、道路模型假设以及道路物理结构不能突变等假设。本文给出了单目视觉道路边界约束假设条件,主要包括:1道路边界的连续性,在正常路段,道路一般不可能发生突变。2道路边界的平行性,即假设道路的两个边界是平行的。3道路几何形状,把道路宏观几何模型运用到道路图像的识别中,可以有效地提高道路识别的可靠性,本文采用直线道路模型进行道路识别。4 平面假设,即假设车辆前方视野内道路处于同一平面,这样就可以根据摄像机的标定参数来实现像素与其对应的世界坐标之间的映射关系。
本文提出的道路边界约束假设都是从道路的宏观特征出发,利用直线道路模型方法对整个图像进行宏观分析,克服图像局部细节的影响,从而实现道路边界的可靠识别。假设道路位于水平地面上,对于大多数道路边界来说,曲率一般都很小,因此本文采用直线道路模型模仿道路边缘,用下列两个方程来表示:
在道路平面中,左边界L1设为:
(1-1)
右边界L2设为:
约束1:
约束2:
在图像平面中,左边界 设为:
(1-5)
右边界 设为:
为车辆导航参考直线,其方程为:
单目视觉系统中,图象坐标与路面坐标之间的映射关系可以用下面一组公式表示:
(1-8)
式中:
为摄像机镜头中心的安装高度; 为在地平面上的最近可视点与摄像机镜头中心连线与地平面垂线的夹角, 为摄像机镜头垂直视场角之半, 为摄像机镜头水平视场角之半, 、 为图像的高、宽。以上各式联合即为直线道路边界模型。
2 图像预处理
本文道路图像预处理包括滤波处理、边缘增强和二值化,目的是消除一定的干扰,增强边缘信息,为后续道路识别过程提供较好的条件。
滤波处理采用的是中值滤波法,该方法是一种非线性处理技术,能在去除噪声的同时保护目标边界不使其模糊,且抑制随机点状噪声的效果较好。其数学表达式为:
f(x,y)=median{Sf(x,y)} (2-1)
其中,Sf(x,y)为当前点f(x,y)的邻域。
边缘增强的目的在于突出道路的边缘信息,以利于道路边界识别。本文利用Sobel算子实现边缘增强,该算子为一阶差分算子,可以有效地消除道路图像中大部分无用信息,且具有一定抑制噪声的能力。实际上,Sobel算子的本质是反映相邻或相距一定距离的像素点的灰度差异特征。道路边界处于一般与道路其它部分具有一定的灰度差异,Sobel算子能突出边界处像素值的差异,同时可得到边缘的梯度方向信息,而且该算法计算简单,易于实现。
离散Sobel算子定义为下式:
(2-2)
梯度值大小可通过下式得到:
(2-3)
梯度方向是在灰度值变化最大的方向上,计算公式为:
(2-4)
常用的Sobel算子模板包括两部分,一个是检测水平边缘的 ,一个是检测垂直边缘的 。本文研究中仅采用水平Sobel算子来进行图像增强,不考虑垂直方向的边缘增强。这样就避免了所有的图像边界都被突出出来,从而难以区分真正的道路边缘。同时可以节省计算时间,提高算法处理速度。
道路图像经过Sobel算子处理后,仍然包括了大量无用信息。为了进一步见效无用信息的影响,本文进行二值化处理。二值化处理中,阈值的选择是一个关键问题。阈值选取的合理与否,直接影响着道路识别的结果。理想的阈值应该最大程度地突出边界而抑制噪声。
根据道路边界的特点分析和试验,文中采用基于矩的阈值选取方法。该方法的具体思想是:通过图像的灰度直方图h(i)得到灰度的一阶矩,确定类分离函数,求使该函数最大的灰度值k,则k即为得到的最佳阈值。一阶矩和类分离函数的定义如下:
一阶矩:
(2-5)
类分离函数:
其中:
(2-7)
(2-8)
实际计算时,计算每个灰度值作为阈值时的类分离函数的值,比较该值大小,最大值所对应的灰度值即为阈值。实际进行二值化处理时,本文对整幅图像采用不同的阈值进行二值化,每20行进行一次阈值计算并用这个阈值对这20行图像进行二值化。目的是当出现光照不均匀或是有阴影存在的情况时,也可以找到道路边缘,从而提高算法的可靠性。
3 道路边界识别
预处理作用在于将图像中的边缘增强,并不能对道路边界进行识别。但图像中的所有轮廓都被增强,包括道路边界、行人、建筑、树木等,这些轮廓在图像中也形成了许多边界,即假边界。道路边界信息淹没在大量的假边界信息当中,因此必须从这些假边界信息中识别出真正的道路边界。
前文中我们已经建立起道路边界的模型,那么现在对于道路图像的识别即变成道路图像边界模型的特征匹配问题。
目前,用于图像处理的特征主要有:1)几何特征,如边缘、轮廓、交点;2)灰度统计特征,如灰度直方图、各阶矩;3)变换特征,如Walsh变换系数。图像分析和图像理解认为,边界是两个主要的参数决定的:边界邻域的灰度平均值(反映图像的平均特征)和边界区域的方差(反映图像块的局部细节)。
本文采用图像的灰度均值与方差为主要特征量。经过预处理后道路识别问题就变为从二值化的图像中完成道路图像特征匹配。
定义平均值和方差如下:
(3-1)
(3-2)
上两式中:
M:平均值
σn2:方差
m:分块的大小,即方块行或列的象素点个数,本文中取 m=5;
N:偏移量,N=m/2+1,整数
n:方块的序号
i,j:表示第i行,第j列小块中心象素点的行标和列标;它们满足j=k•i+b
f(i-N,j-N):表示第i-N行,第j-N列的象素点的灰度值。
识别时,从道路图像下方中央开始按下述定义进行计算。对于位于曲线L上每个小方阵(m×m),计算它们的平均值m和道路方差σ2。
进一步假定属于道路区域的方块应该满足下式:
(3-3)
Cp是N个方阵的协方差
其中:
(3-4)
(3-5)
对于每个小块i图像,计算其Pi(m,σ2)。
为了进行分类,计算各块Pi(m,σ2)之间的距离,距离计算公式如下:
(3-6)
如果两块之间的距离小于阈值K,则标记为边界。
最后,统计该曲线上的道路边界点的个数与该曲线所穿过的小方块数之比,比值最大的曲线就是道路边界所在。图1给出了二值化图像中的道路识别结果。
4 算法试验与结论
为了验证所提出的识别算法的有效性,我们编制了算法程序进行测试,并选择了几种典型的道路环境进行仿真试验。下面给出了对几种典型道路的识别结果。
试验证明,本文提出的算法是非常有效的,具有适应多种路面的能力。尤其在多种噪声共存的路面上具有良好的适应性,可以有效地识别道路边界。但对于不连续边界识别效果较差,不能识别。但在实际应用中我们利用道路边界的可信度分析可以有效地解决这个问题,得到令人满意的效果。
参考文献:
1 Axel Gern,Uwe Franke, Advanced Lane Recognition-Fusing Vision and Radar, Proceedings of the IEEE intelligent Vehicles Symposium 2000.
2王荣本,徐友春等 A Vision-based road edge detection algorithm,IEEE IV2002 Conference,2002.7.
3 韩俊淑,军用无人驾驶车辆单目视觉道路识别方法的研究,2004.7
4 R. Gregor, M. Luetzeler, E.D. Dickmanns: EMS-Vision: Combining on and off-road driving. Proc. SPIE-Aero-Sense, Orlando, Fla, USA, April 2001.
5 T. Ito, K. Yamada: Preceding vehicle and Road Lanes Recognition Methods for RCAS Using Vision System.Proc.Symp.on Intell. Veh.’94,Paris, 1994, pp. 85 – 90.
- 上一条:野外环境中爆点目标的实时检测
- 下一条:印刷电路板缺陷自动检测系统