利用陀螺仪传感器进行车道线检测的方法与流程

文档序号:12110315阅读:584来源:国知局
利用陀螺仪传感器进行车道线检测的方法与流程

本发明属于计算机视觉与智能交通领域,特别涉及一种利用陀螺仪传感器进行车道线检测的方法。



背景技术:

近年来,随着智能交通领域与计算机视觉方面的技术不断发展,基于计算机视觉的汽车主动安全产品也日渐丰富。比如自适应巡航控制系统(ACC)、车道偏离警告(LDW)、车道保持辅助(LKA)和侧面物体探测(SOD)等,然而车道线的检测是实现这些产品相关技术的基础。

常见的基于相机的车道线检测方法一般是先对图像进行预处理,然后大致确定车道线所在范围,再利用霍夫变换进行车道线检测,但是图像质量越是不好,检测到的车道线杂线就越多,尤其是雨天车轮印记或者道路上的裂痕都会被误识别为车道线,或者遇到障碍物近距离遮挡、树木或者建筑物阴影的遮挡等路面情况时,由于相机无法采集到包含足够多车道信息的图像而出现漏检、误检等问题,这样就是的车道线的识别不够精确。因此,如何设计一套环境适应性强、运算速度快、移植性好的高鲁棒性算法,是相关领域研究的热点之一。同时,现有的一些关于车道线检测的产品虽然性能优良,但是由于算法相对复杂使得前期标定过程复杂,对装配工人的专业知识要求相对较高,所以研发一套利于工业产品装配的算法以及提高车道线检测地精确也是非常有必要的。

为了解决现有技术存在的问题,人们进行了长期的探索,提出了各式各样的解决方案。例如,中国专利文献公开了一种一种车道线检测方法及装置[申请号:201310616153.4],该方法包括获取车辆前方图像;对车辆前方图像进行边缘检测,得到边缘图;根据前一帧获取的车道线的位置在边缘图中确定初始车道线检测区域;将初始车道线检测区域划分为N个小检测区域,N大于等于2;根据每个小检测区域的边缘图数值和每个小检测区域的像素点的总数,确定某个小检测区域为精确车道线检测区域;从精确车道线检测区域中获取当前帧的车道线。上述方案在一定程度上解决了现有车道线检测不够精确的问题,但是该方案依然无法从根本上解决计算量大,减杂线对检测结果的影响的问题。



技术实现要素:

本发明的目的是针对上述问题,提供一种结构简单合理,高精度的利用陀螺仪传感器进行车道线检测的方法。

为达到上述目的,本发明采用了下列技术方案:本利用陀螺仪传感器确定车道线检测有效范围的方法,其特征在于,本方法包括下述步骤:

A、选取标定场景:选取画有左车道线和右车道线的车道为标定场景,将当前车辆停靠或者行驶在所在车道的左车道线与右车道线之间,并确保当前车辆所在车道的左车道线与右车道线在摄像机图像中可见;

B、人机交互标定:移动显示于摄像机图像中的预设的左标定直线以使左标定直线与左车道线或左车道线的切线重合从而实现左车道线标定,移动显示于摄像机图像中的预设的右标定直线以使右标定直线与右车道线或右车道线的切线重合从而实现右车道线标定,分别计算出此时左车道线与右车道线在图像坐标系中的直线方程;

C、检测车身姿态角:通过安装在当前车辆上的陀螺仪传感器监测当前车辆的实时姿态并采集实时姿态数据,陀螺仪传感器的三个轴分别对应于当前车辆的前后中轴线、上下中轴线和左右中轴线;

D、实时调整摄像机角度:控制单元根据陀螺仪传感器采集的实时姿态数据,即俯仰角α、倾斜角β、偏航角γ,实时向俯仰角α、倾斜角β、偏航角γ的相反方向调整摄像机,以保持摄像机的始终平行于水平正前方,确保摄像机拍摄的左车道线与右车道线始终在固定区域内;

E、车道线检测:采用车道线检测算法在固定区域内进行车道线检测,从而检测到左车道线与右车道线。

本发明中当前车辆应该尽量行驶在所在车道的正中央,当前也不排除有一定范围的偏差,标定场景是画有左右车道线的公路,无需再重新构造标定场景,比如在地面上画线标定等,这样比传统的方法更简单实用,节约成本;分段阈值化可以减少因为阴影或者障碍物等遮挡车道线造成的车道线检测不准确的问题;人机交互方便快捷,对操作人员要求较低,因此可以适应多变的场景,可操作性强;利用前后两帧图像中车道线波动的范围设置感兴区域可以大大减小杂波对车道线检测的影响,并提高算法的执行效率;支持在线标定,可以免去离线标定需要采集视频图像并处理的一系列工作,直接标定车道线的斜率与截距,是一个非常简单方便的标定与计算方法,可以节约开发者大量宝贵的时间,以及人力、物力等方面的资源消耗。

在上述的利用陀螺仪传感器进行车道线检测的方法中,以摄像机光轴与摄像机图像平面的交点为原点,以原点横向向右延伸方向作为x轴延伸方向,以原点纵向向下方向作为y轴延伸方向,建立图像坐标系,标定后左车道线在图像坐标系中的直线方程为y=kL·x+bL,其中kL是左车道线的斜率,bL是左车道线在y轴上的截距,标定后右车道线在图像坐标系中的直线方程为y=kR·x+bR,其中kR是右车道线的斜率,bR是右车道线在y轴上的截距,当前车辆的前保险杠所在直线的直线方程为y=c;所述的固定区域为由标定后左车道线、标定后右车道线和当前车辆的前保险杠所在直线合围而成的三角形区域。

在上述的利用陀螺仪传感器确定车道线检测有效范围的方法中,所述的标定后左车道线和标定后右车道线的交点坐标为:

所述的固定区域(D)为:

其中W为图像宽度;

当前车辆的最终姿态矩阵为:

其中,R(x,α)是陀螺仪传感器绕当前车辆的前后中轴线的旋转矩阵,R(y,β)是陀螺仪绕当前车辆的上下中轴线的旋转矩阵,R(z,γ)是陀螺仪绕当前车辆的左右中轴线的旋转矩阵。

在上述的利用陀螺仪传感器确定车道线检测有效范围的方法中,在上述步骤E中,所述的车道线检测算法包括预处理图像和检测车道线并更新参数;所述的预处理图像包括将摄像机采集到的当前帧摄像机图像或当前固定区域图像转化为灰度图,并将标定的左车道线邻域和右车道线领域分别作为感兴趣区域,然后分别对感兴趣区域做分段阈值化处理;所述的检测车道线并更新参数包括感兴趣区域内分别检测车道线,若检测到新的左车道线则更新左车道线的直线方程斜率和/或截距,否则保留其上一时刻的值;若检测到新的右车道线则更新右车道线的直线方程斜率和/或截距,否则保留其上一时刻的值。

在上述的利用陀螺仪传感器确定车道线检测有效范围的方法中,在上述步骤B中,通过手动操控机构控制左标定直线平移和/或旋转以调整左标定直线的截距和/或斜率,通过手动操控机构控制右标定直线平移和/或旋转以调整右标定直线的截距和/或斜率;所述的手动操控机构包括按钮和/或旋钮,或者所述的手动操控机构包括能够显示摄像机图像的触控屏。

在上述的利用陀螺仪传感器确定车道线检测有效范围的方法中,在上述步骤C中,设左车道线的斜率波动的最大范围为(-ΔkL,ΔkL),截距波动的最大范围为(-ΔbL,ΔbL),右车道线的斜率波动的最大范围为(-ΔkR,ΔkR),截距波动的最大范围为(-ΔbR,ΔbR),选取左车道线斜率与截距波动最大的邻域范围作为左车道线的感兴趣区域,选取右车道线斜率与截距波动最大的邻域范围作为右车道线的感兴趣区域。设置在斜率波动范围主要是由于车辆在行驶过程中摄像头会有些许抖动,或者是其他的一些相关因素,比如不同环境下车道线宽度及车道间距不同,使得摄像机画面中的车道线会在前一时刻的位置附近波动。

在上述的利用陀螺仪传感器确定车道线检测有效范围的方法中,在上述步骤C中,分别将感兴趣区域自上而下均匀分段或不均匀分段,每段的高度定为Δhi;分别计算每一段感兴趣区域中Δhi的均值Δh,并将其作为该段的阈值,然后将感兴趣区域二值化,相邻两段感兴趣区域的阈值不同时,相邻两段感兴趣区域的分界线的斜率为0。可以均匀分段也可以不均匀分段,为了方便,此处采用均匀分段表述,理论上分段越多,检测结果越准确,但是考虑到实际应用中的实时性等问题,所分段数不应太多,应根据实际情况适当即可。

在上述的利用陀螺仪传感器确定车道线检测有效范围的方法中,在上述步骤A中,所述的左车道线和右车道线分别为实线、虚线、黄线与白线中的任意一种或多种的组合;当前车辆停靠或者行驶在所在车道的左车道线和右车道线之间的正中央。

在上述的利用陀螺仪传感器确定车道线检测有效范围的方法中,利用霍夫变换在感兴趣区域内分别检测车道线,若检测到新的左车道线则更新左车道线的直线方程斜率和/或截距,否则保留其上一时刻的值;若检测到新的右车道线则更新右车道线的直线方程斜率和/或截距,否则保留其上一时刻的值;若车辆出现变更车道的情况,则等待车辆进入下一车道的中央行驶时,自动检测新的车道线。如果是弯道,则此方法检测的是弯道的切线。

在上述的利用陀螺仪传感器确定车道线检测有效范围的方法中,陀螺仪传感器案安装在车辆仪表盘上,且采集车身当前的3个姿态角,分别为俯仰角、倾斜角与偏航角。

与现有的技术相比,本利用陀螺仪传感器确定车道线检测有效范围的方法的优点在于:

1、可以缩小图像感兴区域,减小计算量,减少车道线检测时间,提高算法实时性,还可以排除很多杂线对检测结果的影响,比如道路两侧的护栏、道路两侧的花坛边缘、雨天车轮印记、道路裂痕等。

2、标定场景是画有左右车道线的公路,无需再重新构造标定场景,比如在地面上画线标定等,这样比传统的方法更简单实用,节约成本;

3、分段阈值化可以减少因为阴影或者障碍物等遮挡车道线造成的车道线检测不准确的问题;

4、人机交互方便快捷,对操作人员要求较低,因此可以适应多变的场景,可操作性强;

5、利用前后两帧图像中车道线波动的范围设置感兴区域可以大大减小杂波对车道线检测的影响,并提高算法的执行效率;

6、支持在线标定,可以免去离线标定需要采集视频图像并处理的一系列工作;

7、直接标定车道线的斜率与截距,是一个非常简单方便的标定与计算方法,可以节约开发者大量宝贵的时间,以及人力、物力等方面的资源消耗。

附图说明

图1是本发明的流程图。

图2是本发明的车道线检测流程图。

图3是通过人机交互实际标定后的摄像机画面图。

图4是图像坐标系示意图。

图5是根据斜率与截距波动的最大邻域范围选取的感兴区域图。

图6是感兴区域分段图。

图中,其中ΔkL表示红色直线与左车道线两条直线斜率之差;ΔbL表示蓝色直线与左车道线两条直线截距之差;ΔkR表示红色直线与右车道线两条直线斜率之差;ΔbR表示蓝色直线与右车道线两条直线截距之差;画面中左侧两条蓝色线之间的区域是左车道感兴区域ROI;右侧两条蓝色线之间的区域是右车道感兴区域ROI;Δh表示每一段的高度;1表示左车道线;11表示左标定直线;2表示右车道线;21表示右标定直线。

具体实施方式

下面结合附图和具体实施方式对本发明做进一步详细的说明。

如图1-6所示,本利用陀螺仪传感器确定车道线检测有效范围的方法,包括下述步骤:

步骤A、选取标定场景:选取画有左车道线1和右车道线2的车道为标定场景,将当前车辆停靠或者行驶在所在车道的左车道线1与右车道线2之间,并确保当前车辆所在车道的左车道线1与右车道线2在摄像机图像中可见;这里的左车道线1和右车道线2分别为实线、虚线、黄线与白线中的任意一种或多种的组合;当前车辆应该尽量停靠或者行驶在所在车道的左车道线1和右车道线2之间的正中央,当前也不排除有一定范围的偏差。

步骤B、人机交互标定:移动显示于摄像机图像中的预设的左标定直线11以使左标定直线11与左车道线1或左车道线1的切线重合从而实现左车道线1标定,移动显示于摄像机图像中的预设的右标定直线21以使右标定直线21与右车道线2或右车道线2的切线重合从而实现右车道线2标定,分别计算出此时左车道线1与右车道线2在图像坐标系中的直线方程;在上述步骤B中,以摄像机光轴与摄像机图像平面的交点为原点,以原点横向向右延伸方向作为x轴延伸方向,以原点纵向向下方向作为y轴延伸方向,建立图像坐标系,标定后左车道线1在图像坐标系中的直线方程为y=kL·x+bL,其中kL是左车道线的斜率,bL是左车道线在y轴上的截距,标定后右车道线2在图像坐标系中的直线方程为y=kR·x+bR,其中kR是右车道线的斜率,bR是右车道线在y轴上的截距,当前车辆的前保险杠所在直线的直线方程为y=c;固定区域为由标定后左车道线1、标定后右车道线2和当前车辆的前保险杠所在直线合围而成的三角形区域;即通过手动操控机构控制左标定直线11平移和/或旋转以调整左标定直线11的截距和/或斜率,通过手动操控机构控制右标定直线21平移和/或旋转以调整右标定直线21的截距和/或斜率,这里的手动操控机构包括按钮和/或旋钮,手动操控机构包括能够显示摄像机图像的触控屏。

步骤C、检测车身姿态角:通过安装在当前车辆上的陀螺仪传感器监测当前车辆的实时姿态并采集实时姿态数据,陀螺仪传感器的三个轴分别对应于当前车辆的前后中轴线、上下中轴线和左右中轴线;所述的陀螺仪传感器安装在车辆仪表盘上;将摄像机采集到的当前帧摄像机图像转化为灰度图,并将步骤B中标定的左车道线1邻域和右车道线2领域分别作为感兴趣区域ROI,然后分别对感兴趣区域ROI做分段阈值化处理;设左车道线1的斜率波动的最大范围为(-ΔkL,ΔkL),截距波动的最大范围为(-ΔbL,ΔbL),右车道线2的斜率波动的最大范围为(-ΔkR,ΔkR),截距波动的最大范围为(-ΔbR,ΔbR),选取左车道线1斜率与截距波动最大的邻域范围作为左车道线1的感兴趣区域ROI,选取右车道线2斜率与截距波动最大的邻域范围作为右车道线2的感兴趣区域ROI,设置在斜率波动范围主要是由于车辆在行驶过程中摄像头会有些许抖动,或者是其他的一些相关因素,比如不同环境下车道线宽度及车道间距不同,使得摄像机画面中的车道线会在前一时刻的位置附近波动;分别将感兴趣区域ROI自上而下均匀分段或不均匀分段,每段的高度定为Δhi,可以均匀分段也可以不均匀分段,为了方便,此处采用均匀分段表述,理论上分段越多,检测结果越准确,但是考虑到实际应用中的实时性等问题,所分段数不应太多,应根据实际情况适当即可;分别计算每一段感兴趣区域ROI中Δhi的均值Δh,并将其作为该段的阈值,然后将感兴趣区域ROI二值化,相邻两段感兴趣区域ROI的阈值不同时,相邻两段感兴趣区域ROI的分界线的斜率为0。

步骤D、实时调整摄像机角度:控制单元根据陀螺仪传感器采集的实时姿态数据,即俯仰角α、倾斜角β、偏航角γ,实时向俯仰角α、倾斜角β、偏航角γ的相反方向调整摄像机,以保持摄像机的始终平行于水平正前方,确保摄像机拍摄的左车道线1与右车道线2始终在固定区域内;

步骤E、检测车道线并更新参数:采用车道线检测算法在固定区域内进行车道线检测,从而检测到左车道线1与右车道线2所述的车道线检测算法包括预处理图像和检测车道线并更新参数;所述的预处理图像包括将摄像机采集到的当前帧摄像机图像或当前固定区域图像转化为灰度图,并将标定的左车道线1邻域和右车道线2领域分别作为感兴趣区域ROI,然后分别对感兴趣区域ROI做分段阈值化处理;所述的检测车道线并更新参数包括感兴趣区域ROI内分别检测车道线,若检测到新的左车道线1则更新左车道线1的直线方程斜率和/或截距,否则保留其上一时刻的值;若检测到新的右车道线2则更新右车道线2的直线方程斜率和/或截距,否则保留其上一时刻的值;利用霍夫变换在感兴趣区域内分别检测车道线,若检测到新的左车道线则更新左车道线的直线方程斜率和/或截距,否则保留其上一时刻的值;若检测到新的右车道线则更新右车道线的直线方程斜率和/或截距,否则保留其上一时刻的值;若车辆出现变更车道的情况,则等待车辆进入下一车道的中央行驶时,自动检测新的车道线。如果是弯道,则此方法检测的是弯道的切线。

具体地,在步骤B中,标定后左车道线1和标定后右车道线2的交点坐标为:

所述的固定区域(D)为:

其中W为图像宽度;

当前车辆的最终姿态矩阵为:

其中,R(x,α)是陀螺仪传感器绕当前车辆的前后中轴线的旋转矩阵,R(y,β)是陀螺仪绕当前车辆的上下中轴线的旋转矩阵,R(z,γ)是陀螺仪绕当前车辆的左右中轴线的旋转矩阵。

本发明中当前车辆应该尽量行驶在所在车道的正中央,当前也不排除有一定范围的偏差,标定场景是画有左右车道线的公路,无需再重新构造标定场景,比如在地面上画线标定等,这样比传统的方法更简单实用,节约成本;分段阈值化可以减少因为阴影或者障碍物等遮挡车道线造成的车道线检测不准确的问题;人机交互方便快捷,对操作人员要求较低,因此可以适应多变的场景,可操作性强;利用前后两帧图像中车道线波动的范围设置感兴区域可以大大减小杂波对车道线检测的影响,并提高算法的执行效率;支持在线标定,可以免去离线标定需要采集视频图像并处理的一系列工作,直接标定车道线的斜率与截距,是一个非常简单方便的标定与计算方法,可以节约开发者大量宝贵的时间,以及人力、物力等方面的资源消耗。

标定过程中误差的可能来源有:

1、场景误差:用于标定的车道线不直,地面不平坦等;

2、人机交互误差:摄像机画面中的左右车道线与标定线不重合。通过理论分析与大量的实践证明,标定式的车道线检测法不仅原理简单、操作便捷、容易集成在车载机器视觉系统中,还支持在线标定,甚至能够在车辆行驶中进行,从而在一定程度上解决了车载摄像机相关参数的漂移问题,提高了车道线检测的准确性。

本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。

尽管本文较多地使用了ΔkL表示红色直线与左车道线两条直线斜率之差;ΔbL表示蓝色直线与左车道线两条直线截距之差;ΔkR表示红色直线与右车道线两条直线斜率之差;ΔbR表示蓝色直线与右车道线两条直线截距之差;画面中左侧两条蓝色线之间的区域是左车道感兴区域ROI;右侧两条蓝色线之间的区域是右车道感兴区域ROI;Δh表示每一段的高度;1表示左车道线;11表示左标定直线;2表示右车道线;21表示右标定直线等术语,但并不排除使用其它术语的可能性。使用这些术语仅仅是为了更方便地描述和解释本发明的本质;把它们解释成任何一种附加的限制都是与本发明精神相违背的。

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