APP下载

基于反透视变换的车道线检测算法∗

2019-03-26孙耀航

计算机与数字工程 2019年3期
关键词:车道均值阈值

刘 萍 孙耀航

(陆军军官学院计算中心 合肥 230031)

1 引言

随着社会的进步和发展,安全驾驶和汽车的简便操作越来越受到人们的重视。苹果、谷歌和特斯拉等公司相继推出了无人驾驶系统,国内的厂商也对此领域产生了高度兴趣。基于人工智能和大数据的无人驾驶技术,被认为是消除交通安全问题的最终方法。从美国DARPA挑战赛[1]到中国未来智能车大赛,无人驾驶技术在全世界兴起了一阵热潮[1]。

对于无人驾驶系统来说,车道线检测是非常重要的技术。到现在为止,已经有一些基于机器视觉的无人驾驶技术得到了应用。其中,一部分算法直接检测道路的边缘,而另一些算法首先利用道路的部分参数(例如颜色信息)来确定道路边缘[2~5]。算法应用的技术也有很大差别(霍夫变换、模版匹配和神经网络等)。总的来说,有两类方法用于车道线检测:基于特征的方法和基于模型的方法[6]。基于特征的方法通过探测数种低级特征的组合来确定车道的位置。这类方法要求车道线必须是粉刷清楚,不然就会失效[7~9]。显然,基于特征的方法对于大城市主干道很有效率,但是对于次重要的路段,或者道路保养不及时的城市就容易失效。另外要注意的是,因为基于特征的方法对于检测的线的特征没有细致的约束,所以很容易受到噪声或者遮挡的影响。

本文提出了一种基于反透视变换的车道线检测算法,将摄像头拍摄的视频图像转换为俯视图,以检测车道线。本方法可以利用现实道路的模型,例如车道长度、路宽以及路况等。本算法的流程如图1所示。

图1 算法流程

2 最优阈值法对图像二值化

城市道路刷有白色、黄色的各种标线,而车道的检测也就转化为对图像中这些标线的检测。图像分割是最常用的检测标线的方法,图像分割也经常用于在图像中确定物体或者边缘的位置。更准确地说,图像分割是一个为图像内每个像素标明一个标签的过程,而标记了相同标签的像素有同样的视觉特征。

图像分割最简明的方法就是阈值法[10~11]。阈值法的原理是根据设定的阈值对灰度图像进行二值化,所以二值化的效果取决于阈值的选取方法。本文提出了一种基于全局的最优阈值算法。在车道线检测过程中,为了减小路缘和远处图像不清晰的问题,本算法将图像中天空的部分裁剪掉,在裁剪后的图像中,道路占图像的绝大部分。考虑到车道分割对噪声和速度的敏感性,本文采用了基于全局的最优阈值法对图像进行二值化。

最优阈值法的原则是通过研究图片的渐变数据分布特征,确定作为阈值的灰度。嘉定一幅图片的灰度被分为1~m,那么这幅图片中灰度为m的像素数为n,图片的像素总数为

每个灰度值的像素出现的概率为

然后用一个证书K将像素分成C0和C1两组:

C0组中像素出现的概率为

像素饱和均值为

C1组中像素出现的概率为

像素饱和度均值为

从1,2,…,m遍历k的取值,找到使得方差最大的k值记为K。当σ2()k取最大值时的K为最优阈值。

图像二值化的结果如图2所示,图2(a)为OTSU算法二值化的图片,图2(b)为本文算法二值化的图片,可以看出我们的算法明显噪声更小。是图像总体饱和度的均值。则:

两组像素的方差为

图2 图像二值化

3 反透视变换

通过对图像进行二值化,凸显了车道线的边缘特征。针对车道线在俯视视角相交,导致不能对车辆进行正确导向的问题,需要利用反透视变换对图像视角进行校正。

由图3所示,由于视角问题,车道两边平行的车道线在图像中显示为在末端相交的直线。在远处会丢失很多图像信息。通过反透视变换,我们可以抓取道路特征,以标明车道线等信息[12~14]。

图3 车道线模型的投影

在照相机平面上,一个目标可以被看成是中心投影到平面上的。中心投影法是一个比较简单的投影方法,可以产生接近实际视觉效果的图像。根据中心投影法的原则我们得到:

(u,v)是图像坐标,Xw是参考坐标,s是比例因子。假定道路是绝对水平的,s的值就是固定的,M是可以通过图像校准计算的转换矩阵。因此,对反透视变换矩阵的计算,就转换为对公式Ax=b的求解。这个公式可以由奇异值分解很方便地求解。

固有参数(例如道路长度、中心和视角变换)以及变化参数(例如车的相对位置)在处理前就进行了校准[8]。图4展示了反透视变换后的二值图像。

图4 反透视变换后的车道线检测

4 K-均值聚类算法

在反透视变换之后,车道线图像的视角呈垂直俯视。接下来,我们需要利用K-均值聚类算法对车道线进行拟合。

K-均值聚类算法在数据挖掘领域有广泛的应用。虽然K-均值聚类算法的计算复杂度比较高,但是有几种启发式算法可以汇聚成此算法的最优解[15~16]。

分配:将每个观测值分配给均值最接近它的聚类。

即使某个观测值满足分配给多个聚类,每个Xp只能被分配给唯一的 S(t)。

当分配结束之后,聚类的过程也就结束了。K-均值聚类算法的计算结果如图5所示。

图5 K-均值聚类算法及其车道线匹配

5 实验结果

我们将小型摄像头装在家用轿车车顶和保险杠上进行实验,实验图像为实拍图像。实验结果如以下所示。

1)图6展示了崎岖道路的车道线检测。

图6 崎岖道路的车道检测

2)图7展示了对亮度明显变化的车道线检测。

图7 亮度明显变化的车道线检测

6 结语

城市道路车道线检测是无人驾驶领域一项关键的计数。本文提出了一种基于反透视变换的车道线检测算法。本算法不仅能够有效地检测车道线,而且能够克服道路中不清晰、遮挡和干扰的问题。我们也给出了说明本算法有效性的实验。未来我们的研究方向,则是希望能够辨别各种不同的车道线,以便车辆能够根据车道标志的不同做出反应。

猜你喜欢

车道均值阈值
智慧收费机器人在高速公路车道上的应用
基于OpenCV的直道车道线识别技术研究
改进的软硬阈值法及其在地震数据降噪中的研究
北斗+手机实现车道级导航应用
土石坝坝体失稳破坏降水阈值的确定方法
基于小波变换阈值去噪算法的改进
改进小波阈值对热泵电机振动信号的去噪研究
均值—方差分析及CAPM模型的运用
均值—方差分析及CAPM模型的运用
浅谈均值不等式的应用