车道线检测

传统方法(udacity):

1、提取roi区域,如果roi区域内有检测到的其他目标,则使用则置mask=0,该区域就变成了黑色。然后对提取的ROI区域内使用sobel分别做水平和竖直方向上的边缘检测,正好将bbox上边缘的框去掉。得到基本的包含车道线的二值图像。然后再使用hough变换检测直线,然后计算直线斜率,统计得到斜率为正的是左车道线,斜率为负的是右车道线。然后分别计算正负斜率的平均值和方差,只保留为

色彩阈值法:

1、检测车道的另一个依据就是车道的颜色特征,车道只有两种颜色,黄色和白色。对这两种颜色进行过滤,从而提取车道像素。

(RGB)颜色阈值化在正常光照条件下能够很好的过滤出车道线像素,但是在复杂环境光照情况下并不稳定。(过曝)

(可能可以尝试下HSV空间)

(HSV组合梯度信息,能够更好的提取车道) (没来得及一一验证,哪一个效果更好)

(但是在实际提取过程中,需要考虑,模型(车道模型),置信率,曲线拟合 )(检测到的斑马线信息,应该不符合车道线模型。)

2、滑动窗口与多项式拟合

按照y轴选取9个窗口滑动。得到9个点后,通过

选取了几个关键点,使用opencv能够直接画出曲线。

数学上可以使用最小二乘法拟合。

先构造一个x^n的多项式,然后将x值带入,与实际的y值做差,使得差的平方之和最小。差的平方之和的多项式,关于每一个系数求偏导数。令其偏导数为0。将n个方程组组合,求出左右的系数。然后再将系数带入元多项式中。

结合:

猜你喜欢

转载自blog.csdn.net/weixin_37703648/article/details/82081637