一种多车道线检测方法与流程

文档序号:11555735阅读:834来源:国知局
一种多车道线检测方法与流程

本发明属于计算机视觉与自动驾驶领域,具体地,涉及一种多车道线检测方法。



背景技术:

在自动驾驶领域,车道线的检测是一个重要环节,也是当前自动驾驶领域研究的热点问题。然而,目前大部分基于计算机视觉的车道线检测方法都不能鲁棒的对车道线进行检测,主要原因如下:道路上的光照、阴影,道路上的其它障碍物(车辆,行人等),道路上的其它交通标线等信息,对检测道路上的车道线产生干扰。

目前,基于计算机视觉的多车道线检测算法有很多。国内外很多和自动驾驶相关的期刊、会议都将车道线检测算法列为重点研究领域,国内外学者也在这方面做出了大量的有益成果,近年来论文中的方法主要有:

m.aly在2008年将图像转换为逆透视图像,然后基于ransac算法和beziersplines曲线对车道线拟合,可同时检测多车道线;m.nieto等人在2008年将待处理的道路区域转换到逆透视空间中,然后使用具有层次化结构图对道路建模来检测车道线;m.nieto等人在2011年对待处理的感兴趣区域做逆透视变换,然后使用递归贝叶斯模型对逆透视变换图像做逐像素分类,最后使用圆弧对道路建模检测车道线;l.xin等人在2011年使用直线和抛物线直接在透视图像上对道路建模,实现远距离多车道线检测;f.m.sebdani等人在2011年使用固定的交通摄像头采集图像,然后直接对原图实施基本图像处理,最后使用hough变换对车道线检测;z.xu等人在2012年使用改进的canny算子对道路边缘检测,然后使用概率hough变换对车道线检测;x.liu等人在2012年将相机采集的彩色图像转换到hsv空间,接着做基本图像处理,然后使用canny算子检测道路边缘,最后使用概率hough变换对车道线检测;j.y.deng等人在2013年将图像的感兴趣区域做逆透视变换,接着做基本的图像处理,最后使用优化的ransac算法结合b-spline对车道线检测;d.seo等人在2014年将图像的感兴趣区域做逆透视变换,接着使用颜色特征对车道线分割,最后使用ransac算法结合hough变换对车道线检测。

专利方面,公开号为cn102722705a的中国发明专利申请通过基于ransac算法对多车道线检测;公开号为cn103617412a的中国发明专利结合消失点确定感兴趣区域,然后检测当前两车道的车道线;公开号为cn103632140a的中国发明专利利用对图像区域划分对车道线检测;公开号为cn103940434a的中国发明专利基于单目视觉和惯性导航单元对车道线实时检测;公开号为cn103971081a的中国发明专利基于双边约束方法对多车道线检测;公开号为cn104751151a的中国发明专利基于车道线左右两侧颜色明暗变化检测车道线;公开号为cn104951790a的中国发明专利基于多源逆透视图像无缝拼接对车道线检测;公开号为cn105160309a的中国发明专利基于图像形态学分割及区域生长方法对三车道的车道线检测;公开号为cn105354553a的中国发明专利利用结构张量及向量场散度区分边缘、边角等边缘特征,从而实现对车道线检测;公开号为cn105426864a的中国发明专利基于等距边缘点匹配方法对多车道线检测;公开号为cn105678285a的中国发明专利利用自适应的道路鸟瞰图变换方法对车道线检测。

然而,上述所述的文献都不能鲁棒的对多车道线检测,主要问题如下:第一,在图像预处理阶段对整张图像做统一处理,使得光照、阴影等干扰信息影响极大;第二,若是采用ransac算法直接对点集做车道线方程拟合,则不能充分利用车道线检测任务中车道线所具有的条状特征,使得ransac算法在有限的计算下不能获得更好的结果。



技术实现要素:

本发明的目的是提供一种多车道线检测方法,能同时执行多车道线检测,并且在光照、阴影等条件下具有高鲁棒性。

实现本发明目的的技术解决方案为:一种多车道线检测新方法,包括如下步骤:

步骤1、初始化控制点先验信息和车道线先验信息;

步骤2、获取连续帧的彩色图像,对当前帧图像进行灰度化处理,具体为:使用安装在自主车上的相机,实时的采集rgb三通道彩色图像,然后只提取彩图图像中的r通道图像,作为待处理的灰度图像。

步骤3、设定栅格地图的大小,结合相机内参数及相机架设的高度求取当前帧灰度图中感兴趣区域的逆透视图像,此逆透视图像即为当前帧的栅格地图,具体为:根据实际需求,首先设定当前车辆的前方感知范围和左右感知范围,接着设置栅格地图的分辨率,即栅格地图中一个像素对应物理世界中一块区域的大小;然后计算栅格地图的大小;最后结合相机参数和栅格地图的尺寸计算灰度图像的逆透视图,即最终的栅格地图。具体计算步骤为:先计算世界坐标系到栅格地图的映射关系,接着计算世界坐标系到相机坐标系的映射关系,然后计算相机坐标系到图像坐标系的映射关系,最后根据计算出的映射关系,直接从原始灰度图中获得对应位置的像素值填放到栅格地图中,此过程参看图1、图2。

步骤4、根据控制点先验信息,在栅格地图上应用德洛内三角剖分算法和泰森多边形,获得对栅格地图的区域划分,划分好的区域互不重叠;

步骤5、对划分好的区域分别使用sobel算子对车道线边缘检测,再使用自适应阈值化操作获得二值图,使用腐蚀操作消除部分噪声点,获得最终的二值图;边缘检测的具体方法为:使用水平方向2阶导数、垂直方向0阶导数、核的大小为5×5的sobel算子检测车道线边缘;自适应阈值化操作的具体方法为:分别求取每一个区域的最大像素值,如果区域中像素的值大于最大值的95%,则被重新赋值为255,小于最大值的95%的像素,其像素值被赋值为0;腐蚀操作采用3×3大小的核。结合步骤4,最终输出的可视化结果可参看图3。

步骤6、根据车道线先验信息,对划分好区域分组,将包含上一帧同一条车道线的区域归为同一组,并记录当前帧在每一组中所包含非零像素值所在位置的横坐标和纵坐标;

步骤7、使用改进的ransac算法对每一组非零像素点做曲线拟合获得车道线方程,具体为:首先从上到下分别在每一个区域中随机选择一个点,如果该区域中没有点,则直接跳过;然后对随机点做曲线拟合;接着统计其余点到该曲线的距离,对距离大于阈值的非零值像素计数;重复上述步骤直到最大迭代次数,最后选择计数最多的曲线即为最终所拟合出的车道线。

步骤8、采用粒子滤波算法结合控制点先验信息预测当前帧的控制点坐标,结合步骤步骤7拟合的车道线方程,求得最终的车道线方程;具体为:采用粒子滤波算法预测当前帧控制点坐标;接着在栅格地图中从上到下每隔一段距离划一条横线,选择步骤步骤7拟合的车道线方程与横线的交点作为当前帧的控制点;然后将计算和预测的横坐标做差值,若差值大于设定的阈值,则将预测的控制点的坐标作为粒子滤波算法的预测值,将计算出的控制点的坐标作为粒子滤波算法的测量值,分别计算预测值的横坐标与测量值的横坐标的距离,并做归一化,将归一化后的值作为预测的控制点的坐标的概率;若差值小于设定的阈值,则不更新粒子滤波算法的粒子概率;最后选取最大概率所对应的粒子作为新的控制点,获得新的控制点后,对每一组新的控制点采用最小二乘拟合,求得最终的车道线方程。

步骤9、对栅格地图中求得的最终车道线方程做透视变换,求得当前帧在原图上的车道线方程,即得检测的车道线;若存在未处理的图像帧,则将步骤步骤8得到的最终车道线方程作为下一帧的车道线先验信息,并根据最终车道线方程确定下一帧图像的控制点先验信息,并跳转步骤步骤2处理下一帧;确定下一帧图像控制点先验信息的具体方法为:在栅格地图中从上到下每隔一段距离划一条横线,选择横线与步骤步骤7求得的最终车道线方程的交点作为当前帧的控制点,即下一帧图像控制点先验信息。

与现有发明相比,本发明具有如下优点:1)本发明使用泰森多边形对区域划分,并且分别对每一个区域做基本的图像处理,使得算法具有抗光照、遮挡、阴影等效果,鲁棒性高。2)本发明使用改进的ransac算法对车道线拟合,在固定的迭代次数下,比普通的ransac算法更节约时间,并且更容易找到最合适的曲线方程。3)本发明在道路上有其它标志或者车辆时,对道路上多车道线检测效果也很好,具有很高的实际应用价值。

附图说明

图1为原始图像到逆透视图像坐标系转换图,其中,(a)为世界坐标系;(b)为世界坐标系到栅格地图的转换;(c)为相机坐标系;(d)为图像坐标系;

图2为原始图像转换到栅格地图;

图3为基本图像处理结果和泰森多边形区域划分;

图4为本发明方法的车道线检测效果图,其中,图(a)为道路上只有车道线信息的检测结果;图(b)是在道路上有黑色车辆的情况下车道线检测效果,其中白色框框住的是黑色车辆;图(c)是在道路上有其它交通标线的情况下的检测效果,如道路上横向的交通标线;图(d)是在道路上分别有白色车辆和有其它交通标线的情况下的检测效果;

图5为本发明的方法流程图。

具体实施方式

下面结合具体的实施对本发明进行更加详细的说明,以下具体的实施有助于开发人员对本发明的理解,但不以任何形式限制本发明。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都是本发明的保护范围。

本实施实例提供一种多车道线检测方法,首先,本文分离出相机采集的彩色图像的红色通道作为待处理的灰度图像,接着,根据相机在自主车上的安装位置、相机内参数、设定的栅格地图大小,将原始图像做逆透视变换,获得栅格地图。其次,根据上一帧提供的控制点信息,本文使用德洛内三角剖分算法和泰森多边形对栅格地图进行区域划分,并且对划分区域进行基本图像处理获得二值图。接下来,根据上一帧检测到的车道线对区域分组,并且分别记录非零像素点坐标,并且使用改进ransac算法和车道线模型对上述记录的非零像素点坐标做匹配,获得车道线方程。最终,结合当前车道线方程和粒子滤波算法对当前帧图像控制点的预测,计算出最终的车道线方程和新的控制点,方便下一帧图像使用,同时,对最终计算出的车道线方程做透视变换,获得原始图像上的车道线方程。

在计算灰度图像时,本文只采用红色通道的图像作为灰度图,这样可以节约计算灰度图的时间,而且不影响最终效果。相机的参数分别如下:相机架设高度为1.8米,俯仰角-0.034幅度,偏航角0.021幅度。待处理的物理世界尺寸为左右5米,前方7~87米。栅格地图中每个像素对应的物理尺寸为:一个像素的宽度对应的物理尺寸为0.05米/像素,一个像素的高度对应的物理尺寸为0.2米/像素。然后本文根据上述参数对灰度图做逆透视变换,获得栅格地图,其大小为:宽度200像素,高度400像素。

在计算控制点时,具体操作如下:在栅格地图中每隔20个像素划一条横线,选择该条横线与检测到的车道线的交点,作为控制点。如下图3所示,在每一条车道线上,共有19个控制点。

根据控制点,本文先使用德洛内三角剖分算法对栅格地图区域划分,接着直接求取泰森多边形获得最终的区域划分,并且划分好的区域互不重叠,每一个区域中都有一个控制点。

在对每一个划分好的区域进行基本图像处理时,本文首先使用水平方向具有2阶导数、垂直方向具有0阶导数、5×5大小的sobel算子对车道线边缘检测,然后,分别求取每一个区域的最大值vk,其中,k表示第几个区域,接着,对每一个区域做二值化,具体如下式:

其中,pkij表示第k个区中第(i,j)位置像素的值,最后,使用3×3大小的核对图像做腐蚀操作。

根据上一帧检测到的车道线对区域分组,然后,本文记录每一组中非零像素的像素坐标。例如,对于第一条车道线,假设从上到下的区域分别为gg,g=1,2,…,19,其中g表示一组中从上到下第g个区域,那么每一个区域中对应非零像素坐标构成的集合为sg,g=1,2,…,19。

在使用改进的ransac算法对车道线拟合时,本文设置如下:最大迭代次数为200,阈值t=3,线型为直线。

具体算法如下:

步骤1:在每一个集合sg,g=1,2,…,19中随机选择一个像素坐标,此处,没有非零像素坐标的集合直接跳过。最后,由选出的像素坐标确定一条直线l;

步骤2:根据阈值t,确定与直线l的几何距离小于t的像素坐标点集合s(l),并称它为直线l的一致集;

步骤3:重复200次的随机选择,得到直线li,i=1,2,…,200和相应的一致集s(l1),s(l2),…,s(l200);

步骤4:将最大一致集所对应的直线,作为数据点的最佳匹配直线。

上述步骤的最佳匹配直线,即为检测到的第一条车道线方程,对于其它分组中对车道线的检测过程和上述一样。

根据检测到的车道线,本文再次计算控制点坐标,然后根据上一帧图像控制点的位置信息,分别使用粒子滤波算法对当前图像上控制点位置做预测。如果预测出控制点的横坐标与计算出控制点的横坐标的差值的绝对值大于10,那么,本文对当前图像上的控制点做更新,在对所有的控制点更新完成后,求取最终的车道线方程,并且计算新的控制点方便下一帧图像使用。同时,本文将计算好的车道线方程做透视变换获得原始图像中的车道线方程。

图4为本发明方法的车道线检测效果图,这四张图中,道路上都有部分阴影,通过检测效果可以看出本发明方法在只有车道线信息、有黑色车辆、白色车辆、或者其他交通线的情况下均有很好的检测效果。

以上对本发明的具体实施实例进行了详细描述。需要指出的是,本发明并不局限于上述特定的实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1