一种基于多车道车距检测的安全预警方法及系统与流程

文档序号:23963983发布日期:2021-02-18 20:40阅读:104来源:国知局
一种基于多车道车距检测的安全预警方法及系统与流程

[0001]
本发明涉及智能驾驶技术领域,具体涉及一种基于多车道车距检测的安全预警方法及系统。


背景技术:

[0002]
随着经济的发展,高速公路里程和汽车保有量也不断增加,汽车不仅提高了人类现代化的生活水平,而且也是推动经济发展的重要因素。但是,随着数量的增加,使得高速公路的事故发生率也不断攀升,对人民生命财产安全构成极大威胁。因此,对高速公路交通事故进行有针对性的分析与有效的预防尤为重要。
[0003]
在现有技术中,对高速公路交通事故进行预警时,多通过雷达测距、超声波测距、激光测距、和视觉测距进行自车和道路上其他车辆之间的车距检测,根据检测的车距进行安全预警,其中雷达测距和激光测距方式造价昂贵,且容易受外界环境的影响,在民用方面难以普及;超声波车距方式只适用于单车道中车距离测距,对测量环境要求较高,且回传速度较慢,难以在高速行驶过程中进行距离检测,且检测精度低,预警的准确度低。


技术实现要素:

[0004]
本发明的目的:提供一种简单且准确度高的车辆安全预警方法,以及用于实现该方法的系统。
[0005]
技术方案:本发明提供的安全预警方法,基于以固定角度所捕获目标车辆前方的多车道道路视频图像,实现对目标车辆的安全预警;安全预警方法包括实时执行如下步骤:
[0006]
步骤1、获取目标车辆在当前时刻的车速v,结合能量守恒定律,获取目标车辆在当前时刻刹车时的制动距离s,并进入步骤2;
[0007]
步骤2、使用训练好的卷积神经网络模型,针对当前时刻的多车道道路视频图像进行车辆检测,并使用最小包围矩形框对该多车道道路视频图像中的各个车辆进行分别标记,且各包围矩形框上其中彼此相对两边呈水平姿态,进而获取该多车道道路视频图像中的所有标记车辆;
[0008]
将各包围矩形框底边中点位置定义为各对应标记车辆在该多车道道路视频图像中的位置;将该多车道道路视频图像底边中点位置标记为目标车辆位置;进入步骤3;
[0009]
步骤3、根据目标车辆在多车道道路视频图像中的位置、各标记车辆分别在多车道道路视频图像中的位置,然后使用透视变换法获取当前时刻多车道道路视频图像的鸟瞰图;进入步骤4;
[0010]
步骤4、针对鸟瞰图所在的平面:以鸟瞰图中平行于图片底边的方向为水平方向,以垂直于图片底边的方向为竖直方向;
[0011]
分别针对鸟瞰图中的各标记车辆,执行步骤4.1至步骤4.4:
[0012]
步骤4.1、根据公式:
[0013]
l=k1*l
pix
[0014]
获取标记车辆与目标车辆之间的水平距离l;
[0015]
其中,k1为与实际水平长度和像素点个数相关的常数,l
pix
为标记车辆位置沿竖直方向在鸟瞰图的底边所在直线上的投影到目标车辆位置之间的像素点的个数;
[0016]
步骤4.2、根据公式:
[0017]
h=k2l
y-b
[0018]
获取目标车辆与标记车辆之间的竖直距离h;
[0019]
其中,k2、b为实际竖直长度和像素点个数的对应函数中的两个常系数,l
y
为标记车辆位置沿竖直方向在鸟瞰图底边所在直线上的投影到该标记车辆位置之间像素点的个数;
[0020]
步骤4.3、根据目标车辆位置与标记车辆位置之间的水平距离l和竖直距离h,获取目标车辆和标记车辆之间的实际距离
[0021]
步骤4.4、比对制动距离s和实际距离d,若s≤d,对目标车辆进行告警;否则进入步骤1。
[0022]
作为本发明的一种优选方案,相邻车道之间的车道线由多个尺寸相同且中心线共线的矩形子车道线组成,各子车道线间隔设置,在步骤1中,获取目标车辆在当前时刻的车速v的方法包括如下步骤:
[0023]
针对由当前时刻向历史时间方向的预设时长内的经过预处理的视频中的各幅多车道道路视频图像:选取位于各视频帧中的相同位置的区域为感兴趣区域,该感兴趣区域存在车道线;
[0024]
对于穿过该感兴趣区域的同一车道线中的各子车道线:以各子车道线中沿车道线布设方向的其中一个侧边的两个端点为角点,根据角点检测法统计感兴趣区域中子车道线连续出现的次数framecount(n),根据公式:
[0025][0026]
获取目标车辆在当前时刻的车速v,其中h'为子车道线中包含两个所述角点的侧边的实际长度,fps为连续视频帧的帧数。
[0027]
作为本发明的一种优选方案,根据公式:
[0028][0029]
获取目标车辆在当前时刻刹车时的制动距离s;
[0030]
其中,m为目标车辆的重量,μ为目标车辆的轮胎与地面的附着系数,a为目标车辆的车辆前部横截面面积,cw为目标车辆当前时刻所受风阻力的风阻系数,t为预设的从发现险情到开始对目标车辆进行制动的反应时间。
[0031]
作为本发明的一种优选方案,在步骤3中,各车道线由多个尺寸相同的矩形子车道线串联组成,在步骤4.1中,方法还包括:
[0032]
选取鸟瞰图中实际水平长度已知的物体为参照物,获取鸟瞰图中沿水平方向上与该参照物实际水平长度相对应的线段所对应的像素点的个数l
ref_pix
;根据公式:
[0033][0034]
获取常数k1;其中,l
ref
为参照物的实际水平长度。
[0035]
作为本发明的一种优选方案,参照物包括子车道线、两条子车道线之间的车道。
[0036]
作为本发明的一种优选方案,各车道线由多个尺寸相同且中心线共线的矩形子车道线组成,同一车道线中相邻两个的子车道线之间的间隔距离相等,在步骤4.2中,方法还包括:
[0037]
选取鸟瞰图中的任一车道线为参考物,针对其中由n1个连续的子车道线和n2个间隔组成的的矩形车道线部分:获取矩形车道线部分中沿竖直方向的任一侧边所对应的像素点的个数l
m
,并根据公式:
[0038]
h=n1h1+n2h2[0039]
计算该侧边对应的实际竖直长度h;其中,h1为子车道线沿竖直方向的侧边的实际长度,h2为同一车道线中相邻的两个子车道线之间沿竖直方向的间隔距离;
[0040]
沿鸟瞰图中车道线布设方向依次获取同一车道线中的子车道线和相邻子车道线之间的间隔,获取矩形车道线部分所对应顺序数据组合的一组实际竖直长度,以及鸟瞰图中沿竖直方向上与各实际竖直长度相对应的各线段所对应的像素点的个数:(l1,h1)、(l2,h2)、(l3,h1+h2)、(l4,2h1+h2)

(l
m
,n1h1+n2h2,),其中,l1、l2、l3、l4…
l
m
分别为与实际竖直长度h1、h2、h1+h2、2h1+h2…
n1h1+n2h2所对应的像素点的个数;
[0041]
根据(l1,h1)、(l2,h2)、(l3,h1+h2)、(l4,2h1+h2)

(l
m
,n1h1+n2h2,),拟合竖直长度与像素点个数的对应关系式h=k2l
y-b。
[0042]
本发明还提供了一种基于多车道车距检测的安全预警系统,系统包括图像获取模块、制动距离获取模块、车辆检测模块、鸟瞰图变换模块、分析与预警模块;
[0043]
图像获取模块,用于以固定角度所捕获目标车辆前方的多车道道路视频图像;
[0044]
制动距离获取模块,用于获取目标车辆在当前时刻的车速v,结合能量守恒定律,获取目标车辆在当前时刻刹车时的制动距离s;
[0045]
车辆检测模块,使用训练好的卷积神经网络模型,针对当前时刻的多车道道路视频图像进行车辆检测,并使用最小包围矩形框对该多车道道路视频图像中的各个车辆进行分别标记,且各包围矩形框上其中彼此相对两边呈水平姿态,进而获取该多车道道路视频图像中的所有标记车辆;将各包围矩形框底边中点位置定义为各对应标记车辆在该多车道道路视频图像中的位置;将该多车道道路视频图像底边中点位置标记为目标车辆位置;
[0046]
鸟瞰图变换模块,用于根据目标车辆在多车道道路视频图像中的位置、各标记车辆分别在多车道道路视频图像中的位置,然后使用透视变换法获取当前时刻多车道道路视频图像的鸟瞰图;
[0047]
分析与预警模块,用于针对鸟瞰图所在的平面:以鸟瞰图中平行于图片底边的方向为水平方向,以垂直于图片底边的方向为竖直方向;
[0048]
分别针对鸟瞰图中的各标记车辆,执行如下指令:
[0049]
根据公式:
[0050]
l=k1*l
pix
[0051]
获取标记车辆与目标车辆之间的水平距离l;
[0052]
其中,k1为与实际水平长度和像素点个数相关的常数,l
pix
为标记车辆位置沿竖直方向在鸟瞰图的底边所在直线上的投影到目标车辆位置之间的像素点的个数;
[0053]
根据公式:
[0054]
h=k2l
y-b
[0055]
获取目标车辆与标记车辆之间的竖直距离h;
[0056]
其中,k2、b为实际竖直长度和像素点个数的对应函数中的两个常系数,l
y
为标记车辆位置沿竖直方向在鸟瞰图底边所在直线上的投影到该标记车辆位置之间像素点的个数;
[0057]
根据目标车辆位置与标记车辆位置之间的水平距离l和竖直距离h,获取目标车辆和标记车辆之间的实际距离
[0058]
比对制动距离s和实际距离d,若s≤d,对目标车辆进行告警,否则执行制动距离获取模块中的指令。
[0059]
进一步的,分析与预警模块包括车距检测模块和碰撞预警模块;
[0060]
车距检测模块,用于针对鸟瞰图所在的平面:以鸟瞰图中平行于图片底边的方向为水平方向,以垂直于底边的方向为竖直方向;
[0061]
分别针对鸟瞰图中的各标记车辆,执行如下指令:
[0062]
根据公式:
[0063]
l=k1*l
pix
[0064]
获取标记车辆与目标车辆之间的水平距离l;
[0065]
其中,k1为与实际水平长度和像素点个数相关的常数,l
pix
为标记车辆位置沿竖直方向在鸟瞰图的底边所在直线上的投影到目标车辆位置之间的像素点的个数;
[0066]
根据公式:
[0067]
h=k2l
y-b
[0068]
获取目标车辆与标记车辆之间的竖直距离h;
[0069]
其中,k2、b为实际竖直长度和像素点个数的对应函数中的两个常系数,l
y
为标记车辆位置沿竖直方向在鸟瞰图底边所在线段的所在直线上的投影到该标记车辆位置之间像素点的个数;
[0070]
根据目标车辆位置与标记车辆位置之间的水平距离l和竖直距离h,获取目标车辆和标记车辆之间的实际距离
[0071]
碰撞预警模块,用于比对制动距离s和实际距离d,若s≤d,对目标车辆进行告警。
[0072]
进一步的,制动距离获取模块包括用于获取目标车辆在当前时刻的车速v的车速检测模块;车速检测模块具体用于执行如下指令:
[0073]
车速检测模块用于针对由当前时刻向历史时间方向的预设时长内的经过预处理的视频中的各幅多车道道路视频图像:选取位于各视频帧中的相同位置的区域为感兴趣区域,该感兴趣区域存在车道线;
[0074]
对于穿过该感兴趣区域的同一车道线中的各子车道线:以各子车道线中沿车道线布设方向的其中一个侧边的两个端点为角点,根据角点检测法统计感兴趣区域中子车道线连续出现的次数framecount(n),根据公式:
[0075][0076]
获取目标车辆在当前时刻的车速v,其中h'为子车道线中包含两个所述角点的侧边的实际长度,fps为连续视频帧的帧数。
[0077]
有益效果:相对于现有技术,本发明提供的方法,通过透视变换方法实现成像角度的变换,根据目标车辆位置和标记车辆位置之间在水平方向和竖直方向上的像素点,结合一组实际长度和像素点的对应关系式,获取目标车辆位置和标记车辆位置之间在水平方向和竖直方向上的实际长度,进而获取目标车辆和标记车辆之间的实际距离,通过比对实际距离和目标车辆的制动距离,实现对目标车辆的安全预警;该方法的分析对象为目标车辆前方的多车道道路中中的标记车辆,实现了对目标车辆所在的车道及目标车辆两侧的车道上的标记车辆和目标车辆之间的车距检测;方法充分考虑了透视变换的特点,进而得到精度高的目标车辆和标记车辆之间的实际距离,在此基础上进行分析判断,使安全预警方法简单且准确度高。
附图说明
[0078]
图1是根据本发明实施例提供的基于多车道车距检测的安全预警方法流程图;
[0079]
图2是根据本发明实施例提供的使用yolo v3网络模型进行车辆检测效果图;
[0080]
图3是根据本发明实施例提供的进行透视变换区域示意图;
[0081]
图4是根据本发明实施例提供的透视变换实现成像视角变换的效果图;
[0082]
图5是根据本发明实施例提供的参照物在原始图片中水平与垂直方向特征点选择示意图;
[0083]
图6是根据本发明实施例提供的参照物特征点在经过透视变换矩阵转换后的水平与垂直方向特征点示意图;
[0084]
图7是根据本发明实施例提供的实际竖直长度和像素点的对应关系曲线;
[0085]
图8是根据本发明实施例提供的多车道车距检测效果图;
[0086]
图9是根据本发明实施例提供的高速公路安全预警示意图;
[0087]
图10是根据本发明实施例提供的高速公路安全预警效果图。
具体实施方式
[0088]
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
[0089]
在本发明的描述中,术语“左”、“右”、“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明而不是要求本发明必须以特定的方位构图和操作,因此不能理解为对本发明的限制。
[0090]
参照图1,本发明提供的基于多车道车距检测的安全预警方法包括如下步骤:
[0091]
步骤1、获取目标车辆在当前时刻的车速v,结合能量守恒定律,获取目标车辆在当前时刻刹车时的制动距离s,并进入步骤2。
[0092]
以自车为目标车辆,目标车辆在高速公路上行驶时通过设置在该目标车辆中的车载摄像机采集目标车辆中的司机为第一视角的目标车辆前方多车道道路的视频数据。由于
原始的视频数据中存在许多与后续图像处理操作无关的信息和噪声,所以需要进行视频数据的预处理,处理过程包括剔除视频中的停车视频段和噪声视频段。
[0093]
以当前时刻为时间节点,对于当前时刻向历史时间方向的预设时长内的经过预处理的视频中的多个连续视频帧中的每一幅视频图像,定义一块roi(region of interest,感兴趣区域)区域,该roi区域在各视频图像中的位置相同,该roi区域包含车道线。
[0094]
选择经过该roi区域的同一个车道线,对于该车道线中的各子车道线:以各子车道线中沿车道线布设方向的其中一个侧边的两个端点为角点,选取的各侧边为同一侧的侧边,根据角点检测法统计该roi区域中的子车道线连续出现的次数framecount(n),根据公式:
[0095][0096]
获取目标车辆在当前时刻的车速v,其中h'为子车道线中包含两个所述角点的侧边的实际长度,即子车道线沿着车道线布设方向的侧边的实际长度,fps为连续视频帧的帧数。
[0097]
从驾驶员发现前方险情开始到车辆完成制动,整个过程可以分为两个子过程,第一,从驾驶员发现前方险情的反应时间、将险情传给大脑并作出判断的判断时间以及抬脚踩刹车的整个过程的时间中目标车辆行驶的距离,由于目前车辆性能的提高,车辆的反应时间可忽略不计,即认为驾驶员踩下刹车的一瞬间,目标车辆立即开始制动。第二,为目标车辆刹车制动过程中所需要的制动距离。
[0098]
根据上述,在第一子过程中由于目标车辆性能的提高,假设整段过程中目标车辆均做匀速运动。在该过程中目标车辆的行驶距离为s1,且s1=vt,v为车速,通过速度公式计算得到。
[0099]
其中,t为第一子过程的时间,即预设的从发现险情到开始对目标车辆进行制动的反应时间,根据国际约定的“2秒法则”,可取该段时间为2s,即t=2s;在第二子过程中,根据计算得到的v,结合动量和能量守恒定律,即在目标车辆刹车过程中,其速度产生的动量转化为克服地面摩擦做功、克服风阻力做功以及克服惯性做功的总和,忽略目标车辆自身的刹车损耗,最终根据以上原理计算得到刹车过程中的距离公式s2。
[0100]
制动距离s的具体计算过程如下所示:
[0101]
动量e
k
的计算公式为:
[0102][0103]
摩擦力做功w
friction
的计算公式为:
[0104]
w
friction
=f
friction
s2=μms2[0105]
其中,f
friction
表示目标车辆受到的摩擦力,风阻做功w
wind
的计算公式为:
[0106][0107]
其中,f
wind
表示目标车辆受到的风阻力,惯性做功w
inertia
的计算公式为:
[0108]
w
inertia
=mgs2[0109]
能量守恒关系表达式为:
[0110][0111]
根据上述公式,获取目标车辆在刹车过程中的距离公式s2表达式为:
[0112][0113]
其中,m为车辆重量,v为车辆行驶速度,μ为目标车辆的轮胎与地面的附着系数,a为目标车辆的车辆前部横截面面积,c
w
为目标车辆当前时刻所受风阻力的风阻系数。
[0114]
最终,得到目标车辆制动距离s公式如下:
[0115][0116]
在本实施例中,目标车辆为长途大巴车,目标车辆行驶的路段为沥青路面的高速公路,附着系数μ=0.6,风阻系数在0.6~0.7之间,重力常量g=9.8(m/s2)。
[0117]
步骤2、使用训练好的卷积神经网络模型,针对当前时刻的多车道道路视频图像进行车辆检测,并使用最小包围矩形框对该多车道道路视频图像中的各个车辆进行分别标记,且各包围矩形框上其中彼此相对两边呈水平姿态,进而获取该多车道道路视频图像中的所有标记车辆;将各包围矩形框底边中点位置定义为各对应标记车辆在该多车道道路视频图像中的位置;将该多车道道路视频图像底边中点位置标记为目标车辆位置,视频图像的底边为视频图像中目标车辆向前行驶时起始位置所在的边,即视频图像中最接近相邻两条车道线间间距最大的位置处的边;进入步骤3。
[0118]
以当前时刻的视频图像为数据源,使用卷积神经网络对视频图像中的车辆进行检测,在本发明实施例中,使用的卷积神经网络模型为yolo v3网络模型。
[0119]
训练yolo v3网络模型的方法为:在经过预处理的视频图像中,每隔固定帧数截取出视频图像,并对视频图像中的车辆进行标注,将进行车辆标注的视频图像作为样本集,随机选取该样本集中的部分图像为训练集,以其中的其他视频图像为测试集,对yolo v3网络模型进行训练,获取训练好的yolo v3网络模型。
[0120]
使用训练好的yolo v3网络模型对当前时刻的视频图像中的车辆进行识别,获取标记车辆,并标识出其中各标记车辆的位置,车辆检测效果如图2所示。
[0121]
步骤3、根据目标车辆在多车道道路视频图像中的位置、各标记车辆分别在多车道道路视频图像中的位置,然后使用透视变换法获取当前时刻多车道道路视频图像的鸟瞰图;进入步骤4。
[0122]
在图片中选择梯形区域,梯形区域包括多车道道路,梯形区域中存在目标车辆所在车道的图像部分和与该车道相邻的车道的图像部分,以及车道上的标记车辆,将其转换为鸟瞰图,进行透视变换的区域如图3所示,对应的透视转换后的鸟瞰图如图4所示。
[0123]
步骤4、针对鸟瞰图所在的平面:以鸟瞰图中平行于图片底边的方向为水平方向,以垂直于底边的方向为竖直方向;其中鸟瞰图的底边为鸟瞰图中目标车辆位置所在的边。
[0124]
分别针对鸟瞰图中的各标记车辆,执行步骤4.1至步骤4.4:
[0125]
步骤4.1、根据公式:
[0126]
l=k1*l
pix
[0127]
获取标记车辆与目标车辆之间的水平距离l;
[0128]
其中,k1为与实际水平长度和像素点个数相关的常数,l
pix
为标记车辆位置沿竖直方向在鸟瞰图的底边所在直线上的投影到目标车辆位置之间的像素点的个数。
[0129]
各车道线由多个尺寸相同的矩形子车道线串联组成,同一车道线中相邻两个的子车道线之间的间隔距离相等;以鸟瞰图中实际水平长度已知的物体为参照物,获取鸟瞰图中沿水平方向上与该实际水平长度相对应的线段所对应的像素点的个数l
ref_pix
;根据公式:
[0130][0131]
获取常数k1;其中,l
ref
为参照物的实际水平长度。
[0132]
参照物包括车道线和车道:
[0133]
若以车道线为参照物,在上述公式中,l
ref
等于其中的子车道线的实际水平长度,即l
ref
等于子车道线的宽度,等于0.15m,l
ref_pix
为鸟瞰图中子车道线的上侧或下侧的侧边中两个端点间的像素点的个数,即为子车道线上方或下方的两个顶点之间的像素点的个数,l
pix
为鸟瞰图中标记车辆位置到目标车辆位置的像素点的个数,其中目标车辆的位置相当于实际中摄像机的位置。
[0134]
若以车道为参照物,在上述公式中,l
ref
等于的车道的实际水平长度,即l
ref
等于车道的宽度,等于3.75m,l
ref_pix
为鸟瞰图中车道两侧的两个子车道线中位于同一水平线上的两个右侧端点或两个左侧端点间的像素点的个数,l
pix
为鸟瞰图中标记车辆位置到目标车辆位置的像素点的个数,其中目标车辆的位置相当于实际中摄像机的位置。
[0135]
步骤4.2、根据公式:
[0136]
h=k2l
y-b
[0137]
获取目标车辆与标记车辆之间的竖直距离h;
[0138]
其中,k2、b为实际竖直长度和像素点个数的对应函数中的两个常系数,l
y
为标记车辆位置沿竖直方向在鸟瞰图底边所在直线上的投影到该标记车辆位置之间像素点的个数;
[0139]
选取鸟瞰图中的任一车道线为参考物,针对其中由n1个连续的子车道线和n2个间隔组成的的矩形车道线部分:获取矩形车道线部分中沿竖直方向的任一侧边所对应的像素点的个数l
m
,并根据公式:
[0140]
h=n1h1+n2h2[0141]
计算该侧边对应的实际竖直长度h;其中,h1为子车道线沿竖直方向的侧边的实际长度,即子车道线沿着车道线布设方向的侧边的实际长度,h2为同一车道线中相邻的两个子车道线之间沿竖直方向的间隔距离;
[0142]
沿鸟瞰图中车道线布设方向依次获取同一车道线中的子车道线和相邻两个子车道线之间的间隔,获取矩形车道线部分所对应顺序数据组合的一组实际竖直长度,以及鸟瞰图中沿竖直方向上与各实际竖直长度相对应的各线段所随意的像素点的个数:(l1,h1)、(l2,h2)、(l3,h1+h2)、(l4,2h1+h2)

(l
m
,n1h1+n2h2,),其中,l1、l2、l3、l4…
l
m
分别为与实际竖直长度h1、h2、h1+h2、2h1+h2…
n1h1+n2h2所对应的像素点的个数;
[0143]
根据(l1,h1)、(l2,h2)、(l3,h1+h2)、(l4,2h1+h2)

(l
m
,n1h1+n2h2,),拟合竖直长度与像素点个数的对应关系式h=k2l
y-b。
[0144]
在本实施例中,组成车道线的子车道线沿竖直方向的实际长度为6m,同一车道线中相邻两个子车道线之间间隔的竖直长度为9m,在鸟瞰图中沿竖直方向向标定多个特征点,如图6所示,根据距离场景采集的各实际竖直长度和对应的像素点如表1所示:
[0145]
表1
[0146]
实际距离(h)6m9m15m21m30m36m像素点个数(l
y
)82121203286402489
[0147]
对表中的数据进行拟合,拟合得到的曲线如图7所示,拟合得到的方程为:
[0148]
h=0.07397l
y-0.01629
[0149]
其中,l
y
为与实际竖直长度所对应的像素点的个数,即鸟瞰图中标记车辆位置到目标车辆位置之间的垂直距离线段所对应的像素点的个数。
[0150]
在步骤4.1和步骤4.2中,相当于在鸟瞰图中根据多次试验分析,计算得到鸟瞰图中水平方向和竖直方向的像素与实际距离的对应关系分别如步骤4.1和步骤4.2中的公式所示,具体的,对于水平方向,两点之间的像素点的个数与两点之间线段对应的实际距离呈现比例关系,对于竖直方向,两点之间的像素点的个数与两点之间的线段对应的实际距离成线性关系。
[0151]
为了后续计算方便,首先,先在原始图像中将参照物信息进行取点标注,如图5所示为原始图片中参照物水平与垂直方向的特征点,将图5中标注的坐标点,经过透视变换,将图5中的每个点经过变换矩阵对应到鸟瞰图中相应的点,如图6所示为参照物特征点在经过透视变换矩阵转换后的水平与垂直方向特征点示意图。其次,对于距离计算采用的方法是:对于水平方向,在一个实施例中,车道线宽度为0.15m,车道宽度为3.75m,以车道线或车道为参照物,在图像横向标定多个特征点,如图6所示,根据透视变换及对变换后的图像进行分析,根据同一相机成像特点和透视变换特点可得,在同一视频中,两物体与其像素的比例关系不变。
[0152]
步骤4.3、根据目标车辆位置与标记车辆位置之间的水平距离l和竖直距离h,获取目标车辆和标记车辆之间的实际距离
[0153]
即:由以上步骤分别计算得到的水平实际距离和垂直实际距离,利用欧式距离公式,计算得到目标车辆和标记车辆之间的实际距离d,如图9所示为多车道车距检测效果图,距离如下所示:
[0154]
d=ρ(l,h)
[0155]
进一步的,该距离的表达式可具体表示为
[0156]
步骤4.4、比对制动距离s和实际距离d,若s≤d,对目标车辆进行告警;否则进入步骤1。
[0157]
在计算得到车距和安全距离后,根据安全距离,在实际行驶过程中,当检测到同向相邻车道中有车辆时,根据计算得到的距离和安全距离的比较,对行车过程进行分析,并根据分析结果对驾驶员提供驾驶建议和预警行为,如图9所示安全预警示意图。当其他车辆在安全区域之外,则提醒驾驶员可以正常驾驶;当其他车辆进入安全区域后,根据车辆所在左
侧、右侧以及前方车道,提醒驾驶员采取减速、变道等避让措施,以实现安全行驶,减少事故的发生概率,如图10所示为对驾驶员驾驶安全性预警效果图。
[0158]
本发明还提供了一种基于多车道车距检测的安全预警系统,用于实现上述方法,系统包括图像获取模块、制动距离获取模块、车辆检测模块、鸟瞰图变换模块、分析与预警模块;
[0159]
图像获取模块,用于以固定角度所捕获目标车辆前方的多车道道路视频图像;
[0160]
制动距离获取模块,用于获取目标车辆在当前时刻的车速v,结合能量守恒定律,获取目标车辆在当前时刻刹车时的制动距离s;
[0161]
车辆检测模块,使用训练好的卷积神经网络模型,针对当前时刻的多车道道路视频图像进行车辆检测,并使用最小包围矩形框对该多车道道路视频图像中的各个车辆进行分别标记,且各包围矩形框上其中彼此相对两边呈水平姿态,进而获取该多车道道路视频图像中的所有标记车辆;将各包围矩形框底边中点位置定义为各对应标记车辆在该多车道道路视频图像中的位置;将该多车道道路视频图像底边中点位置标记为目标车辆位置;
[0162]
鸟瞰图变换模块,用于根据目标车辆在多车道道路视频图像中的位置、各标记车辆分别在多车道道路视频图像中的位置,然后使用透视变换法获取当前时刻多车道道路视频图像的鸟瞰图;
[0163]
分析与预警模块,用于针对鸟瞰图所在的平面:以鸟瞰图中平行于图片底边的方向为水平方向,以垂直于图片底边的方向为竖直方向;
[0164]
分别针对鸟瞰图中的各标记车辆,执行如下指令:
[0165]
根据公式:
[0166]
l=k1*l
pix
[0167]
获取标记车辆与目标车辆之间的水平距离l;
[0168]
其中,k1为与实际水平长度和像素点个数相关的常数,l
pix
为标记车辆位置沿竖直方向在鸟瞰图的底边所在直线上的投影到目标车辆位置之间的像素点的个数;
[0169]
根据公式:
[0170]
h=k2l
y-b
[0171]
获取目标车辆与标记车辆之间的竖直距离h;
[0172]
其中,k2、b为实际竖直长度和像素点个数的对应函数中的两个常系数,l
y
为标记车辆位置沿竖直方向在鸟瞰图底边所在直线上的投影到该标记车辆位置之间像素点的个数;
[0173]
根据目标车辆位置与标记车辆位置之间的水平距离l和竖直距离h,获取目标车辆和标记车辆之间的实际距离
[0174]
比对制动距离s和实际距离d,若s≤d,对目标车辆进行告警,否则执行制动距离获取模块中的指令。
[0175]
进一步的,分析与预警模块包括车距检测模块和碰撞预警模块;
[0176]
车距检测模块,用于针对鸟瞰图所在的平面:以鸟瞰图中平行于图片底边的方向为水平方向,以垂直于底边的方向为竖直方向;
[0177]
分别针对鸟瞰图中的各标记车辆,执行如下指令:
[0178]
根据公式:
[0179]
l=k1*l
pix
[0180]
获取标记车辆与目标车辆之间的水平距离l;
[0181]
其中,k1为与实际水平长度和像素点个数相关的常数,l
pix
为标记车辆位置沿竖直方向在鸟瞰图的底边所在直线上的投影到目标车辆位置之间的像素点的个数;
[0182]
根据公式:
[0183]
h=k2l
y-b
[0184]
获取目标车辆与标记车辆之间的竖直距离h;
[0185]
其中,k2、b为实际竖直长度和像素点个数的对应函数中的两个常系数,l
y
为标记车辆位置沿竖直方向在鸟瞰图底边所在线段的所在直线上的投影到该标记车辆位置之间像素点的个数;
[0186]
根据目标车辆位置与标记车辆位置之间的水平距离l和竖直距离h,获取目标车辆和标记车辆之间的实际距离
[0187]
碰撞预警模块,用于比对制动距离s和实际距离d,若s≤d,对目标车辆进行告警。
[0188]
进一步的,制动距离获取模块包括用于获取目标车辆在当前时刻的车速v的车速检测模块;车速检测模块具体用于执行如下指令:
[0189]
车速检测模块用于针对由当前时刻向历史时间方向的预设时长内的经过预处理的视频中的各幅多车道道路视频图像:选取位于各视频帧中的相同位置的区域为感兴趣区域,该感兴趣区域存在车道线;
[0190]
对于穿过该感兴趣区域的同一车道线中的各子车道线:以各子车道线中沿车道线布设方向的其中一个侧边的两个端点为角点,根据角点检测法统计感兴趣区域中子车道线连续出现的次数framecount(n),根据公式:
[0191][0192]
获取目标车辆在当前时刻的车速v,其中h'为子车道线中包含两个所述角点的侧边的实际长度,fps为连续视频帧的帧数。
[0193]
本发明提供的基于多车道车距检测的安全预警方法:在计算目标车辆的制动距离时考虑到了车辆在实际行驶过程中受风阻等因素的影响,也考虑了动量和能量守恒关系,能更精确的计算出制动距离;能为目标车辆中提供同向相邻车道中的车辆信息,避免自车或目标车辆因紧急变道等行为所造成的事故;利用透视变换实现成像角度的变换,根据特性将横纵距离分别拟合出方程进行计算,最后计算出实际距离,充分考虑了透视变换的特点,能更好的表示出图像中的距离,精度更高;进而提高了安全预警方法的准确度。
[0194]
以上所述仅是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1