车道线识别
第一步:由于图像中车道线为白色,固使用颜色阈值将图像改为二值图片
第二步:由于图像中不仅车道线像素为白色,固使用一个梯形的形状将大部分噪音划分出去,保留下梯形内部的像素。
第三步:使用canny边缘检测算法。
Canny算法做图像边缘检测,它是根据图片像素梯度的变化进行描述。
算法总先检测高于high_threshold的像素点,不接受低于low_threshold的像素,然后再检测像素值介于high_threshold与low_threshold之间的像素值并且该像素需与高于high_threshold的像素进行连接。Canny算法得到的是一个个像素。
在canny算法内部已使用高斯平滑用于抑制噪声和杂散梯度。Kerne_size越大意外着越平均或平滑。
第四步:经过canny算法后,图像仍然为一个个像素点,需经过霍夫变换。
设定Hough空间内的空间距离与角分辨率,并设定一条直线中可接受输出直线的最短长度和一条直线中两点间隔的最大距离。最后得到一系列许多直线。
第五步:上步中得到的线过于杂乱,并且噪音大。固对每条直线的斜率进行判断,计算斜率的中间值,将中间值一定区间之外的斜率直线去除。之后再取平均值,进行划线,最终将直线与图像混合。