一种基于车道线检测的自适应前照灯转向控制算法的制作方法

文档序号:15516898发布日期:2018-09-25 18:37阅读:681来源:国知局

本发明涉及一种自适应前照灯转向控制算法,尤其涉及一种基于车道线检测的自适应前照灯转向控制算法。



背景技术:

随着车辆数量的急剧增加,车祸导致的死亡及伤害人数也不断攀升,如何降低频发的交通事故的数量已成为我国一个亟需解决的问题。据报道,82%的汽车事故发生在夜间照明状况不佳的情形下;同时,夜间行车发生重大事故约为白天的1.5倍,且60%的事故发生在照明不佳的弯道处。因为汽车夜间在弯道上行驶时,由于无法调节前照灯光轴方向,常常会在弯道内侧出现视觉“盲区”,这种视觉“盲区”是汽车行驶过程中由于前照灯照明区域固定而产生的,行驶过程中驾驶员的视线由于惯性而被禁铜在光束照射的直线范围内,从而会带来巨大的交通安全隐患。



技术实现要素:

发明目的:本发明目的是克服现有的被动的前照灯转向控制系统的不足,提供一种可靠性高的基于车道线检测的自适应前照灯转向控制算法。

技术方案:本发明包括以下步骤:

(1)图像预处理,包括感兴趣区域划分、线性灰度处理及基于改进的大津算法的图像二值化;

(2)采用改进的hough变换算法对车道线进行检测;

(3)弯道拟合及曲率半径计算;

(4)根据停车视距及弯道照明距离与曲率半径的几何关系,建立前照灯角度调整模型并求解。

所述步骤(1)中的感兴趣区域划分办法为:把获取到的图像从上至下分为三个横向区域:天空区、远视野区和近视野区,其中,天空区高度为图像高度的二分之一,远视野区和近视野区高度均为图像高度的四分之一,设定图像底部的远视野区和近视野区为感兴趣区域。

所述步骤(2)中的车道线检测在感兴趣区域中的近视野区域进行。

所述步骤(3)中的弯道拟合及曲率半径计算均在感兴趣区域中的远视野区域进行。

所述步骤(3)的计算过程为:首先使用扫描迭代算法选取弯道特征点;再使用catmull-rom样条曲线根据这些特征点对弯道车道线进行填充;最后基于摄像机成像规律,计算出弯道曲率半径。

有益效果:本发明通过旋转前照灯,消除夜间行驶时弯道内侧出现的视觉“盲区”,保障车辆夜间弯道行驶安全。

附图说明

图1为本发明的流程图;

图2为本发明的感兴趣区域划分示意图;

图3为本发明的hough变换搜索区域的约束范围示意图。

具体实施方式

下面结合附图对本发明作进一步说明。

如图1所示,本发明包括以下步骤:

(1)图像预处理:通过感兴趣区域的确定与划分,减少后续算法的计算量;通过线性灰度处理,增强图片各部分的对比度,提高后续检测算法的准确性;使用改进的大津算法,完成图像的二值化。

感兴趣区域的确定:

如图2所示,把获取到的图像从上至下分为三个横向区域:天空区、远视野区和近视野区,其中,天空区高度为图像高度的二分之一,远视野区和近视野区高度均为图像高度的四分之一。设定图像底部的远视野区和近视野区为感兴趣区域。以下步骤均在感兴趣区域中进行。

线性灰度变换:

线性灰度变换的目的是为了让图像亮部更亮,暗部更暗,对比度增大,使得车道线类与背景类的灰度差异变大,降低后续使用大津法进行二值化时对车道线特征的损耗。

设原图像为i(x,y),原图像的像素点灰度值在[imin,imax]区间范围内,且期望输出的灰度值范围为[i′min,i′max](其中,i′min<imin,i′max>imax),则:

其中,i′(x,y)为经过线性灰度变化后的图像。

基于改进的大津算法的图像二值化:

令n为图像中像素的总个数,ni为灰度值为i的像素个数,则灰度值为i的像素出现的概率为:

令车道线类l和背景类b的累积概率p(t)和平均值u(t)分别为:

其中,t为阈值,即灰度值小于等于t的像素点被划为车道线类,而灰度值大于t的像素点被划为背景类,l为互不相同的灰度值的总数。

因此,车道线类和背景类两个类的类间方差为:

δ(t)=ωpl(t)(ul(t))2+pb(t)(ub(t))2(4)

不同于传统的大津法,鉴于本发明中的车道线类的区域相对于背景类而言小了很多,因此在上式的类间方差中,为了更接近实际情况,使背景方差在类间方差中占的比重更大,对象方差(即车道线类方差)需乘以一个0到1之间的系数ω。为了使该方法更具有自适应性,令

ω=pl(t)(5)

则大津算法中的阈值t为:

t=argmaxδ(t)=argmax(pl(t)pl(t)(ul(t))2+pb(t)(ub(t))2)(6)

经过改进的大津算法的二值化图像i″可表示为:

(2)采用改进的hough变换算法对车道线进行检测。本步骤在感兴趣区域中的近视野区域进行,识别出的车道线与近视野区域上边界的交点,即为后续曲线检测扫描迭代算法中的初始特征点。

如图3所示,采用改进的hough变换算法对车道线进行检测,在实际检测中,第t帧中的车道与第(t+1)帧中的车道是相邻的。因此,根据第t帧中检测到的极径和极角,第(t+1)帧中的极径和极角的搜索范围为:其中α和ε均为阈值。本发明中,设定α=15,ε=10,使检测效率更高。

具体检测方法如下:

1)根据车道线约束区域,确定极径ρ和极角θ的搜索范围,分别在其最大值和最小值之间建立一个离散的参数空间;

2)建立一个二维数组的累加器n(ρ,θ),并给数组中每个元素赋初值为0;

3)对预处理后的图像上的每一边缘点作hough变换(图像二值化后灰度值为1的像素点),计算出该点在(ρ,θ)坐标系上的对应曲线,并在相应的累加器上加1;

4)找出对应(x,y)坐标系上共线点的累加器的局部极大值,该累加器提供了(x,y)坐标平面上共线点直线的参数(ρ0,θ0),将(ρ0,θ0)代入ρ0=xcosθ0+ysinθ0中,便可得到该车道线的直线方程。

(3)弯道拟合及曲率半径计算:本步骤的所有计算均在感兴趣区域的远视野区进行。首先使用扫描迭代算法,选取弯道特征点,再使用catmull-rom样条曲线根据这些特征点对弯道车道线进行填充,最后基于摄像机成像规律,计算出弯道曲率半径。

基于扫描迭代的弯道特征点选取方法为:

1)将步骤(2)中检测出的直线车道线与近视野区域上边界的交点,定为初始特征

点px,y;

2)基于初始特征点px,y,使用一个3*2大小的窗口对图像进行扫描,窗口的坐标为

3)将窗口中灰度值最高的像素点设定为弯道特征点,并将该点作为下一次扫描的初始特征点,即:

4)重复2)与3),直至到达远视野区的边界,或p点与消失点重合,扫描结束。

基于catmull-rom样条曲线的车道线填充:

完成扫描迭代算法后,得到若干个孤立的弯道特征点,为了提高后续计算弯道曲率的准确性,使用catmull-rom样条曲线对这些特征点进行曲线拟合。

catmull-rom样条曲线是一种分段的、连续的、平滑的曲线,每一段曲线单独计算,分段间连续可导。catmull-rom样条曲线方程如下:

其中,t为[0,1]之间的系数,pt-1、pt、pt+1、pt+2分别为四个特征点的坐标。

上式求解拟合得出的样条曲线是pt点到pt+1点间的曲线。

实际拟合过程如下:

1)令所有弯道特征点从下至上分别为p1,p2,p3,...pn,其中n表示弯道特征点的个数;

2)t赋初值为2;

3)取pt-1、pt、pt+1、pt+2分别为四个特征点,带入catmull-rom样条曲线方程中,求取曲线函数;

4)t自增1;

5)重复3)与4),直到t=n时,退出循环,此时已经对所有弯道特征点进行了遍历,曲线拟合完成。

计算弯道曲率半径:

假设路面坡度很小,可以忽略不计,则路面上每个点的y坐标相等。根据摄像机成像规律,空间内任意一点p的世界坐标(x,y,z)与图像坐标(x,y),均满足以下转换关系:

其中,h为摄像机光心的垂直高度,f为摄像机焦距。

拟合好的曲线车道线上任取四组点,每组三个点,完成上述坐标变化后,带入公式:

其中,(a,b)为弯道圆心,r为对应的曲率半径。

假设对应每一组点得到的曲率半径为r2,r3和r4,为了防止得到的四个半径值中有异常值,对后续曲率半径的确定形成较大误差,使用以下方法检测并剔除异常值:

取四个半径值的最小值rmin,并计算其余三个值的平均值则认定该最小值为异常值,并剔除该异常值。类似的,取四个半径值的最大值rmax,并计算其余三个值的平均值

则认定该最大值为异常值,并剔除该异常值。

排除四组曲率半径中的异常值后,对在误差范围内的曲率半径取平均,即可得到弯道的曲率半径

(4)前照灯角度调整模型:根据停车视距及弯道照明距离与曲率半径的几何关系,建立前照灯角度调整模型并求解。

停车视距即驾驶员从发现前方障碍物,到制动停车的最短行车距离,其计算公式为:

其中,s为停车视距,v为行驶速度,t为驾驶员反应时间,μ为路面与轮胎间的摩擦系数,s0为安全距离。

由弯道照明距离和转弯半径的几何关系可知:

其中,为前照灯的水平转角。综合上述两式可得:

根据国家对前照灯调整的角度规定,明暗截止线弯曲肘部不得与离车辆前面的距离为相应近光灯安装高度100倍的车辆重心轨迹相交,即:

其中,即为前照灯最大调整角度,h为前照灯基准中心高度。

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