发明名称 基于二值图像的车道线保留与检测算法
摘要 本发明涉及一种基于二值图像的车道线保留与检测算法,本算法首先通过对轮廓面积及其长宽比的约束去除最明显的噪声部分,然后通过对图像最下面1/4的部分进行轮廓的提取,记录轮廓中每行白色像素的个数到数组a[L-4],并对轮廓左右边缘点进行直线拟合,保留数组a[L-4]的方差小于阈值T并且轮廓左右两边斜率差在10%以内的轮廓。最后对这些轮廓“注水”,通过水流的方向确定寻找的路径,另外通过水流的势能冲破黑色像素的“阻挠”去寻找断裂或者没有识别出来的轨道线,使二值图像中只保存符合轨道线特征的轮廓组,最后保留车辆所在车道的左右车道线轮廓组,通过拟合轮廓组边缘点,标注车道线,旨在提高轨道线检测的准确性。
申请公布号 CN104573627A 申请公布日期 2015.04.29
申请号 CN201410662665.9 申请日期 2014.11.19
申请人 湖南大学 发明人 陈涛;张洪丹;谭纯;陈东
分类号 G06K9/00(2006.01)I 主分类号 G06K9/00(2006.01)I
代理机构 北京康盛知识产权代理有限公司 11331 代理人 张良
主权项 一种基于二值图像的车道线保留与检测算法,其特征在于:包括如下步骤:步骤1、从摄像头采集24位真彩图片,通过图像的灰度化及灰度化图像的阈值分割过程,转化为二值图像,在该二值图像中,将道路区域图像作为待处理区域;步骤2、进行最初的去轮廓处理,即对于道路区域中分散的白色像素与轮廓特征畸形的区域,通过提取道路区域中的每个轮廓特征,去除轮廓面积小于阈值T<sub>area</sub>及轮廓的高宽比小于阈值T<sub>LW</sub>=1/5的轮廓;其中T<sub>area</sub>是根据道路区域中所有轮廓的个数决定的,即T<sub>area</sub>将道路区域的轮廓按面积划分成面积大小排在前1/4的轮廓,而T<sub>LW</sub>=1/5则是算法定义的一个阈值;在该步骤中:步骤201:通过轮廓面积的约束去除部分噪声;步骤202:再次通过提取道路区域下半部分作为下一步的图片处理区域,并定义道路区域的下半部分为搜寻区域;步骤203:去除搜寻区域中,轮廓的高宽比小于阈值T<sub>LW</sub>=1/5的轮廓;步骤3、对搜寻区域作轮廓的提取,每个轮廓由L行白色像素组成,记录轮廓中第3行至第L‑2行每行白色像素的个数到数组a[L‑4]中,其中L为轮廓的高度,即轮廓像素行数,并计算数组a[L‑4]的方差σ<sup>2</sup>;记录轮廓左右边缘点的坐标,分别对轮廓左右边缘点进行直线拟合,保留轮廓左右边缘的斜率K<sub>1</sub>和K<sub>2</sub>,剔除数组a[L‑4]方差σ<sup>2</sup>>T<sub>σ</sub>,且轮廓左右边缘的斜率K<sub>1</sub>和K<sub>2</sub>之间的差值超过10%的轮廓,即剔除<img file="FDA0000611377840000011.GIF" wi="301" he="162" />的轮廓,其中T<sub>σ</sub>为轮廓数组a[L‑4]的方差从小到大排序,排在第9位的轮廓数组的方差;在该步骤中:步骤301:记录轮廓的宽度值,即轮廓宽度方向上第3行至L‑2行中每行白色像素的个数到数组a[L‑4]中,其中L为轮廓的高度;步骤302:由于视差导致的车道线宽度由近及远会逐渐变窄,求取数组a[L‑4]首尾相加的平均值作为新的数组,求取新数组的方差σ<sup>2</sup>作为筛选轮廓的方差值,从而消除视差的影响;步骤303:在搜寻区域的轮廓中,比较轮廓中点横坐标x与W/2的大小,若x小于W/2,则轮廓定义为左轮廓,若x大于W/2,则轮廓定义为右轮廓,其中W为图片的宽度,即宽度方向上像素的个数;步骤304:对于左右轮廓的宽度方差,即数组a[L‑4]的变形之后的新数组的方差,分别按从小到大的顺序排列,对于左右轮廓部分分别取排序靠前的四个轮廓作为预留轮廓,其它的则去除;步骤305:通过对轮廓左右边缘斜率K<sub>1</sub>与K<sub>2</sub>数值差别的约束,去掉左右边缘斜率差别大于10%的轮廓,即<img file="FDA0000611377840000021.GIF" wi="299" he="166" />时的轮廓;步骤4、经过方差与斜率的约束,仍然保留下来的轮廓,则认为符合车道线特征的轮廓;在该步骤中:步骤401:通过搜寻区域的轮廓继续在道路区域寻找符合车道线特征的轮廓通过搜寻区域的轮廓在道路区域继续寻找符合车道线特征的轮廓,一条车道线上的轮廓在同一个方向上,所以可以通过轮廓边缘点的斜率继续在道路区域中寻找,这就要对轮廓的边缘点进行二次拟合,拟合得到的左右边缘曲线方程分别为y<sub>1</sub>=a<sub>0</sub>+a<sub>1</sub>x+a<sub>2</sub>x<sup>2</sup>和y<sub>2</sub>=b<sub>0</sub>+b<sub>1</sub>x+b<sub>2</sub>x<sup>2</sup>,并且求得轮廓断裂部分边缘点的斜率,以便继续沿着轮廓断裂部分的斜率继续寻找;步骤402:通过拟合得到的二次曲线来求取轮廓的寻找方向,即对轮廓纵向上边缘点求导得到;对于求解得到的二次曲线求导得到,方程的导数为y′<sub>1</sub>=a<sub>1</sub>+2a<sub>2</sub>x与y'<sub>2</sub>=b<sub>1</sub>+2b<sub>2</sub>x,其中x为轮廓左右边缘点的横坐标,其中a<sub>1</sub>、a<sub>2</sub>、b<sub>1</sub>、b<sub>2</sub>分别为拟合得到的二次曲线的参数信息,y′<sub>1</sub>与y'<sub>2</sub>分别为车道线左右边缘的寻找方向;步骤403:在寻找方向上对于搜寻到的轮廓,则认定为同一轮廓组。并对搜寻到的轮廓的左右边缘点分别添加储存到数组Points1与Points2中,当搜寻到的轮廓再次出现断线的时候,可以通过新数组Points1与Points2重复步骤401与402继续寻找,直到搜寻到图像的边界,记录下图像边界的横坐标Ws,再根据最终确定的寻找方向计算该组轮廓与图片底端交点的横坐标Wx,若该轮廓组的中点的横坐标在图片的左半边,则轮廓组为左车道线,若<img file="FDA0000611377840000022.GIF" wi="303" he="131" />在图片的右半边,则为右车道线;x<sub>lun</sub>为轮廓的纵坐标为<img file="FDA0000611377840000031.GIF" wi="154" he="126" />时的x的坐标,其中H为图片的高度;步骤5、保留车辆所在的行驶车道的轮廓组,其余车道线轮廓组则去除;该步骤中:步骤501:对于保留下来的符合轨道线特征的轮廓,只保留离图像中垂线位置较近的两组轨道线,即车辆所在的行驶车道线;步骤502:对于保留下来的符合轨道线特征的轮廓组,计算轮廓寻找方向与图片上端的交点Ws,图片左右两边满足交点Ws与图片中点横坐标的距离最小的轮廓组为左右车道线轮廓组,即min|Ws‑W|,行驶车道线轮廓组,即只保留车辆所在的车道线轮廓组;步骤6、对于保留下来的行驶车道轮廓组,为了判断车辆与车道线的位置关系,需要拟合出左右车道线,提取车道线与车辆的位置信息,为预警与否作准备。步骤601:搜集车道线拟合需要采集的数组点到数组Points1与Points2中;对保留下来的左右两组轮廓组进行曲线拟合,提取车道线与车辆的位置信息,将左边轮廓组内轮廓的右边缘点记录在数组Points1中,将右边轮廓组内的轮廓的左边缘记录在数组Points2中;步骤602:对于数组Points1与数组Points2中的点,分别通过最小二乘法进行二次曲线拟合,得到曲线方程分别为y<sub>1</sub>=a<sub>0</sub>+a<sub>1</sub>x+a<sub>2</sub>x<sup>2</sup>和y<sub>2</sub>=b<sub>0</sub>+b<sub>1</sub>x+b<sub>2</sub>x<sup>2</sup>,其中a<sub>0</sub>、b<sub>0</sub>、a<sub>1</sub>、a<sub>2</sub>、b<sub>1</sub>、b<sub>2</sub>分别为拟合得到的二次曲线的参数信息;步骤603:在摄像头采集的原始图片中用线条标注出车道线的具体位置,从而得到拟合效果图。
地址 410082 湖南省长沙市岳麓区岳麓山南路麓山门机械与运载工程学院