背景
本课题是基于霍夫变换(Hough Transform)的车道线检测算法,算法本身强大,应用范围广泛。研究所采用的数据集是图森TuSimple车道线检测数据集,选取若干张具有明显车道特征的图片进行车道线检测。其中,对每类连续20帧的图片中的最后一帧进行车道识别。
主要内容
本文是利用霍夫变换能检测直线的原理对车道的边界信息进行检测、车道拟合算法设计和添加评价的量化指标。从而,方便在不同场景下设置合适的参数和对本文设计的两种算法的选择上进行直观对比。由于所拍摄的车道线均为近距离图像(拍摄角度固定),且多数情况下为直车道,因此该研究在道路建模中采用直线模式而不是更复杂的曲线。此外,直车道模型足以实现和分析基于霍夫变换(HT)的车道检测算法(即本研究的目标)。
主要参数设置
PyCharm Community Edition 2022.3.3
python 3.6.13
opencv-python 3.4.1.15
车道检测
预处理
利用canny边缘检测可得到良好的二值图像,如下图所示。
针对图森数据集下的车道图片,使用梯形掩膜可极大地降低车道识别的难度。
车道识别
以中轴线为分割,分别对左右区域内的霍夫直线段进行二阶曲线拟合得到如图所示效果。
加入透视变换的车道识别
针对车道曲率较大拟合效果不好的情况,本文使用了透视变换的方法,对透视图像进行车道识别,需要注意调整左右车道分界线的位置。
通过对检测出的车道进行透视逆变换可得到车道检测结果。
实验结果
基于此类方法,可验证包括算法本身、算法参数设置的差异、不同路面、不同光照等条件下算法的鲁棒性。而,车道感知失败的主要原因是预处理阶段车道边界检测不理想(车道线确实)以及环境因素等干扰引起的,尤其是在复杂路面条件下无法区分车道信息与背景信息。
展望
算法本身只适用于场景固定的单车道检测的范围之内,后续将进行多车道以及深度学习下的车道识别问题。