1.本发明涉及自动驾驶技术领域,具体涉及图像识别技术。
背景技术:2.随着智能驾驶的技术发展,在道路上使用iacc(集成式自适应巡航)的车辆越来越多,装配这些功能的车辆在行驶的时候,遇到坑洼的道路,目前由于对于该场景的识别率等问题,车辆没有针对这个场景做有效的减速策略或规避策略,造成严重的安全事故或者极差的驾驶体验。尤其是在高速路行驶过程中,驾驶人使用了自动驾驶的相关功能,注意力可能不在前方,对于坑洼路段,没有做好有效人为干涉,智能驾驶系统视觉感知模块也没有做到有效识别,车辆以高速通过坑洼位置,很容易造成爆胎,失控等事故,具有极大的安全隐患。目前碰到坑洼路段,主要通过车载导航或高精地图采集路况信息对驾驶员进行提醒,规避风险。
3.车载导航或高精地图的路况信息更新需要一定周期,数据实时性不高,且部分数据是来自车主的上传,缺少可靠数字支撑。
4.现有技术提出了一种基于大数据的车载道路坑洼提醒方法及系统,所述方法包括以下步骤:车辆行驶过程中,采集前方道路的道路图像信息;当判断前方道路的路面有坑洼时,则将采集具有坑洼的图像及定位信息上传至云平台;根据汽车行驶数据判断是否有坑洼;当根据汽车行驶数据判断有坑洼时,则将汽车行驶数据及定位信息上传至云平台;云平台根据定位信息在地图上相应的区域进行标注;当有车辆行驶至相应的区域时,云平台下发该区域的坑洼信息至该车辆;当车辆在该区域行驶时,根据地图上的坑洼标注做出相应的响应。在车辆行驶过程中,可以对坑洼路段进行有效提醒,减少该场景下安全行驶问题,而且云平台让数据更加实时。
5.现有技术基于大数据的,该方案依赖汽车通过坑洼记录下的大数据进行提醒,实时性和可靠性不足,对于新发生的坑洼无法及时规避。
技术实现要素:6.本发明的目的之一在于提供一种车载道路坑洼识别方法,以解决现有技术对于新发生的坑洼无法及时规避的问题;目的之二在于提供一种车载道路坑洼识别系统;目的之三在于提供一种汽车。
7.为了实现上述目的,本发明采用的技术方案如下:
8.一种车载道路坑洼识别方法,
9.摄像头实时采集前方道路的数据;
10.判断前方道路是否存在遮掩车辆;
11.若不存在遮掩车辆,则基于前方的道路图像信息,判断前方道路是否存在坑洼;
12.若存在遮掩车辆,则基于遮掩车辆的抖动幅度,判断前方道路是否存在坑洼。
13.根据上述技术手段,该方法基于图像识别技术,并且将场景分为存在遮掩车辆和
不存在遮掩车辆,并针对两种场景做出响应,提高了识别的准确性和可靠性,同时图像识别技术基于当前的路况,具有较好的实时性,有利于车辆提前规避坑洼。
14.进一步,所述不存在遮掩车辆,则基于前方的道路图像信息,判断前方道路是否存在坑洼的方法在于:
15.获取前方道路的图像,并将图像灰度处理;
16.通过边缘检测算法,获取灰度值发生突变部分的轮廓;
17.获取灰度值发生突变部分的平均深度值,若平均深度值大于等于第一设定值,则判定灰度值发生突变部分为坑洼,若平均深度值小于第一设定值,则判定灰度值发生突变的部分不为坑洼。
18.根据上述技术手段,针对不存在遮掩车辆的场景,提高了识别的准确性。
19.进一步,所述若存在遮掩车辆,则基于遮掩车辆的抖动幅度,判断前方道路是否存在坑洼的方法在于:
20.获取摄像头拍摄的前方的视频,读取视频的每一帧图像并显示;
21.框选每一帧图像的遮掩车辆,若满足下式,则认为前方道路存在坑洼,否则不存在坑洼;
22.h
n+1-hn≥h
设定
,
23.其中,hn=l
n1-l
n2
;
24.l
n1
表示遮掩车辆最左边的点与最右边的点的距离;
25.l
n2
表示遮掩车辆最上边的点与最下边的点的距离;
26.n表示表示帧数;
27.h
设定
表示第二设定值。
28.根据上述技术手段,针对存在遮掩车辆的场景,提高了识别的准确性。
29.进一步,若前方存在坑洼,则将坑洼位置传递至自动驾驶控制器,所述自动驾驶控制器规划规避坑洼的路线。
30.进一步,所述规划规避坑洼的路线a:变换到右车道的方式规避坑洼;或者b:变换到左车道的方式规避坑洼;或者c:通过减速的方式直接通过坑洼。
31.进一步,所述自动驾驶控制器首先判定能否采用所述a的方式,若所述a的方式无法采用,然后判定能否采用所述b的方式,若所述b的方式无法采用,再判定能否采用所述c的方式。
32.根据上述技术手段,设置了规避方式的优先级,有利于自动驾驶控制器选择最佳的方式规避坑洼的影响。
33.进一步,所述框选每一帧图像的遮掩车辆前,通过以下方法处理每一帧图像:
34.将每一帧图像转成灰度图并二值化,并将二值化后的图像的边缘腐蚀或者扩大。
35.根据上述技术手段,能够获得较清晰的图像,提高识别的准确率。
36.一种基于上述的方法的车载道路坑洼识别系统,包括
37.判断模块,配置为接收摄像头拍摄的前方道路的信息,判断前方道路是否存在遮掩车辆;处理模块,配置为若前方道路不存在遮掩车辆,则基于前方道路图像信息,判断前方道路是否存在坑洼;若前方道路存在遮掩车辆,则基于遮掩车辆的抖动幅度,判断前方道路是否存在坑洼。
38.进一步,当所述第一坑洼识别模块或者第二坑洼识别模块识别到前方道路存在坑洼时,
39.则所述第一坑洼识别模块或者第二坑洼识别模块将坑洼的位置发送至自动驾驶控制器,然后所述自动驾驶控制器规划规避坑洼的路线。
40.一种汽车,配置有上述的系统。
41.本发明的有益效果:
42.本发明基于视觉识别技术,基于实时的路况进行坑洼的判断,具有较好的实时性,同时将路况分为两种场景,并针对两种场景区分识别方式,提高了识别的准确率,进而使得本方法和系统能够在全路况下对道路坑洼风险进行分析和预警,更好的有效规避或者降低坑洼的影响,提高自动驾驶时坑洼路段上的舒适性和安全性。
附图说明
43.图1为本发明所述的方法的流程图;
44.图2为场景a示意图;
45.图3为场景b示意图;
46.图4为本发明所述的方法的系统的结构示意图。
47.其中,1-摄像头;2-判断模块;3-处理模块;4-自动驾驶控制器;5-执行机构。
具体实施方式
48.以下将参照附图和优选实施例来说明本发明技术方案的实施方式,本领域技术人员可由本说明书中所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。应当理解,优选实施例仅为了说明本发明,而不是为了限制本发明的保护范围。
49.需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
50.本实施例提出了一种车载道路坑洼识别方法,如图1所示,方法具体为:
51.车辆在行进过程中,通过摄像头实时采集前方道路的数据,此时车辆处于自动驾驶状态。
52.通过摄像头采集的前方道路数据,判断前方道路是否存在遮掩车辆。
53.若不存在遮掩车辆,则基于前方的道路图像信息,判断前方道路是否存在坑洼。
54.其场景如图2所示,方法具体为:
55.获取前方道路的图像,并将图像灰度处理;
56.通过边缘检测算法,将边缘检测算法应用于图像,图像的边缘由图像中两个相邻的区域之间的像素集合组成,是指图像中一个区域的结束和另外一个区域的开始。也可以这么理解,图像边缘就是图像中灰度值发生空间突变的像素的集合。梯度方向和幅度是图像边缘的两个性质,沿着跟边缘垂直的的方向,像素值的变化幅度比较平缓;而沿着与边缘
平行的方向,则像素值变化幅度变化比较大。于是,根据该变化特性,通常会采用计算一阶或者二阶导数的方法来描述和检测图像边缘。
57.基于边缘检测的图像分割方法的基本思路是首先检测出图像中的边缘像素,然后再把这些边缘像素集合连结在一起便组成所要的目标区域边界。图像中的边缘可以通过对灰度值求导来检测确定,然而求导数可以通过计算微分算子来实现。在数字图像处理领域,微分运算通常被差分计算所近似代替。进而获取灰度值发生突变部分的轮廓。
58.在灰度值发生突变部分的轮廓中计算灰度值发生突变部分的平均深度值,若平均深度值大于等于第一设定值,则判定灰度值发生突变部分为坑洼,若平均深度值小于第一设定值,则判定灰度值发生突变的部分不为坑洼。
59.第一设定值的获取可通过如下方式,设置多个带有坑洼的图像样本,将图像通过边缘检测方法确定灰度值发生突变部分的轮廓,然后计算轮廓的深度值,进而根据所有轮廓的深度值确定第一设定值。
60.若存在遮掩车辆,则基于遮掩车辆的抖动幅度,判断前方道路是否存在坑洼。
61.如图3所示,方法具体为:
62.通过videocapture来加载本地视频,循环读取每一帧并进行显示。
63.为了提高计算机的运算速度,图像处理前一般将图像转成灰度图
64.因为彩色图片是3通道(rgb)24位深度的图像,而灰度图是单通道8位深度的图像,因此处理灰度图比彩色图效率快多了。frontmat为前一帧,aftermat为后一帧。
65.通过threshold函数将图像二值化,针对图片的二值化数据进行操作,主要是针对高亮部分。使用算法,将图像的边缘腐蚀掉。将目标的边缘的“毛刺”踢除掉。或者针对图片的二值化数据进行操作的,主要是针对高亮部分。使用算法,将图像的边缘扩大些。作用就是将目标的边缘或者是内部的坑填掉。
66.框选每一帧图像的遮掩车辆,框选的原理就是找到白色方块最左边的点与最右边的点,得到之间的大小差距(矩形宽),找到白色方块最上边的点与最下边的点,得到之间的大小差距(矩形高h)。通过宽高即可画出一个把白色方块包含在内的矩形,矩形左上角坐标通过白色方块最上方的值和最左方的值来确定。
67.若满足下式,说明前方遮掩车辆的抖动幅度较大,则认为前方道路存在坑洼,否则说明
68.抖动幅度较小,不存在坑洼;
69.h
n+1-hn≥h
设定
,
70.其中,hn=l
n1-l
n2
;
71.l
n1
表示遮掩车辆最左边的点与最右边的点的距离;
72.l
n2
表示遮掩车辆最上边的点与最下边的点的距离;
73.n表示表示帧数;
74.h
设定
表示第二设定值。
75.若前方存在坑洼,则将坑洼位置传递至自动驾驶控制器,自动驾驶控制器规划规避坑洼的路线。
76.规划规避坑洼的路线a:变换到右车道的方式规避坑洼;或者b:变换到左车道的方式规避坑洼;或者c:通过减速的方式直接通过坑洼。上述方法的优先级依次为(降序排列)
a、b、c。
77.即自动驾驶控制器首先判定能否采用所述a的方式,若所述a的方式无法采用,然后判定能否采用所述b的方式,若所述b的方式无法采用,再判定能否采用所述c的方式。
78.本实施例还提出了一种车载道路坑洼识别系统,基于上述方法,具体的:
79.包括判断模块2、处理模块3,
80.其中判断模块2配置为接收摄像头1拍摄的前方道路的信息,判断前方道路是否存在遮掩车辆;
81.处理模块3配置为若前方道路不存在遮掩车辆,则基于前方道路图像信息,判断前方道路是否存在坑洼;若前方道路存在遮掩车辆,则基于遮掩车辆的抖动幅度,判断前方道路是否存在坑洼。
82.当处理模块3识别到前方道路存在坑洼时,则处理模块3将坑洼的位置发送至自动驾驶控制器4,然后自动驾驶控制器4规划规避坑洼的路线,明确规避措施后开始自动变道,下发指令到执行机构5。
83.本实施例还提出了一种汽车,配置有上述车载道路坑洼识别系统。
84.以上实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。