一种基于视觉的车辆检测跟踪预警方法与流程

文档序号:16579913发布日期:2019-01-14 17:52阅读:206来源:国知局
一种基于视觉的车辆检测跟踪预警方法与流程

本发明涉及智能交通、汽车电子及视觉车辆检测跟踪碰撞预警方法,涉及到一种基于视觉的车辆检测跟踪预警方法。



背景技术:

随着汽车销量的不断增长,道路交通事故也在不断增加,2017年12月19号国家安全监管总局和交通运输部联合发布公告称虽然近年来我国道路交通事故降幅明显,但依然高发,2016年共接到864.3万起交通事故报告,同比增加65.9万起,与同期相比上升2.9%,共造成63093人死亡,226430人受伤,万车死亡率高达2.14。2017年3月7日,交通运输部发布了《营运客车安全技术条件》(jt/t1094-2016),并于2017年4月1日开始实施,标准中提出:超过9米以上的客车需具有前方碰撞预警和车道偏离预警等驾驶辅助功能。这表明国家开始出台相应的法律法规来推动主动安全驾驶技术的落地,以此来降低交通事故的发生率。

中国的辅助驾驶行业渗透率只有2%左右,且集中在高端车型,价格昂贵,随着车辆数量的不断增加,研发高性价比的车辆碰撞预警系统显得十分必要。

车辆检测是碰撞预警系统中最为重要的模块之一。目前基于视觉的车辆检测方法大致分为如下5类:第一类为基于模板的车辆检测方法,需要创建大量的模板和参数,并且要实时的观测和更新模板,在实际使用过程中由于车辆的不同外形、尺度以及行进过程中的形变所带来的外形差异造成了模板的无穷无尽,所以基于模板的车辆检测对于移动场所并不合适。第二类为基于光流的方法,根据图像序列的像素点灰度变化来实现车辆运动参数的获取,从而得到车辆的位置等信息,该种方法只能检测动态车辆目标。第三类为基于特征的方法,利用车底阴影、车辆轮廓、车辆边缘、车尾角点、车灯等,根据这些先验知识来检测车辆,该种方法特征简单,检测率较低。第四类为传统的机器学习方法,该方法检测速度快、准确率较高,但模型的泛化能力较差。第五类为基于深度学习的目标检测方法,该种方法识别能力强、准确率高,但是计算量大,对硬件的要求较高。

检测效果较好的车辆检测算法需要较大的计算资源,使得硬件的成本较高,经优化后的车辆检测算法可以提高车辆的检测速度,降低对硬件的依赖,可以提高车辆辅助系统的性价比。



技术实现要素:

为了解决上述技术问题,本发明提出了一种基于视觉的车辆检测跟踪预警方法。该系统通过车载摄像头实时采集图像,通过车辆检测算法得到前方车辆相对本车的位置、距离、碰撞时间信息,当发生潜在危险时,进行提前预警。

本发明的技术方案为一种基于视觉的车辆检测跟踪预警方法,具体包括以下步骤:

步骤1:采集图像并标定道路消失线,根据道路消失线划分车辆检测区域,将车辆检测区域灰度化,根据采集图像进行光照强度分类,并且根据光照强度分类对车辆检测区域图像进行灰度拉伸;

步骤2:构建训练样本图像,对训练样本图像进行人工标注为正样本图像以及负样本图像,提取正样本图像以及负样本图像的haar特征与lbp特征用来训练adaboost级联分类器;

步骤3:将车辆检测区域划分为近域,中间域,远域,通过训练后adaboost级联分类器用来检测车辆,并且根据光照强度进行车辆二次判别;

步骤4:当检测出车辆后运用kcf目标跟踪方法对车辆进行跟踪;

步骤5:对车辆进行跟踪,通过基于位置的距离估计方法计算前方车辆到本车的距离,根据本车速度以及车辆到本车的距离计算碰撞时间以提醒预警。

作为优选,步骤1中所述采集图像宽度为u,高度为v,以图像左上角为原点,建立坐标系;

步骤1中所述标定道路消失线为:

当在车辆后视镜处固定好摄像头之后,首先通过转动摄像头标定道路消失线,使相机内纵坐标为y且中点坐标为(x,y)的直线,与图像内道路的尽头位置水平线重合,选取以为顶点的矩形区域作为车辆检测区域,w为车辆检测区域的宽度,h为车辆检测区域的高度;

步骤1中所述车辆检测区域灰度化为采用加权平均法:

f(i,j)=0.3r(i,j)+0.59g(i,j)+0.11b(i,j)

其中,f(i,j)为灰度化后像素点的灰度值,r(i,j),g(i,j),b(i,j)分别为车辆检测区域每个像素点的r值、g值、b值;

步骤1中所述光照强度分类为:

其中,is(λ)代表天空平均光场强度值,ir(λ)代表道路平均光场强度值,i(λ)代表天空道路平均光场强度值,λ≤0.5代表比例系数,sl(xs,ys)代表摄像机采集图片内天空左边采样区域的像素灰度值,sr(xs,ys)代表摄像机采集图片内天空右边采样区域内的像素灰度值xs∈[0.1u,0.9u],ys∈[0,0.05h];

rl(xr,yr)代表摄像机采集图片内道路左边采样区域的像素灰度值,rr(xrr,yrr)代表摄像机采集图片内道路右边采样区域内的像素灰度值,

xr∈[0.1u,0.9u],yr∈[0.95h,h],m为天空左边采样区域的像素数量,n为右边采样区域的像素数量,m代表采样区域内的像素灰度最大值;

对于不同的光场强度值,当i(λ)<95时为弱光场景,当95<i(λ)<180为正常光照场景,当i(λ)>180时为强光场景;

步骤1中所述根据光照强度分类对车辆检测区域图像进行灰度拉伸:

若为强光场景则

若为正常光照场景则

若为弱光场景则

y(i,j)为灰度拉伸后灰度值,f(i,j)为灰度图灰度拉伸前灰度值;

作为优选,步骤2中所述训练样本为m张k*k的样本图像;

对m张样本图像进行人工标注为m1张包含车辆的正样本图像与m2张不包含车辆的负样本图像,通过样本的积分图分别计算正负样本图像的haar特征值:

其中,a(x,y)为灰度拉伸后样本的积分图,h(i),i∈[0,m]为正负样本图像的haar特征值,w为计算haar特征值时滑动窗口的宽度,h为计算haar特征值时滑动窗口的高度;

计算m1张包含车辆的正样本图像与m2张不包含车辆的负样本图像的lbp特征为:

通过步骤1处理进行灰度拉伸,灰度拉伸处理后以y(i,j)中心像素选取k*k的邻域,一共有k2个像素值,将中间的像素值ic设为阈值,其它(k*k-1)个像素值和中间的值比较,若大于阈值则该像素点位置记为1,否则该像素点位置记为0,这样便在区域内生成了(k*k-1)位二进制数,该二进制数所代表的十进制值即为中心像素的lbp值l(i),i∈[0,m];

正样本图像以及负样本图像的haar特征h(i)与lbp特征l(i)用adaboost算法来训练adaboost级联分类器;

作为优选,步骤3中所述将步骤1中车辆感兴趣区域划分为远域rf,中间域rm和近域rn,其中近域又划分为近域左边区域rnl,近域中间区域rnm,近域右边区域rnr,在每个区域内计算haar特征时滑动窗口大小范围如下:

远域rf:w∈[20,30],h∈[20,30];

中间域rm:

近域rn:

近域左边区域rnl:

近域中间区域rnm:

近域右边区域rnr:

w,h为计算haar特征值时滑动窗口的大小,h为步骤1中所述车辆检测区域的高度;

根据步骤2分别计算不同车辆感兴趣区域内的haar特征与lbp特征,输入到步骤训练后adaboost级联分类器,即可判断该区域内是否有车辆;

若判断出存在车辆,根据步骤1对光照强度进行分类,若为强光场景或者正常光照场景,提取车辆感兴趣区域所述域内车辆的尾部角点特征以及直线特征用于二次判别是否为车辆区域:

车辆感兴趣区域所述域内车辆的尾部角点特征通过fast角点检测算法提取车辆尾部fast角特征,并且统计该区域的车辆尾部fast角特征点的数量;

车辆感兴趣区域所述域内车辆的直线特征用霍夫变换提取该区域的平行直线,统计出该区域的车辆尾部平行直线数量;

用单位长度内两种特征的平均数量来表示车辆尾部fast角特征点的数量和车辆尾部平行直线的数量与车辆大小的关系:

vscore=(λ·nc+nl)/vwidth

其中,vscore表示车辆尾部fast角特征点和平行直线融合之后的特征值,λ为比例系数且λ>1,nc为车辆尾部fast角特征点的数量,nl为车辆尾部平行直线的数量,vwidth为检测到的车辆像素宽度;

若vscore≥0.5则该区域为车辆区域,否则为非车辆区域;

若为弱光场景该提取车辆感兴趣区域所述域内车辆尾灯进行二次判别是否为车辆区域:

将车辆感兴趣区域进行rgb三通道彩色空间分离,分别得到三个通道的灰度值mat_r,mat_g,mat_b;

用mat_r减去mat_g得到灰度图diff_rg;

对灰度图diff_rg进行二值化处理,得到红色光晕的二值图thresh_rg;

在rgb三通道图像中提取尾灯高亮区域,即分别取r≥200,g≥200,b≥200,得到尾灯区域二值图mat_bright;

在mat_bright中通过canny算法提取尾灯轮廓ai和尾灯轮廓的外接矩形ri;ai的面积为ai.area,ri的面积为ri.area,删除面积小于l个像素的轮廓,然后求其面积之差si=ri.area-ai.area;

在红色光晕的二值图thresh_rg的相对应尾灯轮廓的外接矩形ri区域中,计算像素值为1的面积,记为ti;

当ti<0.1si时,将mat_bright中尾灯轮廓ai对应区域的像素置0得到筛选后尾灯轮廓

车辆感兴趣区域通过以上方法得到左尾灯轮廓al、右尾灯轮廓ar,左尾灯轮廓的外接矩形rl、右尾灯轮廓的外接矩形rr,左尾灯轮廓的面积为sl=al.area,右尾灯轮廓的面积为sr=ar.area,rl中心连线的水平角度为αl,rr中心连线的水平角度为αr,左尾灯轮廓的外接矩形rl的长为ll,右尾灯轮廓的外接矩形rr的长为lr,左尾灯轮廓的外接矩形rl的宽为wl,右尾灯轮廓的外接矩形rr的宽为wr,左尾灯轮廓al的质心与右尾灯轮廓ar的质心距离为d;

αl-αr<200

若以上条件均满足则该区域为车辆区域,否则为非车辆区域;

作为优选,步骤5中所述对车辆进行跟踪为通过所述步骤1至所述步骤4跟踪到车辆后,用基于位置的距离估计方法计算前方车辆到本车的距离:

本车车头到前车尾部的距离为d:

其中,h为摄像头安装高度,α为摄像头的视野角,θc为安装后摄像头光轴和竖直方向的夹角,hi是摄像头所成图像的像素高度,dp为所成图像中车辆尾部到图像顶端的像素距离,f为摄像头的焦距,d1为摄像头到车头最前端的水平距离,d2为摄像头到前方车辆尾部的水平距离,θv为车辆尾部下方进入摄像头的光线与垂直方向的夹角;

根据车载gps模块在行车过程中实时采集本车车速v,相对碰撞时间t=d/v;

若t<β则提醒预警。

与现有技术相比,本发明具有如下优点:

本发明提出的车辆检测跟踪预警方法适合在全天候环境下运行,能适应日间、夜间、雨天、雨天等场景;

本发明提出了一种依据道路灭点自动获取检测域的方法,并根据车辆空间分布的特点,将检测域进行了多区域划分,极大地减少了车辆检测算法的计算量,使得能用较少的计算资源得到较好的检测效果;

本发明结合haar特征、lbp特征、角点特征、平行直线特征、尾灯对特征进行车辆检测,提高了车辆检测算法的准确率;

本发明依据碰撞时间和车道线进行预警,根据车道线进行预警提高了车辆预警的准确性。

附图说明

图1:本发明的方法流程示意图;

图2:本发明的预警结果图。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。

下面结合图1至图2介绍本发明的实施方式,具体包括以下步骤:

步骤1:采集图像并标定道路消失线,根据道路消失线划分车辆检测区域,将车辆检测区域灰度化,根据采集图像进行光照强度分类,并且根据光照强度分类对车辆检测区域图像进行灰度拉伸;

步骤1中所述采集图像宽度为u,高度为v,以图像左上角为原点,建立坐标系;

步骤1中所述标定道路消失线为:

当在车辆后视镜处固定好摄像头之后,首先通过转动摄像头标定道路消失线,使相机内纵坐标为y且中点坐标为(x,y)的直线,与图像内道路的尽头位置水平线重合,选取以为顶点的矩形区域作为车辆检测区域,w为车辆检测区域的宽度,h为车辆检测区域的高度;

步骤1中所述车辆检测区域灰度化为采用加权平均法:

f(i,j)=0.3r(i,j)+0.59g(i,j)+0.11b(i,j

其中,f(i,j)为灰度化后像素点的灰度值,r(i,j),g(i,j),b(i,j)分别为车辆检测区域每个像素点的r值、g值、b值;

步骤1中所述光照强度分类为:

其中,is(λ)代表天空平均光场强度值,ir(λ)代表道路平均光场强度值,i(λ)代表天空道路平均光场强度值,λ≤0.5代表比例系数,sl(xs,ys)代表摄像机采集图片内天空左边采样区域的像素灰度值,sr(xs,ys)代表摄像机采集图片内天空右边采样区域内的像素灰度值xs∈[0.1u,0.9u],ys∈[0,0.05h];

rl(xr,yr)代表摄像机采集图片内道路左边采样区域的像素灰度值,代表摄像机采集图片内道路右边采样区域内的像素灰度值,

xr∈[0.1u,0.9u],yr∈[0.95h,h],m为天空左边采样区域的像素数量,n为右边采样区域的像素数量,m代表采样区域内的像素灰度最大值;

对于不同的光场强度值,当i(λ)<95时为弱光场景,当95<i(λ)<180为正常光照场景,当i(λ)>180时为强光场景;

步骤1中所述根据光照强度分类对车辆检测区域图像进行灰度拉伸:

若为强光场景则

若为正常光照场景则

若为弱光场景则

y(i,j)为灰度拉伸后灰度值,f(i,j)为灰度图灰度拉伸前灰度值;

步骤2:构建训练样本图像,对训练样本图像进行人工标注为正样本图像以及负样本图像,提取正样本图像以及负样本图像的haar特征与lbp特征用来训练adaboost级联分类器;

步骤2中所述训练样本为m张k*k的样本图像;

对m张样本图像进行人工标注为m1张包含车辆的正样本图像与m2张不包含车辆的负样本图像,m1:m2=1:3,通过样本的积分图分别计算正负样本图像的haar特征值:

其中,a(x,y)为灰度拉伸后样本的积分图,h(i),i∈[0,m]为正负样本图像的haar特征值,w为计算haar特征值时滑动窗口的宽度,h为计算haar特征值时滑动窗口的高度;

计算m1张包含车辆的正样本图像与m2张不包含车辆的负样本图像的lbp特征为:

通过步骤1处理进行灰度拉伸,灰度拉伸处理后以y(i,j)中心像素选取k*k的邻域,一共有k2个像素值,将中间的像素值ic设为阈值,其它(k*k-1)个像素值和中间的值比较,若大于阈值则该像素点位置记为1,否则该像素点位置记为0,这样便在区域内生成了(k*k-1)位二进制数,该二进制数所代表的十进制值即为中心像素的lbp值l(i),i∈[0,m];

正样本图像以及负样本图像的haar特征h(i)与lbp特征l(i)用adaboost算法来训练adaboost级联分类器;

步骤3:将车辆检测区域划分为近域,中间域,远域,通过训练后adaboost级联分类器用来检测车辆,并且根据光照强度进行车辆二次判别;

步骤3中所述将步骤1中车辆感兴趣区域划分为远域rf,中间域rm和近域rn,其中近域又划分为近域左边区域rnl,近域中间区域rnm,近域右边区域rnr,在每个区域内计算haar特征时滑动窗口大小范围如下:

远域rf:w∈[20,30],h∈[20,30];

中间域rm:

近域rn:

近域左边区域rnl:

近域中间区域rnm:

近域右边区域rnr:

w,h为计算haar特征值时滑动窗口的大小,h为步骤1中所述车辆检测区域的高度;

根据步骤2分别计算不同车辆感兴趣区域内的haar特征与lbp特征,输入到步骤训练后adaboost级联分类器,即可判断该区域内是否有车辆;

步骤3中所述根据光照强度进行车辆二次判别为:

若判断出存在车辆,根据步骤1对光照强度进行分类,若为强光场景或者正常光照场景,提取车辆感兴趣区域所述域内车辆的尾部角点特征以及直线特征用于二次判别是否为车辆区域:

车辆感兴趣区域所述域内车辆的尾部角点特征通过fast角点检测算法提取车辆尾部fast角特征,并且统计该区域的车辆尾部fast角特征点的数量;

车辆感兴趣区域所述域内车辆的直线特征用霍夫变换提取该区域的平行直线,统计出该区域的车辆尾部平行直线数量;

用单位长度内两种特征的平均数量来表示车辆尾部fast角特征点的数量和车辆尾部平行直线的数量与车辆大小的关系:

vscore=(λ·nc+nl)/vwidth

其中,vscore表示车辆尾部fast角特征点和平行直线融合之后的特征值,λ为比例系数且λ>1,nc为车辆尾部fast角特征点的数量,nl为车辆尾部平行直线的数量,vwidth为检测到的车辆像素宽度;

若vscore≥0.5则该区域为车辆区域,否则为非车辆区域;

若为弱光场景该提取车辆感兴趣区域所述域内车辆尾灯进行二次判别是否为车辆区域:

将车辆感兴趣区域进行rgb三通道彩色空间分离,分别得到三个通道的灰度值mat_r,mat_g,mat_b;

用mat_r减去mat_g得到灰度图diff_rg;

对灰度图diff_rg进行二值化处理,得到红色光晕的二值图thresh_rg;

在rgb三通道图像中提取尾灯高亮区域,即分别取r≥200,g≥200,b≥200,得到尾灯区域二值图mat_bright;

在mat_bright中通过canny算法提取尾灯轮廓ai和尾灯轮廓的外接矩形ri;ai的面积为ai.area,ri的面积为riarea,删除面积小于l个像素的轮廓,然后求其面积之差si=riarea-ai.area;

在红色光晕的二值图thresh_rg的相对应尾灯轮廓的外接矩形ri区域中,计算像素值为1的面积,记为ti;

当ti<0.1si时,将mat_bright中尾灯轮廓ai对应区域的像素置0得到筛选后尾灯轮廓

车辆感兴趣区域通过以上方法得到左尾灯轮廓al、右尾灯轮廓ar,左尾灯轮廓的外接矩形rl、右尾灯轮廓的外接矩形rr,左尾灯轮廓的面积为sl=al.area,右尾灯轮廓的面积为sr=ar.area,rl中心连线的水平角度为αl,rr中心连线的水平角度为αr,左尾灯轮廓的外接矩形rl的长为ll,右尾灯轮廓的外接矩形rr的长为lr,左尾灯轮廓的外接矩形rl的宽为wl,右尾灯轮廓的外接矩形rr的宽为wr,左尾灯轮廓al的质心与右尾灯轮廓ar的质心距离为d;

αl-αr<200

若以上条件均满足则该区域为车辆区域,否则为非车辆区域;

步骤4:当检测出车辆后运用kcf目标跟踪方法对车辆进行跟踪;

步骤5:对车辆进行跟踪,通过基于位置的距离估计方法计算前方车辆到本车的距离,根据本车速度以及车辆到本车的距离计算碰撞时间以提醒预警。

步骤5中所述对车辆进行跟踪为通过所述步骤1至所述步骤4跟踪到车辆后,用基于位置的距离估计方法计算前方车辆到本车的距离:

本车车头到前车尾部的距离为d:

其中,h为摄像头安装高度,α为摄像头的视野角,θc为安装后摄像头光轴和竖直方向的夹角,hi是摄像头所成图像的像素高度,dp为所成图像中车辆尾部到图像顶端的像素距离,f为摄像头的焦距,d1为摄像头到车头最前端的水平距离,d2为摄像头到前方车辆尾部的水平距离,θv为车辆尾部下方进入摄像头的光线与垂直方向的夹角;

根据车载gps模块在行车过程中实时采集本车车速v,相对碰撞时间t=d/v;

若t<β,β=2.7s,则提醒预警。

应当理解的是,本说明书未详细阐述的部分均属于现有技术。

应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

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