基于MATLAB霍夫曼变换的车道线检测系统

1、车道线检测算法设计

一般道路主要由直道和弯道两部分构成,故车道线也相应的分为直车道线和弯曲车道线两种类型,本节首先对道路图像划定感兴趣区以提高运算效率,然后针对两种不同类型的车道线选取不同的检测方法。对于直车道线,利用Hough变换进行直线的提取,筛选并绘制出离车辆最近的两条直车道线;而对于弯曲车道线,则通过最小二乘法利用抛物线模型进行曲线拟合,并根据抛物线二次项系数判别弯道转向。

2、确定感兴趣区

一般车载摄像机采集到的道路图像可划分为天空、路面和周围景物,通过对道路图像进行分析很容易发现车道线主要分布于整个道路图像的下方区域,上方其余区域以及道路区域两侧是天空、树木等非路面区域。为了进一步缩小搜索范围,降低算法复杂度,增强车道线检测的实时性和精确性,应准确进行感兴趣区的定位,故需确定包含车道线等有效信息的区域边界。

如图3.1所示,两幅道路图像均被三条绿色直线分割,水平直线以上区域以及两条斜线的外侧均为天空、树木等无效信息,而车道线信息主要集中在三条直线围成的下方梯形区域,即为需要的感兴趣区。因此在车道线检测之前可将感兴趣区外的区域裁剪掉,即用黑色像素点进行覆盖,以避免和减少车道线的误检测。

基于MATLAB霍夫曼变换的车道线检测系统_第1张图片

路面区域范围和大小与车载摄像机的安装参数直接相关,而车载摄像机一旦安装,各个参数基本不会发生变化,因此同一安装环境下采集到的道路图像路面信息不会发生太大变化,故可确定一个最大感兴趣区域,使得道路无论如何变化,道路车道线均包含在该区域中。根据近百帧不同环境下道路图像的试验结果进行统计分析,道路区域基本上位于图像下方1/2区域,而左右两条斜线的斜率k分别保持在-0.4和0.4时,可将车道线信息完整的保留而又尽可能多的去除道路两侧其他无效信息。

3、基于Hough变换的直车道线检测

Hough变换是图像处理中几何特征提取最基本的算法之一,由Paul Hough于1962年提出,后由Richard Duda和Peter Hart于1972年推广使用。Hough变换通过将图像空间的参数映射到参数空间,并结合一种投票算法来检测具有特定形状的物体。Hough变换是目前直线车道检测应用最广的方法之一,鲁棒性好、抗干扰能力强,对断裂或者遮挡的车道线也能够很好的将其检测出来。

3.2.1 Hough变换原理

Hough变换的工作原理是利用图像空间的点和参数空间的线之间存在的对偶关系,将图像空间的问题转化到参数空间来解决,如图3.2所示。

基于MATLAB霍夫曼变换的车道线检测系统_第2张图片

3.2.2 直车道线检测步骤

对于直车道线检测,主要分为以下六个步骤:

(1)对车载摄像机采集到的道路图像进行一系列预处理操作,经图像灰度化、灰度变换、平滑滤波、边缘检测后得到二值边缘图像;

(2)确定图像感兴趣区,将其余部分用黑色像素点进行覆盖;

(3)对二值边缘图像进行Hough变换,通过累加器进行计数累加;

(4)因车道线为多条,同时图像中或多或少的含有干扰线段,因此选取最大累加值作为基准,将累加值在最大累加值0.2倍以上的均提取出来进行从大到小排列,取前五个作为直线参数;

(5)虚线车道线是不连续的,为增强此类车道线的检测,同时减少噪声干扰,将检出的长度小于M的直线段丢弃,合并直线段距离小于N且具有相同(θ,ρ)的直线段,M、N大小的选取直接影响检测效果,可通过多次实验进行确定;

(6)距离车辆最近的两条车道线的斜率的绝对值最大,对应参数坐标系中θ的绝对值最小,左侧车道线θ为正值,右侧车道线θ为负值,通过排序,将最小的正θ值和最大的负θ值筛选出来,即对应为最近的两条车道线,将其绘制出来并延长至整个感兴趣区。

直车道线检测的过程如图3.4所示。图3.4(a)为经预处理后得到的二值边缘图像,图3.4(b)为确定感兴趣区后的二值边缘图像,图3.4(c)为Hough变换确定的峰值点图像,图3.4(d)为Hough变换提取的直线图像,图3.4(e)为筛选后绘制的车道线图像。

基于MATLAB霍夫曼变换的车道线检测系统_第3张图片

你可能感兴趣的:(算法,计算机视觉,机器学习,python,opencv)