3.1.2 基于Prewitt算子的行道线检测算法
Prewitt算子是一种一阶微分算子的边缘检测,利用像素点上下、左右邻点的灰度差,在边缘处达到极值检测边缘,去掉部分伪边缘,对噪声具有平滑作用 。其原理是在图像空间利用两个方向模板与图像进行邻域卷积来完成的,这两个方向模板一个检测水平边缘,一个检测垂直边缘。
我们在算法中做了一些改变,没有使用水平方向的模板,而是加入了两个倾斜的模板,以达到去除垂直直线的效果。虽然这个算法能较好地得到行道线的边缘,但与本文所采用的基于中间两侧差的直接行道线检测方法来得简单高效,因此本算法未采用。
Prewitt算子的模板如下: (6)
其中a为运用第一个模板对图像卷积的结果,b,c分别运用二、三模板对图像卷积的结果, , 为阈值。
改进之后的Prewitt算子能起到去除垂直线的作用,滤除光柱线。智能车辆在行进过程中,有时车身在行道线上,行道线在图像中则是垂直的,而这种情况下该行道线会被滤除,因此可以去掉垂直线检测的部分单独进行本算法,在最后加入光柱过滤的过程。 智能车辆在夜晚城市道路上的视觉导航方法研究(5):http://www.youerw.com/jisuanji/lunwen_6132.html