首页> 中国专利> 一种单目视觉车道线检测方法及其测距方法

一种单目视觉车道线检测方法及其测距方法

摘要

本发明公开了一种单目视觉车道线检测方法及其测距方法,属于车辆驾驶安全辅助系统领域。其中车道线检测方法为:首先在车辆刚起步时拍摄多帧图像获取参照车道线,然后每读入一帧实时图像,均获取候选实时车道线,将候选实时车道线与参照车道线进行区域匹配,若能够匹配成功则更新倾斜角后输出参照车道线;若匹配不成功,且第一次出现不成功情况时,将候选实时车道线记载为临时车道线,若不匹配的情况连续出现,且能连续与临时车道线匹配成功,则输出临时车道线。利用上述方法检测到的车道线图像,设置参考目标并根据视觉采集系统中参考目标和目标车辆的投影关系,计算本体车辆与目标车辆之间距离。本发明适用于车辆车道线检测与两车测距。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-07-15

    授权

    授权

  • 2014-04-09

    实质审查的生效 IPC(主分类):G01C11/04 申请日:20131015

    实质审查的生效

  • 2014-03-12

    公开

    公开

说明书

技术领域

本发明属于车辆驾驶安全辅助系统领域,具体涉及一种单目视觉车道线检测方法及基于该车道线检测方法的车辆测距方法。 

背景技术

目前,随着车辆的普及,车辆的防撞与导航成为了热门的研究方向,智能的车辆防撞与导航的系统将是未来智能交通体系的重要组成部分。 

而无论车辆的防撞还是导航,车道线的快速准确的识别尤其重要,目前已经提出了很多基于视觉的车道线识别检测方法,大部分方法均是首先进行图像分割,对分割后的图像使用直线检测方法识别车道线。 

车道线的精准检测是实现车辆间测距的必要条件,而车辆间测距对于车辆防撞有重要的作用。目前测量车辆间距离主要采用单目视觉测量方法:即在车辆行驶时,采用一台数码相机或摄像机等视觉采集系统,拍摄单张图像,使用拍摄到的图像对汽车与前方车辆之间的距离进行测量。由于单目视觉测量方法结构简单,操作方便,避免了立体视觉中的视场小、立体匹配难等问题,因而越来越受到人们的重视。 

使用单目视觉的方法进行测距,其过程主要包括对物体的三维坐标的测量和对物体测距的研究。其中单目视觉测距的常用方法包括几何相似法、几何形状约束法、结构光法和激光辅助测距法以及几何光学法。 

其中几何相似法需要对摄像系统或视觉采集系统的位置、角度等精确测量,若位置与角度测量达不到一定精度,则会导致几何相似法的测距结果精度不高;几何形状约束法对目标几何形状有要求,不能针对所有几何形状进行测距;结构光法和激光辅助测距法需要激光作辅助工具;几何光学法分聚集法和离焦法,聚集法硬件复杂且昂贵、处理速度慢,离焦法中离焦模型的准确标定是难点。 

发明内容

有鉴于此,本发明提供了一种单目视觉车道线检测方法,该方法能够有效利用车道线检测的历史信息进行实时车道线检测,能够最大程度地避免虚假检测,提高车道线的检测精度。 

为达到上述目的,本发明的技术方案为: 

一种单目视觉车道线检测方法,具体步骤为: 

步骤1、设置异常标识flag=0,异常累积帧数N=0; 

获取参照车道线:获得车辆刚起步时拍摄的M帧图像,对M帧图像中每一帧均进行候选车道线提取,在所提取的所有候选车道线中,选取出现概率最高的两条候选车道线作为参照车道线,并确定参照车道线的区域D0=[D01,D02]和倾斜角θ0; 

步骤2、自第M帧图像之后,继续读入第i帧图像,i>M,对于第i帧图像进行实时检测,更新参照车道线并输出,本步骤具体如下: 

步骤201、读入第i帧图像,对于第i帧图像检测得到ni条候选实时车道线,先根据倾斜角将候选实时车道线分为两组,其中倾斜角大于90°的为一组、倾斜角小于90°的为一组; 

再用候选实时车道线的区域与参照车道线区域D0进行匹配,分别获取每组中各条候选实时车道线的区域与参照车道线的区域D0的像素的重叠区域O,计算区域匹配率Pmatch: 

Pmatch=SoSD0×100%,

其中S0为重叠区域O在图像中所占的像素个数,为参照车道线的区域D0在图像中所占的像素个数; 

若两组中都存在至少一条候选实时车道线与D01或D02的匹配率Pmatch≥50%,则区域匹配成功,此时针对每一组候选实时车道线,选出Pmatch最大的一条候选实时车道线,作为实时车道线,并将其所对应的区域记为Di,将其所对应的倾斜 角记为θi,设置flag=0、N=0;转到步骤202; 

若区域匹配不成功,则转到步骤203; 

步骤202、倾斜角θi与倾斜角θ0进行匹配,并设定判据为θthreshold,即判断是否满足|θi0|≤θthreshold,若满足,则倾斜角匹配成功,按照下式更新参照车道线: 

D0=(1-α)D0+αDiθ0=(1-α)θ0+αθi

其中,α为更新系数; 

若倾斜角匹配不成功,按照下式更新参照车道线: 

D0=(1-α)D0+αDiθ0=θi

转到步骤208; 

步骤203、判断flag是否为0,若是转到步骤204;否则转到步骤205; 

步骤204、判定第i帧图像出现异常,设置flag=1、N=1,将第i帧图像的候选实时车道线作为临时车道线,其中临时车道线的车道线区域倾斜角临时车道线的候选个数ntem=ni;转到步骤208; 

步骤205、按照倾斜角的范围将ni条候选实时车道线和ntem条候选临时道线分为两组,其中倾斜角大于90°的为一组、倾斜角小于90°的为一组; 

将属于同一组的候选实时车道线的区域与临时车道线的区域Dtem进行匹配,若一条候选实时车道线与一条临时车道线具有像素重叠区域,则计算该条候选实时车道线与该条临时车道线的匹配率; 

若两组中,每一组都存在至少一条候选实时车道线与一条临时车道线匹配率大于或等于50%,则匹配成功,从两组中各选出对应匹配率最大的一条候选实时车道线,作为实时车道线,即为记为Di和θi; 

令N自增1,更新临时车道线区域Dtem=(1-α)Dtem+αDi,转到步骤206进行倾斜角的匹配与更新; 

若与临时车道线匹配不成功,转到步骤208; 

步骤206、将倾斜角θi与倾斜角θtem进行匹配,并设定判据为θp,即判断是 否满足|θitem|≤θp,若满足,则临时倾斜角匹配成功,更新临时车道线的倾斜角θtem=(1-α)θtem+αθi;若匹配不成功,设置临时倾斜角θtem=θi; 

转到步骤207; 

步骤207、判断异常帧数是否满足N>Nthreshold,若不满足,直接转到步骤208,其中Nthreshold为设定异常数阈值; 

若满足,则将临时车道线作为参照车道线,将参照车道线作为临时车道线,且令N=0,转到步骤208; 

步骤208、令参照车道线为当前帧识别结果,输出车道线图像,判断车辆是否停止,若车辆已停止,则步骤2终止,若车辆未停止,则i自增1,返回步骤201。 

进一步地,步骤1中获取参照车道线的具体步骤为: 

步骤101、获得车辆刚起步时拍摄的M帧图像,对M帧图像中每一帧均进行直线检测,每帧图像均检测获得多条直线; 

步骤102、对于每帧图像中的多条直线,按照区域进行合并,每个区域均为一条候选车道线,其中第j帧图像共获得nj条候选车道线,所述区域的宽度依据图像大小进行设置;其中j=1、2、……M; 

计算每一候选车道线的倾斜角θ; 

步骤103、将所述nj条候选车道线按照其倾斜角分为两组,其中倾斜角大于90°的为一组、倾斜角小于90°的为一组,从两组中各选择一条车道线组成一对候选车道线,所选一对候选车道线满足的条件是:两条候选车道线在图像的纵向所占位置相同,且在图像的横向位置相差最小; 

则M帧图像共获得M对候选车道线,在该M对候选车道线中,统计倾斜角相近的候选车道线对的出现概率,选择在M对候选车道线中出现概率最大的一对候选车道线,记录该对候选车道线为参考车道线; 

上述倾斜角相近即倾斜角相差在设定范围之内。 

优选地,步骤102中候选车道线倾斜角的计算方法为:首先判断候选车道 线的两端点(x1,y1)、(x2,y2)是否满足x2-x1=0,若满足则θ=90°,否则计算 若θ<0,则取θ=θ+180°。 

本发明同时提供了一种基于上述单目视觉车道线检测方法的测距方法,该方法利用已知的参考目标进行单目测距,测算简单、无需对视觉采集系统进行初始的内部参数标定、速度快。 

为达到上述目的,本发明的技术方案为: 

一种基于上述的单目视觉车道线检测方法的测距方法,具体步骤如下: 

第一步、场景中具有本体车辆与目标车辆,本体车辆的垂直高度为h1,在本体车辆顶部设置视觉采集系统,在本体车辆的行驶方向上,将参考目标设置于本体车辆的最前端,且参考目标相对于于水平路面的垂直高度为h2; 

其中视觉采集系统位置与参考目标之间的距离为参照距离Lstand; 

第二步、使用视觉采集系统进行单目拍摄,依据单目视觉车道线检测方法获得本体车辆车道线图像,在车道线图像上,延伸参考车道线至目标车辆的位置; 

第三步、根据视觉采集系统中参考目标和目标车辆的投影关系,获得视觉采集系统与目标车辆车道线之间的直线距离Ltarget: 

Ltarget=rroadrroad·h1h1-h2Lstand

其中rroad为车道线图像上本体车辆位置处车道线的宽度,r’road为车道线图像上目标车辆位置处车道线的宽度; 

第四步、按照下式计算获得本体车辆与目标车辆之间的水平距离dtarget: 

dtarget=((rroadrroad·h1h1-h2Lstand)2-h12)1/2-(Lstand2-(h1-h2)2)1/2.

有益效果: 

1、本发明所提供的一种单目视觉车道线检测方法,在进行车道线检测的过程中将每一时刻的车道线检测均与历史时刻的参照车道线和临时车道线进行匹 配,同时通过实时更改参照车道线和临时车道线,最大程度地避免了虚假检测;该方法有效的利用了车道检测的历史信息,提高了车道线的检测精度。 

2、本发明同时提供了一种基于上述单目视觉车道线检测方法的测距方法,该方法在单一视觉采集系统下,建立已知的参考目标,实现了待测目标与视觉采集系统之间的距离测量,不需要其他的辅助工具,测算简单;且无需对视觉采集系统进行初始的内部参数标定、速度快。 

附图说明

图1是车道线检测流程图; 

图2是车道线区域和倾斜角示意图 

图3是车道区域匹配示意图; 

图4是车辆测距时由各高度引起的视角差异的几何示意图; 

图5是车道线延伸示意图; 

图6是视觉采集系统中参考目标和目标车辆的投影示意图。 

具体实施方式

下面结合附图并举实施例,对本发明进行详细描述。 

实施例1: 

本实施例是一种单目视觉车道线检测方法,该方法具体流程如图1所示: 

步骤1、设置异常标识flag和异常累积帧数N,二者初始值均为0。 

获取参照车道线:获得车辆刚起步时拍摄的M帧图像,对M帧图像中每一帧均进行候选车道线提取,在所提取的所有候选车道线中,选取出现概率最高的候选车道线作为参照车道线。获取参照车道线的步骤可按照步骤101至步骤104执行: 

步骤101、获得车辆刚起步时拍摄的M帧图像,对M帧图像中每一帧均进行直线检测。 

直线检测的方法可采用现有的方法,例如:首先对每帧图像均进行灰度化 处理,利用Sobel算子检测图像的梯度信息,得到边缘图像,并对图像二值化处理;利用Hough变换检测出边缘图像中的直线;可以发现每帧图像能够检测出多条直线。 

由于车辆刚刚起步时车速较慢,因此所提取的的候选车道线没有较大差异。 

步骤102、对于每帧图像中的多条直线,按照区域进行合并,每个区域均为一条候选车道线,其中第j帧图像共获得nj条候选车道线,所述区域的宽度依据图像大小进行设置,一般为10~30个像素,其中j=1、2、……M。 

计算候选车道线的倾斜角θ。 

步骤103、将步骤102中所提取的nj条候选车道线按照其倾斜角分为两组,其中倾斜角大于90°的为一组、倾斜角小于90°的为一组,从两组中各选择一条车道线组成一对候选车道线,所选一对候选车道线满足的条件是:两条候选车道线在图像的纵向所占位置相同,且在图像的横向位置相差最小。即以图像的纵向作为y轴,以图像的横向作为x轴,所选的一对候选车道线应满足其中两条的y轴相同,x轴相差最小。 

在进行图像拍摄的过程中,摄像机应位于本体车辆上,然而不能够保证本体车辆周围是否存在其他车辆,而上述选取候选车道线对的满足条件则能够保证所取候选车道线对为本体车辆的车道线。 

则M帧图像共获得M对候选车道线,在该M对候选车道线中,统计倾斜角相近的候选车道线对的出现概率,选择在M对候选车道线中出现概率最大的一对候选车道线,记录该对候选车道线为参考车道线;上述倾斜角相近即倾斜角相差在设定范围之内。 

如图2所示,则参照车道线的车道线区域D0=[D01,D02]。 

计算候选车道线的斜率角θ,倾斜角的可以直接根据图中车道线区域进行计算,也可采用如下方法:首先判断候选车道线的两端点(x1,y1)、(x2,y2)是否满足x2-x1=0,若满足则θ=90°,否则计算若θ<0,则取θ=θ+180°。则获得参照车道线的倾斜角为θ0=[θ0102]。 

步骤2、自第M帧图像之后,继续读入第i帧图像,i>M,对于第i帧图像检测得到多条候选实时车道线,将所有候选实时车道线分别与参照车道线进行匹配,更新参照车道线并输出,如图3所示,本步骤中使用参照车道线记载车辆正确行驶的历史信息,同时建立了临时车道线用于记载车辆异常行驶的历史信息;具体步骤如下: 

步骤201、与参照车道线的进行区域匹配 

对于第i帧图像检测得到多条候选实时车道线,先根据倾斜角将候选车道线分为两组,其中倾斜角大于90°的为一组、倾斜角小于90°的为一组。 

再用候选实时车道线的区域与参照车道线区域D0进行匹配。分别计算每组中各条候选实时车道线的区域与参照车道线区域D0像素的重叠区域O,如图4所示,计算区域匹配率Pmatch: 

Pmatch=SoSD0×100%,

其中S0为重叠区域O在图像中所占的像素值,为参照车道线区域D0在图像中所占的像素值。 

若两组中都存在至少一条候选实时车道线与D01或D02的元素的匹配率Pmatch≥50%,则区域匹配成功,则在匹配成功的候选车道线中,选出Pmatch最大的两条候选实时车道线,作为实时车道线,其中实时车道线的车道线区域为Di,倾斜角为θi,同时设置flag=0、N=0,即将flag和N清零,以便于在步骤203进行判断。转到步骤202与参照车道线进行倾斜角的匹配; 

若参照区域匹配不成功,则认为当前帧图像中车道线出现异常,需要与临时车道线所记载的历史异常情况进行匹配,因此转到步骤203。 

步骤202、与参照车道线进行倾斜角匹配 

将实时车道线的倾斜角θi与参照车道线倾斜角θ0进行匹配,并设定判据为θthreshold,即判断是否满足|θi0|≤θthreshold,若满足,则倾斜角匹配成功,更新参照车道线: 

D0=(1-α)D0+αDiθ0=(1-α)θ0+αθi

这里α为更新系数,一般取为0.01~0.1,θthreshold为匹配阈值,一般取为2°~8°; 

若倾斜角匹配不成功,则认为车辆处于转弯状态,更新参照车道线 

D0=(1-α)D0+αDiθ0=θi

转到步骤208。 

步骤203、判断flag是否为0,若是转到步骤204;否则转到步骤205。 

步骤203在每一次进入时有不同的情况:当第一次进入步骤203时,即第一次出现图像中车道线异常的情况,此时flag为初始值0,则进入步骤204使用当前帧图像中的车道线作为临时车道线,即将异常信息记载于临时车道线,以便于后续进行历史异常情况的匹配。 

当连续两次进入步骤203时,由于已经出现过一次图像异常的情况,flag为1,则进入步骤205与历史异常情况即临时车道线进行匹配。 

若连续n次出现图像异常,第n次进入步骤203时,flag为1,则进入步骤205与临时车道线进行匹配,判断同一类异常是否出现多次。 

步骤204、即前一帧图像无异常,可判断当前帧图像异常,即第i帧图像出现异常,设置flag=1、N=1,使用第i帧图像的候选实时车道线作为临时车道线,其中临时车道线的车道线区域倾斜角临时车道线的候选个数ntem=ni。转到步骤208. 

步骤205、与临时车道线进行区域匹配 

按照倾斜角的范围将ni条候选实时车道线和ntem条候选临时道线分为两组,其中倾斜角大于90°的为一组、倾斜角小于90°的为一组。 

将属于同一组的候选实时车道线区域与候选临时车道线区域Dtem进行匹配,若一条候选实时车道线与一条临时车道线具有像素重叠区域,则计算该条候选实时车道线与该条临时车道线的匹配率。 

若两组中,每一组都存在至少一条候选实时车道线与一条临时车道线匹配 率大于或等于50%,则匹配成功,即当前帧所出现异常已出现多次,从两组中各选出对应匹配率最大的一条候选实时车道线,作为实时车道线组,记为Di和θi。 

设置flag=1,令N自增1,更新临时车道线区域Dtem=(1-α)Dtem+αDi,转到步骤206再次与临时车道线进行倾斜角的匹配与更新。 

若与临时车道线匹配不成功,则该异常为新增的异常行驶情况,则将当前帧图像的实时车道线作为临时车道线,其中临时车道线的车道线区域Dtem=Di、倾斜角θtemi;同时令临时车道线的候选个数ntem=ni;转到步骤208;。 

步骤206、与临时车道线进行倾斜角匹配 

候选实时车道线的倾斜角θi与临时车道线倾斜角θtem进行匹配,并设定判据为θp,即判断是否满足|θitem|≤θp,若满足,则临时倾斜角匹配成功,更新临时车道线的倾斜角θtem=(1-α)θtem+αθi;若不匹配,则认为车辆处于转弯状态,设置临时倾斜角θtem=θi。 

转到步骤207。 

步骤207、判断异常帧数是否满足N>Nthreshold,其中Nthreshold为设定异常数阈值;若满足,则认为该异常行驶情况在车辆行驶过程中连续多次出现,应作为正常行驶情况进行处理,因此将临时车道线作为参照车道线,将参照车道线作为临时车道线,且令N=0,转到步骤208;否则转到步骤208。 

步骤208、令参照车道线为当前帧识别结果,输出车道线图像,判断车辆是否停止,若车辆已停止,则该流程终止,若车辆未停止,则i自增1,返回步骤201。 

实施例2: 

本实施例同时提供了一种基于上述单目视觉车道线检测方法的测距方法,该方法利用车辆前方安装的视觉采集系统采集图像序列进行实验,其实现流程见图1。具体步骤如下: 

第一步、如图5所示,场景中具有本体车辆与目标车辆,车辆位于水平路 面,本体车辆的垂直高度为h1,在本体车辆顶部设置视觉采集系统,在本体车辆的行驶方向上,将参考目标设置于本体车辆的最前端,且参考目标相对于水平路面的垂直高度为h2。 

其中视觉采集系统位置与参考目标之间的距离为参照距离Lstand。 

第二步、使用视觉采集系统对本体车辆进行单目拍摄,依据上述单目视觉车道线检测方法获得本体车辆车道线图像,在图像上将本体车辆的车道线按照其车道线区域与倾斜角沿本体车辆的行驶方向延伸至目标车辆的位置处,如图6所示,在图6中实线所画为车道线图像中的车道线。 

第三步、设本体车辆的车道线位置为C点,将本体车辆的车道线按照其车道线区域与倾斜角沿本体车辆的行驶方向延伸至目标车辆的位置处,设目标车辆位置为F点;如图5所示。 

其中视觉采集系统与C点之间的距离为参考距离L’stand,计算L’stand。 

如图5所示,参考目标DE,由视觉采集系统位置A经E点画直线与水平路面相交与C点,则C点即对应车道线位置,因此实际计算所需参考距离为L’stand=AC,根据几何关系可知,实际计算时应用的参考距离为 设参考目标对应的车道在图像上成像的宽度像素nroad。 

根据图6中视觉采集系统中参考目标和目标车辆的投影关系为: 

droadLstand=rroadf

droadLtarget=rroadf

可得 

Ltarget=rroadrroadLstand

其中droad为实际车道线的宽度,对于目标车辆和本体车辆来说其实际车道线宽度相等,如图6中,目标车辆的实际车道线为点划线所示;f为视觉采集系统焦距,Ltarget为视觉采集系统到待测目标的距离,rroad为车道线图像上本体车辆 位置处车道线的宽度,r’road为车道线图像上目标车辆位置处车道线的宽度,其中rroad、r’road在图6中均有表示,rroad、r’road可使用本体车辆和目标车辆在图像上的车道线宽度像素个数nroad、n’road乘以像元间距获得。 

由此可知,计算公式为即根据图5的得视觉采集系统到目标车辆车道线的直线距离: 

Ltarget=AF=nroadnroadLstand=nroadnroad·h1h1-h2Lstand.

第四步、计算本体车辆与目标车辆之间的水平距离dtarget。 

根据图5的几何关系可知,本体车辆与目标车辆之间的水平距离应当是本体车辆最前端与目标车辆之间的距离,因此dtarget即为DF,计算DF所需的各几何线段的计算为: 

BD=(Lstand2-(h1-h2)2)1/2BF=(AF2-h12)1/2=((nroadnroad·h1h1-h2Lstand)2-h12)1/2

需要求的本体车辆与目标车辆之间的距离为 

dtarget=BF-BD=((nroadnroad·h1h1-h2Lstand)2-h12)1/2-(Lstand2-(h1-h2)2)1/2

输出计算所得的本体车辆与目标车辆之间的水平距离dtarget。 

综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。 

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号