一种基于可变部件模型算法的汽车超车预警方法与流程

文档序号:11177731阅读:462来源:国知局
一种基于可变部件模型算法的汽车超车预警方法与流程

本发明涉及超车预警领域,尤其是涉及一种基于可变部件模型算法的汽车超车预警方法。



背景技术:

超车是驾驶员最为常见的驾驶行为之一。据统计,在高速公路上驾驶员以90km/h行驶100km的距离,途中将进行大约50次超车行为。近年来,我国因超车不当引发的交通事故呈明显上升趋势,尤其是在高速公路上,60%以上的交通事故都与超车有关。实施超车时,驾驶员必须根据当前的车速、车辆间距、车流状态以及道路交通设施等周边环境信息,实时调整驾驶策略实现超车行为。避免超车过程引发的车辆碰撞,可通过控制车辆间的相对速度和增加车辆纵向间距来实现。

公开号为cn105216797a的专利文献公开了名称为超车方法及系统的技术方案,该方案包括检测模块、处理模块,通过摄像机和前置雷达获得障碍物的行驶速度及位置信息来判断目标车辆能否执行超车动作;公开号为cn101326511的专利文献公开了名称为用于检测或预测车辆超车的方法的技术方案,在该方案的实施例中,使用无线通信来读取其他车辆的导航系统,以确定另一车辆是否会超车。

目前,在国内与超车及变道的相关技术中,多数采用雷达或者短距离信息通讯系统来防止超车时交通事故的发生,这种方案因为采用多种传感器成本巨大,并且在实时场景中并不能快速有效的识别车辆及车道线信息,或者仅仅是预测障碍物与车辆之间的距离信息。



技术实现要素:

本发明的目的是针对上述问题提供一种基于可变部件模型算法的汽车超车预警方法。

本发明的目的可以通过以下技术方案来实现:

一种基于可变部件模型算法的汽车超车预警方法,所述方法包括下列步骤:

后方车辆超车预警步骤,汽车通过后视摄像头结合可变部件模型算法对后方车辆进行识别,通过识别后方车辆与本车以及车道线之间的位置关系,判断后方车辆是否进行超车并向驾驶员发出预警;

前方车辆超车预警步骤,汽车通过前视摄像头结合可变部件模型算法对前方车辆进行识别,通过识别前方车辆与本车以及车道线之间的位置关系,判断本车是否需要进行超车并在超车有危险时向驾驶员发出预警。

所述后方车辆超车预警步骤具体为:

a1)汽车根据可变部件模型算法,检测后视摄像头的拍摄图像内是否出现其他车辆,若是则进入步骤a2),若否则继续检测;

a2)汽车判断检测到的车辆与本车之间的距离是否减小,若是则进入步骤a3),若否则返回步骤a1);

a3)汽车对车道线进行识别,并判断本车与检测到的车辆是否位于同一车道线内,若是则向驾驶员发出预警,若否则进行步骤a4);

a4)汽车在检测到的车辆从后视摄像头内消失后进入前方车辆超车预警步骤。

所述前方车辆超车预警步骤具体为:

b1)汽车根据可变部件模型算法,检测前视摄像头的拍摄图像内是否出现其他车辆,若是则进入步骤b2),若否则继续检测;

b2)汽车判断检测到的车辆与本车之间的距离是否减小,若是则进入步骤b3),若否则返回步骤b1);

b3)汽车对车道线进行识别,并判断本车与检测到的车辆是否位于同一车道线内,若是则向驾驶员发出预警,若否则进行步骤b4);

b4)汽车在检测到的车辆从前视摄像头内消失后进入后方车辆超车预警步骤。

所述可变部件模型算法具体为:

a11)根据后视摄像头的拍摄图像,构建尺度金字塔;

a12)在尺度金字塔内的每个尺度层内,通过滑动窗口检测方法将图像与通过可变部件模型算法训练后的模型进行匹配,并计算匹配分数;

a13)选取最高匹配分数对应的尺度层,若该匹配分数超过阈值则表明检测到车辆且车辆出现在与该尺度层内匹配分数最高所对应的位置。

所述匹配分数具体为:

其中,score为匹配分数,(x0,y0)为锚点,l0为尺度层数,为根模型的检测分数,为第i个部件模型的响应,vi为第i个部件模型相对于锚点的偏移量,b为偏移系数。

所述通过可变部件模型算法训练后的模型具体为:通过采用pca方法对训练图片的hog特征降维处理后进行特征提取,再通过隐变量支持向量机分类器进行模型训练,得到通过可变部件模型算法训练后的模型。

所述汽车判断检测到的车辆与本车之间的距离具体为:通过安装于汽车上的激光雷达进行测距,得到检测到的车辆与本车之间的距离。

所述汽车对车道线进行识别具体为:汽车通过hough变换,扫描图像中的共线点,实现对车道线的识别。

所述预警包括通过led预警面板闪烁实现预警和通过蜂鸣器鸣响实现预警。

所述led预警面板上设有至少分布在前后左右四个方向的led预警灯。

与现有技术相比,本发明具有以下有益效果:

(1)通过可变部件模型算法,对前视摄像头和后视摄像头拍摄到的图像进行车辆识别,继而再通过判断车辆与本车之间的距离关系和车辆与车道线之间的位置关系确定车辆与本车是否在超车过程中出现危险以及本车是否在超车过程中出现危险,这种方法与现有的通过雷达或短距离通信来进行识别的方法相比,识别速度快的同时识别的准确性也比较高,而且通过摄像头来进行识别的方法与雷达等相比价格成本较低。

(2)车辆通过后方车辆超车预警步骤和前方车辆超车预警步骤两个步骤相结合,对靠近本车安全范围内的车辆均实现全过程跟踪,即在本车后方的车辆在超车后再通过前方车辆超车预警步骤来进行监控,本车在超车后继续对超过的车辆通过后方车辆超车预警步骤来进行监控,保证了预警的完整性。

(3)在通过可变部件模型算法对车辆进行识别检测时,通过构建尺度金字塔保证对各尺度下的拍摄图片均进行识别,并选取检测得分最高的图片作为车辆的识别位置,保证了检测的完整性,从而提高预警的精确程度。

(4)通过可变部件模型算法对训练图片进行特征提取并训练得到模型,这种方法训练的模型精确程度较高,从而提高了最终预警的准确程度。

(5)汽车通过hough变换识别车道线,继而可以判断本车与预警车辆是否处于同一车道线内,从而在二者在同一车道线且距离缩小时及时对驾驶员发出预警,及时避免事故的发生。

(6)通过led灯闪烁和蜂鸣器鸣响同时来对驾驶员进行预警,最大程度的提示驾驶员危险情况的发生,提高了预警的安全性。

(7)led预警面板上设有至少分布在前后左右四个方向的led预警灯,可以将检测到的预警情况发生的位置通过led预警灯来表示出来,便于驾驶员及时了解预警发生的位置,提高了预警的及时性。

附图说明

图1为后方车辆超车预警步骤的方法流程图;

图2为前方车辆超车预警步骤的方法流程图;

图3为实现基于可变部件模型算法的汽车超车预警方法的汽车各模块布局图;

图4为摄像头的视角范围示意图;

图5为实施例中超车预警的整体方法流程图;

图6为可变部件模型算法的模型图,其中,(6a)为第一视角下其中一个组件的根模型图,(6b)为第一视角下其中一个组件的部件模型图,(6c)为第一视角下的模型变形损失,(6d)为第二视角下其中一个组件的根模型图,(6e)为第二视角下其中一个组件的部件模型图,(6f)为第二视角下的模型变形损失;

图7为模型的匹配过程图;

图8为led预警面板示意图;

其中,111为车辆,301为预警模块,302为前视摄像头,303为数据处理模块,304为后视摄像头,401~406均为led灯。

具体实施方式

下面结合附图和具体实施例对本发明进行详细说明。本实施例以本发明技术方案为前提进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。

本实施例提供的是一种基于可变部件模型算法的汽车超车预警方法包括下列步骤:

后方车辆超车预警步骤,汽车通过后视摄像头结合可变部件模型算法对后方车辆进行识别,通过识别后方车辆与本车以及车道线之间的位置关系,判断后方车辆是否进行超车并向驾驶员发出预警,具体为:

a1)汽车根据可变部件模型算法,检测后视摄像头的拍摄图像内是否出现其他车辆,若是则进入步骤a2),若否则继续检测:

a11)根据后视摄像头的拍摄图像,构建尺度金字塔;

a12)在尺度金字塔内的每个尺度层内,通过滑动窗口检测方法将图像与通过可变部件模型算法训练后的模型进行匹配,并计算匹配分数;

a13)选取最高匹配分数对应的尺度层,若该匹配分数超过阈值则表明检测到车辆且车辆出现在与该尺度层内匹配分数最高所对应的位置;

a2)汽车判断检测到的车辆与本车之间的距离是否减小,若是则进入步骤a3),若否则返回步骤a1);

a3)汽车对车道线进行识别,并判断本车与检测到的车辆是否位于同一车道线内,若是则向驾驶员发出预警,若否则进行步骤a4);

a4)汽车在检测到的车辆从后视摄像头内消失后进入前方车辆超车预警步骤;

前方车辆超车预警步骤,汽车通过前视摄像头结合可变部件模型算法对前方车辆进行识别,通过识别前方车辆与本车以及车道线之间的位置关系,判断本车是否需要进行超车并在超车有危险时向驾驶员发出预警,具体为:

b1)汽车根据可变部件模型算法,检测前视摄像头的拍摄图像内是否出现其他车辆,若是则进入步骤b2),若否则继续检测;

b2)汽车判断检测到的车辆与本车之间的距离是否减小,若是则进入步骤b3),若否则返回步骤b1);

b3)汽车对车道线进行识别,并判断本车与检测到的车辆是否位于同一车道线内,若是则向驾驶员发出预警,若否则进行步骤b4);

b4)汽车在检测到的车辆从前视摄像头内消失后进入后方车辆超车预警步骤。

上述步骤的具体过程如下:

如图3所示,是实现基于可变部件模型算法的汽车超车预警方法的汽车各模块布局图,前视摄像头302安装与前挡风玻璃上方中间,用于收集车辆111前方160°视角的路况信息,后视摄像头304安装于后挡风玻璃上方中间,用于收集车辆111后方160°视角的路况信息,数据处理模块303分析计算前视摄像头302,后视摄像头304的图像信息,经计算识别出图像中的其他车辆及车道线,追踪在视野中的车辆,由于其他临近车辆的超车及变道对车辆111的安全行驶造成影响时,数据处理模块303向预警模块301发送信息,预警模块301发出警报,并将相应情况反映在led预警面板上,预警模块301由蜂鸣器及led预警面板组成,置于中控台之上。该摄像头的视角范围如图4所示,本实施例中,前视摄像头与后视摄像头的视角范围都为160°,所收集的视频能够在有效范围内辨识出相邻两车道内的车辆及车道线信息。

基于上述部件,最终提出的基于可变部件模型算法的汽车超车预警方法如图5所示,主要步骤为:数据处理模块303通过后视摄像头304的信息,检测到有车辆从后方驶来,对驶来的车辆跟踪,然后判断该车辆与本车辆的距离是否缩短,若该车辆已远离本车辆,则放弃追踪。若该车辆与本车辆距离缩短到安全距离之内,数据处理模块303通过识别车道线及该车辆,做出判断该车辆是否与本车辆处于同一车道线之内,若本车辆与该车辆在同一车道线之内,则报警模块向驾驶员发出警报,提醒驾驶员有可能发生后方车辆追尾事故。若该车辆与本车辆不在同一车道线之内,则对该车辆继续追踪,当该车辆消失在后视摄像头视野中时,说明该车辆位于本车辆的盲区之内,预警模块发出警报,提醒驾驶员有车辆位于本车辆的盲区之内,不要再该情况下变道。该车辆继续向前行驶,出现在前视摄像头302的视野之内,数字处理模块303通过前视摄像头302检测到该车辆,对该车辆继续跟踪,若该车辆在相邻车道内远离本车辆,则停止追踪,若该车辆从相邻车道变道到本车所在车道,则预警模块向驾驶员发出报警,提醒驾驶员前方车辆变道,注意减速避让。

上述是车辆被其他车辆超越的场景,超越其他的车辆场景下步骤为:数据处理模块303通过前视摄像头302检测到本车辆前方有车辆,对该车辆跟踪,若该车辆与本车辆距离变大,停止对该车辆跟踪。若该车辆与本车辆距离缩短,则数据处理模块303判断该车辆是否与本车辆处于同一车道线之内。若处于同一车道线之内,则预警模块301向驾驶员发出预警,提醒驾驶员前方可能会发生追尾事故,注意减速避让,若该车辆位于相邻车道,则继续对该车辆跟踪,当该车辆消失在前视摄像头302视野中时,说明该车辆位于本车辆的盲区内,预警模块向驾驶员发出预警,提醒驾驶员盲区内有车辆,在该请款下不能变道。本车辆超越该车辆继续向前行驶,当该车辆出现在后视摄像头304视野中时,对该车辆追踪,该车辆远离之后,停止对该车辆追踪。

为了将摄像机采集到环境数据与车辆行驶环境中的真实物体相对应,找到摄像机所生成的图像像素坐标系中的点坐标与摄像机环境坐标系中物点坐标之间的转换关系,需要对摄像机进行标定。本方法采用摄像机和激光雷达联合标定,通过提取标定物在单线激光雷达和图像上对应的特征点来进行摄像机外部参数的标定,从而完成单线激光坐标、摄像机坐标、图像像素坐标传感器坐标的统一,实现激光雷达与摄像机的空间对准。

摄像机和激光雷达联合标定,激光雷达及摄像机都与汽车为刚性连接,它们各自的相对姿态和位移固定不变,在同一空间内,每个激光雷达的扫描数据点都在图像中存在位移的一个对应点。因此,通过建立合理的激光雷达坐标系与摄像机坐标系,利用激光雷达扫描点与摄像机图像的空间约束关系,即可求解两坐标系的空间变换关系,从而完成激光雷达与摄像机的空间对准,实现激光雷达数据与可见光图像的关联。摄像机的外部参数通过约束方程求解后,激光雷达、摄像机、图像和相对环境坐标系的相对关系就完全确定,因此激光雷达扫描点可以通过摄像机模型头投影至图像像素坐标上。其像素级数据融合可由下面的方程完成:其中,为摄像机的内部参数矩阵。当摄像机与激光雷达同时观测点p时,其在摄像机自身环境坐标系中的坐标为pvc(xvc,yvc,zvc),在可见光图像中投影点的坐标为u=(uv1)t在雷达自身世界坐标中的坐标为plc(xlc,ylc,zlc)。由于摄像机与激光雷达使用了同一个环境坐标系,则有其中h为激光雷达的安装高度。上面两式联立,可得:其中,由激光雷达的外参标定和摄像机的内参标定可获得和xlc。综上,通过提取足够多的图像雷达对应点对,通过求解线性方程即可获得相关的坐标旋转矩阵和坐标平移矩阵进而可得到激光雷达数据和其对应图像像素间的变换关系。

可变部件模型算法,是一种目标检测算法,可变部件模型采用pca(主成分分析法)对hog(梯度方向直方图)特征进行降维处理后进行特征提取;在模型训练中,采用latentsvm(隐变量支持向量机)分类器,在目标检测时,采用滑动窗口的检测思想;针对目标的多视角问题,采用多组件策略,分别在不同视角下建立不同模型;针对目标的变形问题,采用基于图结构的部件模型策略。具体的,可变部件模型算法,采用一种星形模型,该星形模型由一个大体上覆盖整个目标的根模型及覆盖目标中小部件的高分辨率的部件模型构成。根模型定义了检测窗口,部件模型放置在分辨率是根所在层的两倍的特征层中。

可变部件模型算法的特征采用了hog特征,并对hog特征进行了一些改进。可变部件模型算法取消了原hog特征中的block,保留cell,归一化时直接将当前cell与其周围的4个cell所组成的一个区域归一化。计算梯度方向时,采用了有符号梯度(0-360°)和无符号梯度(0-180°)相结合的策略。

可变部件模型算法的模型,每一个组件由一个根滤模型和多个部件模型组成。图6(a)和图6(b)是其中一个组件的根模型和部件模型的可视化效果。如图6(a)根模型比较粗糙,大致呈现一个车辆的侧面,如图6(b)部件模型为矩形框内的部分,共6个部分,部件模型的分辨率是根模型的两倍。图6(c)为模型的变形损失,越亮的区域表示变形损失花费越大,圆圈中心是部件模型的理性位置,如果检测出来的部件模型的位置恰好在此,那变形花费就为0,偏离的越远变形花费越大。对于多视角问题,采用多组件策略,图6(a)(b)(c)和图6(d)(e)(f)分别为两个不同视角的组件。

可变部件模型算法,在算法的检测方面,可变部件模型采用滑动窗口检测方式,通过构建尺度金字塔在各个尺度搜索。如图7所示为某一尺度下检测过程,即车辆模型的匹配过程。将模型看作一个滤波算子,响应得分为特征与待匹配模型的相似程度,越相似则得分越高。如图7所示,左侧为根模型的检测流程,越亮的区域代表响应得分越高。右侧为各部件模型的检测过程。首先,将特征图像与模型进行匹配得到滤波后的图像;然后,进行相应变换:以锚点(即左上角坐标)为参考位置,综合部件模型与特征的匹配程度和部件模型相对理想位置的变形花费(偏离损失),得到最优的部件模型位置和相应得分。在尺度为l0层,以(x0,y0)为锚点的检测得分,如下公式所示:其中,为根模型的检测分数。由于同一个目标有多个组件,而不同组件模型的检测分数需要对齐,所以需要偏移系数b。为第i个部件模型的响应,由于部件模型的分辨率是根模型的一倍,因此部件模型需要在尺度层l0-λ匹配。因此,锚点的坐标也需要重新映射到尺度层l0-λ,即放大了一倍2(x0,y0),部件模型i相对于锚点2(x0,y0)的偏移量vi,所以在尺度层l0-λ,部件模型i的理想位置为2(x0,y0)+vi。

hough变换在直线检测时,每个像素坐标点经过hough变换成为一系列离散点的集合。通过一个直线的离散极坐标公式,可以表达出直线的离散点几何等式如下:r=xcosθ+ysinθ,其中角度θ指r与x轴之间的夹角,r为到直线几何垂直距离。我们根据像素点坐标(x,y)的值绘制每个(r,θ),那么从图像笛卡尔坐标系转换到极坐标hough变换系统,这种熊点到曲线的变换称为直线的hough变换。变换通过量化hough参数空间为有限个值间隔等分或累加格子。hough变换算法开始,每个像素坐标点(x,y)被转换到(r,θ)的曲线点上面,累加到对应的格子数据点,当一个波峰出现时,说明有直线存在。

hough变换算法的检测过程如下:首先在参数空间建立一个二维计数器r(r,θ),r的范围是0到图像对角线的长度,θ的范围是0到2π,数组中的所有值初始化为0;然后,扫描图像空间中所有像素点(x,y),hough变换式进行图像空间到参数空间的变换(r,θ),并且计数器r(r,θ)加1;第三步,设定阈值thr(r,θ),即判断图像中有多少个点共线才认为存在直线,r(r,θ)大于thr(r,θ),则组成图像中的图像。

图8是led预警面板示意图,面板上有6个led灯,当其他车辆出现在本车左侧盲区时led灯401闪烁;当其他车辆出现在本车右侧盲区时led灯406闪烁;当有其他车辆与本车在同一车道并位于本车尾部,该车辆与本车辆距离过小时,led灯404闪烁;当有其他车辆与本车在同一车道并位于本车前方,该车辆与本车辆距离过小时,led灯403闪烁;前方左侧车道内车辆变道到与本车统一车道时,led灯402闪烁;前方右侧车道内车辆变道到与本车统一车道时,led灯405闪烁。

综上所述,本实施例提供了一种基于可变部件模型算法的汽车超车预警方法,首先通过前视摄像头及后视摄像头采集的图像,对数据处理模块进行训练,使其运用训练得出的模型能够在实际场景中识别出车辆及车道线,并对车辆进行跟踪,从而判断其他车辆在本车辆周围变道及超车等可能对本车辆造成危险的相关情况,并向驾驶员发送对应场景的预警,从而使驾驶员能够提早规避相关事故的发生。

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