车辆可行驶区域的区域边缘检测方法、装置和存储介质与流程

文档序号:29706958发布日期:2022-04-16 15:59阅读:180来源:国知局
车辆可行驶区域的区域边缘检测方法、装置和存储介质与流程

1.本发明涉及智能汽车环境感知领域,具体而言,涉及一种车辆可行驶区域的区域边缘检测方法、装置和存储介质。


背景技术:

2.随着科技的快速发展,辅助驾驶及智能驾驶已经成为现如今炙手可热的新兴科技产业。其中车道保持、可行驶区域检测是其中的重要组成部分:车道保持是指在车辆行驶时借助摄像头识别行驶车道的标识线,如果车辆接近识别到的标记线并可能脱离行驶车道,就会提醒提请驾驶员采取安全措施;可行驶区域检测一般通过处理激光雷达点云数据,检测道路的各种边界(如路沿,灌木丛,栅栏等),以达到获取汽车可行驶区域的目的。车道线及道路边界其趋势永远都是和道路趋势保持一致的,一般都是光滑且连续的。但是不管是雷达这种主动传感器,还是相机这种被动式传感器都会受到环境的影响,导致检测不准确。比如有车辆经过时,车道线及道路边界都会被遮挡,检测结果就会产生中断;再比如光照条件不均匀时,车道线检测结果也容易不准确,断断续续甚至产生误检。
3.目前针对汽车传感器受到环境的影响导致检测不准确的问题,相关技术大都基于车辆的运动状态建立模型,然后利用卡尔曼滤波、扩展卡尔曼滤波或者粒子滤波等方法根据上一帧检测结果预测当前帧的检测,更新当前帧检测结果。例如,根据卡尔曼滤波进行曲线或者目标点跟踪,首先根据车辆的匀加速理想运动模型,将边界曲线系数或者所选目标点的(x,y,z)坐标作为观测值,然后建立状态方程及观测方程,计算卡尔曼增益,最后更新边界状态。其中,建立状态方程的过程需要根据车辆运动模型找到同一观测值在前后帧中的变化关系,需要复杂的模型推算。而计算卡尔曼增益时需要根据测试结果不断调整过程噪声q、观测噪声r,以使找到预测结果与检测结果之间的最优状态。从上述过程来看现有的优化方法不管是从前期模型建立,还是后期调参都是比较复杂的。
4.由上可知,现有技术存在以下问题:(1)现有技术所建立的车辆运动模型大都为理想的匀加速运动模型,但是在实际场景中,车辆的运动很难保证一定是匀加速的。(2)现有技术利用上一帧检测结果预测当前帧检测结果存在不准确的问题。(3)现有滤波算法需要除检测结果以外的信息来完成检测结果的优化,如卡尔曼滤波需要车辆的行驶速度、加速度和行驶方向等信息来建立状态转移矩阵和驱动矩阵。(4)现有算法大都需要左右边界之间的某种固定关系作为约束。(5)现有滤波算法其需要调试的参数为噪声项,这种参数调试较为困难,而且没有太多的物理依据或者数据依据。
5.针对现有技术中关于对车辆行驶区域内的区域边缘进行检测的过程中,利用上一帧检测结果预测当前帧检测结果不准确的问题,目前尚未提出有效的解决方案。


技术实现要素:

6.本发明实施例提供了一种车辆可行驶区域的区域边缘检测方法、装置和存储介质,以至少解决对车辆行驶区域内的区域边缘进行检测的过程中,利用上一帧检测结果预
测当前帧检测结果不准确的技术问题。
7.根据本发明实施例的一个方面,提供了一种车辆可行驶区域的区域边缘检测方法,包括:车辆在行驶区域内行驶的过程中,获取不同时间点上该行驶区域内的帧图像,得到帧图像集合,其中,帧图像集合至少包括:当前时刻采集到的第一帧图像和历史时刻采集到的至少一张第二帧图像;分别检测第一帧图像和第二帧图像中的边缘对象,识别出第一帧图像中的第一边缘对象集合以及第二帧图像中的第二边缘对象集合;将第一边缘对象集合以及第二边缘对象集合中的边缘对象进行依次匹配,其中,两个边缘对象集合中的边缘对象均用于表征位于行驶区域内,且具有区域边缘属性的物体;基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘,其中,目标边缘用于表征车辆行驶在当前时刻时,符合当前道路边缘走势的且位于行驶区域内的区域边缘。
8.可选地,在检测帧图像集合中的边缘对象的过程中,累加第一帧图像中检测到的边缘对象,统计得到第一帧图像中检测到的边缘对象的总数。
9.可选地,在第一边缘对象集合不为空,第二边缘对象集合为空的情况下,将第一帧图像中检测出的边缘对象进行累加,并将检测得到的边缘对象保存至第二帧图像的边缘对象集合中。
10.可选地,在第二边缘对象集合不为空的情况下,将第一边缘对象集合以及第二边缘对象集合中的边缘对象进行依次匹配,包括:获取两个边缘对象集合中边缘对象的系数距离矩阵,其中,系数距离矩阵记录了第一边缘对象集合中的第i个边缘对象与第二边缘对象集合中的第j个边缘对象的曲线系数之间的距离;基于系数距离矩阵,确定两个边缘对象集合中匹配成功的边缘对象,其中,匹配成功的边缘对象表征不同帧图像中显示的同一个区域边缘。
11.可选地,如果第i个边缘对象与第j个边缘对象的曲线系数之间的距离小于等于预设阀值,则两个边缘对象集合中存在匹配成功的边缘对象,其中,第i个边缘对象与第j个边缘对象为一一匹配的边缘对象。
12.可选地,基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘,包括:获取第i个边缘对象与第j个边缘对象的曲线系数差值;判断曲线系数差值是否处于预设范围值内;如果曲线系数差值处于预设范围值内,确定第一帧图像中检测到的第i个边缘对象为目标边缘;否则,将至少重新检测与第一帧图像相邻的前一帧图像的边缘对象,并基于重新检测得到的结果更新前一帧图像的曲线系数。
13.可选地,如果第一边缘对象集合中存在匹配失败的边缘对象,该边缘对象为新检测到的边缘对象,和/或,如果第二边缘对象集合中存在匹配失败的边缘对象,该边缘对象为消失的边缘对象。
14.可选地,在基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘之后,方法还包括:统计第二边缘对象集合中任意一个边缘对象匹配失败的次数;如果该匹配失败的次数大于等于设定值,则将该边缘对象移出第二边缘对象集合。
15.根据本发明实施例的另一方面,还提供了一种车辆可行驶区域的区域边缘检测装置,包括:获取模块,用于车辆在行驶区域内行驶的过程中,获取不同时间点上该行驶区域内的帧图像,得到帧图像集合,其中,帧图像集合至少包括:当前时刻采集到的第一帧图像和历史时刻采集到的至少一张第二帧图像;检测模块,用于分别检测第一帧图像和第二帧
图像中的边缘对象,识别出第一帧图像中的第一边缘对象集合以及第二帧图像中的第二边缘对象集合;匹配模块,用于将第一边缘对象集合以及第二边缘对象集合中的边缘对象进行依次匹配,其中,两个边缘对象集合中的边缘对象均用于表征位于行驶区域内,且具有区域边缘属性的物体;分析模块,用于基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘,其中,目标边缘用于表征车辆行驶在当前时刻时,符合当前道路边缘走势的且位于行驶区域内的区域边缘。
16.可选地,车辆可行驶区域的区域边缘检测装置还包括:第一统计模块,用于在检测帧图像集合中的边缘对象的过程中,累加第一帧图像中检测到的边缘对象,统计得到第一帧图像中检测到的边缘对象的总数。
17.可选地,车辆可行驶区域的区域边缘检测装置还包括:累加模块,用于在第一边缘对象集合不为空,第二边缘对象集合为空的情况下,将第一帧图像中检测出的边缘对象进行累加;存储模块,用于将检测得到的边缘对象保存至第二帧图像的边缘对象集合中。
18.可选地,在第二边缘对象集合不为空的情况下,匹配模块包括:第一获取单元,用于获取两个边缘对象集合中边缘对象的系数距离矩阵,其中,系数距离矩阵记录了第一边缘对象集合中的第i个边缘对象与第二边缘对象集合中的第j个边缘对象的曲线系数之间的距离;处理单元,用于基于系数距离矩阵,确定两个边缘对象集合中匹配成功的边缘对象,其中,匹配成功的边缘对象表征不同帧图像中显示的同一个区域边缘。
19.可选地,匹配模块还包括:分析单元,用于如果第i个边缘对象与第j个边缘对象的曲线系数之间的距离小于等于预设阀值,则两个边缘对象集合中存在匹配成功的边缘对象,其中,第i个边缘对象与第j个边缘对象为一一匹配的边缘对象。
20.可选地,匹配模块还包括:第二获取单元,用于获取第i个边缘对象与第j个边缘对象的曲线系数差值;判断单元,用于判断曲线系数差值是否处于预设范围值内;确定单元,用于如果曲线系数差值处于预设范围值内,确定第一帧图像中检测到的第i个边缘对象为目标边缘;重新检测单元,用于如果曲线系数差值未处于预设范围值内,将至少重新检测与第一帧图像相邻的前一帧图像的边缘对象,并基于重新检测得到的结果更新前一帧图像的曲线系数。
21.可选地,车辆可行驶区域的区域边缘检测装置还包括:第一确定模块,用于如果第一边缘对象集合中存在匹配失败的边缘对象,该边缘对象为新检测到的边缘对象;第二确定模块,用于如果第二边缘对象集合中存在匹配失败的边缘对象,该边缘对象为消失的边缘对象。
22.可选地,车辆可行驶区域的区域边缘检测装置还包括:第二统计模块,用于统计第二边缘对象集合中任意一个边缘对象匹配失败的次数;移除模块,用于如果该匹配失败的次数大于等于设定值,则将该边缘对象移出第二边缘对象集合。
23.根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行上述实施例中的车辆可行驶区域的区域边缘检测方法。
24.根据本发明实施例的另一方面,还提供了一种处理器,该处理器用于运行程序,其中,程序运行时执行上述实施例中的车辆可行驶区域的区域边缘检测方法。
25.在本发明实施例中,车辆在行驶区域内行驶的过程中,获取不同时间点上该行驶
区域内的帧图像,得到帧图像集合,其中,帧图像集合至少包括:当前时刻采集到的第一帧图像和历史时刻采集到的至少一张第二帧图像;分别检测第一帧图像和第二帧图像中的边缘对象,识别出第一帧图像中的第一边缘对象集合以及第二帧图像中的第二边缘对象集合;将第一边缘对象集合以及第二边缘对象集合中的边缘对象进行依次匹配,其中,两个边缘对象集合中的边缘对象均用于表征位于行驶区域内,且具有区域边缘属性的物体;基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘,其中,目标边缘用于表征车辆行驶在当前时刻时,符合当前道路边缘走势的且位于行驶区域内的区域边缘。容易注意到的是,通过上述优化可行驶区域边缘检测的滤波方法,达到了过滤并填补误检的目的,从而实现了修正检测结果异常值的技术效果,进而解决了对车辆行驶区域内的区域边缘进行检测的过程中,利用上一帧检测结果预测当前帧检测结果不准确的技术问题。
附图说明
26.此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
27.图1是根据本发明实施例的一种车辆可行驶区域的区域边缘检测方法的流程图;
28.图2是根据本发明实施例的一种可选的车辆可行驶区域的区域边缘检测方法的流程图;
29.图3是根据本发明实施例的一种可选的公交站台附近的车道线及路沿状态的示意图;
30.图4是根据本发明实施例的一种车辆可行驶区域的区域边缘检测装置的示意图。
具体实施方式
31.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
32.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
33.实施例1
34.根据本发明实施例,提供了一种车辆可行驶区域的区域边缘检测方法,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
35.图1是根据本发明实施例的一种车辆可行驶区域的区域边缘检测方法,如图1所示,该方法包括如下步骤:
36.步骤s102,车辆在行驶区域内行驶的过程中,获取不同时间点上该行驶区域内的帧图像,得到帧图像集合,其中,帧图像集合至少包括:当前时刻采集到的第一帧图像和历史时刻采集到的至少一张第二帧图像。
37.上述步骤s102中的帧图像可以通过视频采集设备获得,例如通过车辆上的前视摄像头获得,但不限于此。
38.步骤s104,分别检测第一帧图像和第二帧图像中的边缘对象,识别出第一帧图像中的第一边缘对象集合以及第二帧图像中的第二边缘对象集合。
39.上述步骤s104中的边缘对象可以是车道线、路沿、围栏、绿化带、水马、临时施工挡板,但不限于此。
40.在上述步骤s104中,检测第一帧图像的边缘对象,可以包括边缘对象的曲线系数、出现次数以及消失次数,但不限于此,此处检测出的数据存储起来可以构成第一边缘对象集合,即当前帧检测目标集合。检测第二帧图像的边缘对象,可以包括边缘对象的曲线系数、出现次数以及小时次数,但不限于此,此处检测出的数据存储起来可以构成第二边缘对象集合,即过往帧检测目标集合,也即在当前帧之前所有检测到的边缘对象集合。其中,检测到的边缘对象的数量可为一个或多个。
41.需要注意的是,在边缘检测的过程中为了平滑数据、有效的去除噪声,一般都会采用曲线模型对边缘进行拟合。比较常用的曲线模型为多项式模型,考虑到实际应用情况,在如图3所示的公交站台等区域,采用四次多项式曲线才能更好的拟合边缘走势,因此本发明实施例采用四次多项式作为示例。
42.此处需要说明的是,该四次多项式模型可以为:
43.y=c0+c1x+c2x2+c3x3+c4x444.其中,c0,c1,c2,c3,c4为曲线系数,x为边缘对象的横坐标,y为边缘对象的纵坐标。
45.步骤s106,将第一边缘对象集合以及第二边缘对象集合中的边缘对象进行依次匹配,其中,两个边缘对象集合中的边缘对象均用于表征位于行驶区域内,且具有区域边缘属性的物体。
46.上述步骤s106中的区域边缘属性的物体表示区域边缘,可以是车道线、路沿、围栏、绿化带、水马、临时施工挡板,但不限于此。
47.在上述步骤s106中,可以根据第一边缘对象集合和第二边缘对象集合中存储的曲线系数将两个集合中的边缘对象一一匹配,包括:计算两个集合中边缘对象的系数距离矩阵,基于系数距离矩阵,确定两个边缘对象集合中匹配成功的边缘对象,但不限于此。
48.步骤s108,基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘,其中,目标边缘用于表征车辆行驶在当前时刻时,符合当前道路边缘走势的且位于行驶区域内的区域边缘。
49.在上述步骤s108中,对于匹配上的边缘对象,可以获取其在第一边缘对象集合和第二边缘对象集合中存储的曲线系数差,根据系数差与设定阈值的比较结果,确定其是否为当前车辆行驶道路上的边缘对象。
50.在本发明实施例中,车辆在行驶区域内行驶的过程中,获取不同时间点上该行驶
区域内的帧图像,得到帧图像集合,其中,帧图像集合至少包括:当前时刻采集到的第一帧图像和历史时刻采集到的至少一张第二帧图像;分别检测第一帧图像和第二帧图像中的边缘对象,识别出第一帧图像中的第一边缘对象集合以及第二帧图像中的第二边缘对象集合;将第一边缘对象集合以及第二边缘对象集合中的边缘对象进行依次匹配,其中,两个边缘对象集合中的边缘对象均用于表征位于行驶区域内,且具有区域边缘属性的物体;基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘,其中,目标边缘用于表征车辆行驶在当前时刻时,符合当前道路边缘走势的且位于行驶区域内的区域边缘。容易注意到的是,通过上述优化可行驶区域边缘检测的滤波方法,达到了过滤并填补误检的目的,从而实现了修正检测结果异常值的技术效果,进而解决了对车辆行驶区域内的区域边缘进行检测的过程中,利用上一帧检测结果预测当前帧检测结果不准确的技术问题。
51.可选地,在检测帧图像集合中的边缘对象的过程中,累加第一帧图像中检测到的边缘对象,统计得到第一帧图像中检测到的边缘对象的总数。
52.上述步骤中第一帧图像中检测到的边缘对象的总数可以通过计数器获取,每检测到帧图像中的边缘对象,将计数器的数值加1并保存。
53.可选地,在第一边缘对象集合不为空,第二边缘对象集合为空的情况下,将第一帧图像中检测出的边缘对象进行累加,并将检测得到的边缘对象保存至第二帧图像的边缘对象集合中。
54.在一种可选的实施例中,若第二边缘对象集合为空,说明当前检测到的帧图像为第一帧,那么可以将当前帧图像检测结果中的边缘对象出现次数增加1,并且将当前帧图像检测结果中的边缘对象存放至第二边缘对象集合中。
55.可选地,在第二边缘对象集合不为空的情况下,将第一边缘对象集合以及第二边缘对象集合中的边缘对象进行依次匹配,包括:获取两个边缘对象集合中边缘对象的系数距离矩阵,其中,系数距离矩阵记录了第一边缘对象集合中的第i个边缘对象与第二边缘对象集合中的第j个边缘对象的曲线系数之间的距离;基于系数距离矩阵,确定两个边缘对象集合中匹配成功的边缘对象,其中,匹配成功的边缘对象表征不同帧图像中显示的同一个区域边缘。
56.在一种可选的实施例中,在第二边缘对象集合不为空的情况下,根据第一边缘对象集合和第二边缘对象集合中存储的曲线系数将两个集合中的边缘对象一一匹配,包括:
57.计算两个集合中边缘对象的系数距离矩阵dis:
[0058][0059]
其中,dis(i,j)表示第二边缘对象集合中第i个边缘对象与第一边缘对象集合中第j个边缘对象的曲线系数之间的距离,c
0i
,c
1i
,c
2i
,c
3i
,c
4i
为第二边缘对象集合中第i个边缘对象的曲线系数,c
0j
,c
1j
,c
2j
,c
3j
,c
4j
为第一边缘对象集合中第j个边缘对象的曲线系数。
[0060]
基于系数距离矩阵,确定两个边缘对象集合中匹配成功的边缘对象。
[0061]
可选地,如果第i个边缘对象与第j个边缘对象的曲线系数之间的距离小于等于预设阀值,则两个边缘对象集合中存在匹配成功的边缘对象,其中,第i个边缘对象与第j个边缘对象为一一匹配的边缘对象。
[0062]
上述步骤中的预设阈值可以根据用户需要设定。由于相邻帧图像之间曲线差异一
般很小,所以阈值可以设定在0.5左右,但不限于此。
[0063]
在一种可选的实施例中,当dis(i,j)小于设定的阈值时,两个边缘对象匹配,即是现实场景中的同一个边界,如车道线、路沿、围栏等。需要注意的是,此时有可能出现同一物体与多个物体匹配上的情况,用户可以采用km算法或其他等效算法解决此问题,在此不做赘述。
[0064]
可选地,基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘,包括:获取第i个边缘对象与第j个边缘对象的曲线系数差值;判断曲线系数差值是否处于预设范围值内;如果曲线系数差值处于预设范围值内,确定第一帧图像中检测到的第i个边缘对象为目标边缘;否则,将至少重新检测与第一帧图像相邻的前一帧图像的边缘对象,并基于重新检测得到的结果更新前一帧图像的曲线系数。
[0065]
上述步骤中的预设范围值可通过多帧数据测试同一曲线相邻帧的系数差值分布统计获得。
[0066]
在一种可选的实施例中,对于匹配上的边缘对象,获取其在当前帧检测目标集合和过往帧检测目标集合中的曲线系数,求出两者的差值,如果系数差的绝对值在设定的阈值范围内,那么说明当前帧的检测结果没有问题,与上一帧是光滑连续的,用当前帧的曲线系数更新过往帧的曲线系数,并将边缘对象出现次数加1。如果系数差异过大,说明当前帧检测可能有问题,此时需要比较当前帧检测结果与留存的前两帧的检测结果,如果当前帧的曲线系数与前两帧检测的曲线系数差在预设范围值内,则说明当前帧的检测结果是正确的,是上一帧更新了错误的预测值,使用当前帧的曲线系数更新过往帧的曲线系数,并更新对应的边缘对象出现次数;否则,保持之前的曲线系数不变,不做更新,也不更新边缘对象出现次数。
[0067]
可选地,如果第一边缘对象集合中存在匹配失败的边缘对象,该边缘对象为新检测到的边缘对象,和/或,如果第二边缘对象集合中存在匹配失败的边缘对象,该边缘对象为消失的边缘对象。
[0068]
在一种可选的实施例中,对于没有匹配上的边缘对象,如果边缘对象是当前帧检测到的边缘对象,则说明检测到了新的边缘,新建边缘对象,并将其出现次数设置为1,然后存入过往帧检测目标集合;如果物体是过往帧检测目标集合中检测到的边缘对象,但当前帧检测目标集合没有检测到,那么将边缘对象的消失次数加1。
[0069]
可选地,在基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘之后,方法还包括:统计第二边缘对象集合中任意一个边缘对象匹配失败的次数;如果该匹配失败的次数大于等于设定值,则将该边缘对象移出第二边缘对象集合。
[0070]
在一种可选的实施例中,从计数器读取边缘对象的消失次数,如果边缘对象消失次数大于设定阈值(如3),则将边缘对象移出过往帧检测目标集合,也即如果边缘对象消失三次以上,则认为边缘对象消失,不再显示关注该边缘对象。剩余边缘对象中出现次数大于设定阈值的即为滤波后的边缘对象,参与当前帧检测目标集合后续处理,如智能驾驶汽车的控制规划等。
[0071]
下面结合图2和图3所示,就本技术的方案应用在车辆行驶在公交站台附近的双车道的应用场景中所实现的功能进行详细描述。
[0072]
步骤s201,获得当前帧检测目标集合n。
[0073]
在上述步骤s201中,检测汽车上安装的摄像装置拍摄的当前帧图像中的边缘对象,包括边缘对象的曲线系数、出现次数以及消失次数,但不限于此,并将检测出的数据存储起来组成第一边缘对象集合,即当前帧检测目标集合。其中,边缘对象为本发明实施例中的目标,例如车道线、路沿、围栏、绿化带、水马、临时施工挡板等,但不限于此。
[0074]
例如,如图3所示,右侧行驶的汽车在检测拍摄到的当前时刻照片时,检测到照片中的车道线、路沿及公交站台。识别车道线、路沿及公交站台形状所符合曲线的曲线参数,用计数器将车道线、路沿及公交站台的出现次数加1,消失次数不做更新。此处将车道线、路沿及公交站台的曲线系数、出现次数及消失次数存储起来为当前帧检测目标集合n。
[0075]
步骤s202,检测过往帧检测目标集合m是否为空。
[0076]
若为空,执行s203;若不为空,执行s204。
[0077]
步骤s203,若过往帧检测目标集合m为空,则当前帧为第一帧,将当前帧目标n存入过往帧检测目标集合m,各目标出现次数+1。
[0078]
在步骤s203中,若此时右侧汽车刚出发,过往帧检测目标集合m中没有数据,将检测到的当前帧检测目标集合n中的数据存储到过往帧检测目标集合m中。
[0079]
步骤s204,若过往帧检测目标集合m不为空,则当前帧非第一帧,将集合m、n中的目标即边缘对象进行一对一匹配。
[0080]
在上述步骤s204中,若汽车已行驶一段时间,过往帧检测目标集合m中存放着数据,则可以根据当前帧检测目标集合n和过往帧检测目标集合m中存储的目标的曲线系数计算两个集合中目标的系数距离矩阵,通过比较系数距离与设定阈值将两个集合中的目标一一匹配。
[0081]
例如,计算当前帧检测目标集合n中车道线的曲线系数与过往帧检测目标集合m中车道线的曲线系数、路沿的曲线系数、公交站台的曲线系数的系数距离。若计算出的系数距离依次为0.2、0.6、1.2,将其与设定阈值0.5进行比较,其中系数距离0.2《0.5,则车道线已匹配上,证明其依然存在,仍是同一车道线。路沿与公交站台的判断方法同上。
[0082]
步骤s205,对于未匹配上的过往帧目标mi,将上述目标标记消失次数+1,并执行s212。
[0083]
在上述步骤s205中,当汽车驶离公交站台附近时,若未匹配上公交站台,则将公交站台的消失次数加1,并更新过往帧检测目标集合m中公交站台的消失次数。
[0084]
步骤s206,对于未匹配上的当前帧目标nj,新建目标,并将上述目标出现次数设为1,存入过往帧检测目标集合m,并执行s212。
[0085]
在上述步骤s206中,当汽车驶入公交站台时,若未匹配上公交站台,则新建边缘对象公交站台,并将公交站台的出现次数设为1,并存储到过往帧检测目标集合m中。
[0086]
步骤s207,对于匹配上的目标mi和nj,即目标mi和nj匹配成功,判断目标曲线系数差值是否满足条件1。
[0087]
上述步骤中的条件1可以是系数差的绝对值在预设范围值内,其中,预设范围值可通过多帧数据测试同一曲线相邻帧的系数差值分布统计获得。
[0088]
在上述步骤s207中,对于已匹配上的车道线,计算其在当前帧检测结果集合n中的曲线系数与过往帧检测目标集合m中的曲线系数差值,判断其系数差值是否在预设范围值内。
[0089]
若满足条件1,执行s208;若不满足条件1,执行s209。
[0090]
步骤s208,若目标曲线系数差值在预设范围值内,使用当前帧检测目标集合中nj的曲线系数更新过往帧检测目标集合mi的曲线系数,并将mi目标出现次数+1,并执行s212。
[0091]
在上述步骤s208中,若车道线系数差值在预设范围值内,用当前帧检测目标集合中车道线的曲线参数更新过往帧检测目标集合中车道线的曲线系数,并将车道线的出现次数加1,并更新过往帧检测目标集合m中车道线的出现次数。
[0092]
步骤s209,若目标曲线系数差值不在预设范围值内,判断当前帧检测目标集合中nj的曲线系数与过往帧检测目标集合中mi留存的曲线系数(前两帧检测到的检测系数)的系数差值是否满足条件1。
[0093]
在上述步骤s209中,若车道线系数差值不在预设范围值内,计算车道线在当前帧检测结果集合n中的曲线系数与过往帧检测目标集合m中的前两帧检测到的曲线系数的差值,判断其系数差值是否在预设范围值内。
[0094]
若满足条件1,执行s210;若不满足条件1,执行s211。
[0095]
步骤s210,若满足条件1,使用当前帧检测目标集合中nj的曲线系数更新过往帧检测目标集合中mi的曲线系数,并调整目标出现次数,并执行s212。
[0096]
在上述步骤s210中,若车道线系数差值在预设范围值内,说明上一帧检测失误,用当前帧检测目标集合n中车道线的曲线参数更新过往帧检测目标集合m中上一帧车道线的曲线系数,并将车道线的出现次数加1。
[0097]
步骤s211,若不满足条件1,保持之前的曲线系数不变,不做更新,也不更新目标出现次数。
[0098]
在上述步骤s210中,若车道线系数差值不在预设范围值内,说明当前帧检测失误,保持过往帧检测目标集合m中上一帧车道线的曲线系数不变,也不更新车道线的出现次数。
[0099]
步骤s212,更新过往帧检测目标集合的目标mi。
[0100]
步骤s213,判断过往帧检测目标集合m是否满足条件2,满足的目标为当前最终检测目标。
[0101]
上述步骤中s213的条件2可以是目标消失次数大于设定阈值,目标出现次数大于设定阈值。从计数器读取目标的消失次数,如果目标消失次数大于设定阈值(如3),则将目标移出过往帧检测目标集合,也即如果目标消失三次以上,则认为目标消失,不再显示关注该目标。剩余目标中目标出现次数大于设定阈值(如3)的即为滤波后的目标,参与当前帧检测目标集合后续处理,如智能驾驶汽车的控制规划等。
[0102]
在上述步骤s213中,若公交站台的消失次数为5,大于设定阈值3,则将公交站台移出过往帧检测目标集合n,也即可认为公交站台消失。若剩余的边缘对象如车道线、路沿的出现次数分别为6、7,大于设定阈值3,即车道线和路沿一直存在,继续参与后续处理。
[0103]
实施例2
[0104]
根据本发明实施例,还提供了一种车辆可行驶区域的区域边缘检测装置,该装置可以是执行上述实施例中的车辆可行驶区域的区域边缘检测方法,具体实现方案与应用场景与上述实施例相同,在此不做赘述。
[0105]
图4是根据本发明实施例的一种车辆可行驶区域的区域边缘检测装置的示意图,如图4所示,该装置包括:
[0106]
获取模块42,用于车辆在行驶区域内行驶的过程中,获取不同时间点上该行驶区域内的帧图像,得到帧图像集合,其中,帧图像集合至少包括:当前时刻采集到的第一帧图像和历史时刻采集到的至少一张第二帧图像。
[0107]
检测模块44,用于分别检测第一帧图像和第二帧图像中的边缘对象,识别出第一帧图像中的第一边缘对象集合以及第二帧图像中的第二边缘对象集合。
[0108]
匹配模块46,用于将第一边缘对象集合以及第二边缘对象集合中的边缘对象进行依次匹配,其中,两个边缘对象集合中的边缘对象均用于表征位于行驶区域内,且具有区域边缘属性的物体。
[0109]
可选地,在第二边缘对象集合不为空的情况下,匹配模块包括:第一获取单元,用于获取两个边缘对象集合中边缘对象的系数距离矩阵,其中,系数距离矩阵记录了第一边缘对象集合中的第i个边缘对象与第二边缘对象集合中的第j个边缘对象的曲线系数之间的距离;处理单元,用于基于系数距离矩阵,确定两个边缘对象集合中匹配成功的边缘对象,其中,匹配成功的边缘对象表征不同帧图像中显示的同一个区域边缘。
[0110]
可选地,匹配模块还包括:分析单元,用于如果第i个边缘对象与第j个边缘对象的曲线系数之间的距离小于等于预设阀值,则两个边缘对象集合中存在匹配成功的边缘对象,其中,第i个边缘对象与第j个边缘对象为一一匹配的边缘对象。
[0111]
可选地,匹配模块还包括:第二获取单元,用于获取第i个边缘对象与第j个边缘对象的曲线系数差值;判断单元,用于判断曲线系数差值是否处于预设范围值内;确定单元,用于如果曲线系数差值处于预设范围值内,确定第一帧图像中检测到的第i个边缘对象为目标边缘;重新检测单元,用于如果曲线系数差值未处于预设范围值内,将至少重新检测与第一帧图像相邻的前一帧图像的边缘对象,并基于重新检测得到的结果更新前一帧图像的曲线系数。
[0112]
分析模块48,用于基于匹配结果,确定第一帧图像中检测到的边缘对象是否为目标边缘,其中,目标边缘用于表征车辆行驶在当前时刻时,符合当前道路边缘走势的且位于行驶区域内的区域边缘。
[0113]
可选地,车辆可行驶区域的区域边缘检测装置还包括:第一统计模块,用于在检测帧图像集合中的边缘对象的过程中,累加第一帧图像中检测到的边缘对象,统计得到第一帧图像中检测到的边缘对象的总数。
[0114]
可选地,车辆可行驶区域的区域边缘检测装置还包括:累加模块,用于在第一边缘对象集合不为空,第二边缘对象集合为空的情况下,将第一帧图像中检测出的边缘对象进行累加;存储模块,用于将检测得到的边缘对象保存至第二帧图像的边缘对象集合中。
[0115]
可选地,车辆可行驶区域的区域边缘检测装置还包括:第一确定模块,用于如果第一边缘对象集合中存在匹配失败的边缘对象,该边缘对象为新检测到的边缘对象;第二确定模块,用于如果第二边缘对象集合中存在匹配失败的边缘对象,该边缘对象为消失的边缘对象。
[0116]
可选地,车辆可行驶区域的区域边缘检测装置还包括:第二统计模块,用于统计第二边缘对象集合中任意一个边缘对象匹配失败的次数;移除模块,用于如果该匹配失败的次数大于等于设定值,则将该边缘对象移出第二边缘集合。
[0117]
实施例3
[0118]
根据本发明实施例,还提供了一种计算机可读存储介质,计算机可读存储介质包括存储的程序,其中,在程序运行时控制计算机可读存储介质所在设备执行上述实施例中的车辆可行驶区域的区域边缘检测方法。
[0119]
实施例4
[0120]
根据本发明实施例,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述实施例中的车辆可行驶区域的区域边缘检测方法。
[0121]
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
[0122]
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
[0123]
在本发明所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0124]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0125]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0126]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0127]
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1