一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种车辆可通行区域检测方法、系统和存储介质与流程

2022-11-13 12:11:25 来源:中国专利 TAG:


1.本发明涉及智能驾驶可通行区域检测领域,尤其涉及一种车辆可通行区域检测方法、系统和存储介质。


背景技术:

2.智能驾驶中,需要检测车辆可通行区域。车辆可通行区域,是车辆可到达而不会被障碍物阻挡的区域。
3.目前,常使用毫米波雷达检测车辆可通行区域。检测方法一般有两类:基于点云聚类的方法和基于占据栅格的方法。所述基于点云聚类的方法,1)毫米波雷达获取点云数据;2)将所述点云数据聚类,形成一个或多个簇;3)将所述簇映射到以自车为中心的空间区域,得到障碍物分布地图,进而生成车辆的可通行区域。所述基于占据栅格的方法,栅格地图对应自车行驶方向的空间,所述栅格地图具有固定分辨率和尺寸,用概率表示每个栅格的free或occupied状态;1)毫米波雷达获取点云数据,2)将若干帧所述点云数据按坐标投影到所述栅格地图上,根据概率阈值确认每个栅格的free或occupied状态;3)基于所有所述free状态的所述栅格,生成车辆的可通行区域。
4.所述基于点云聚类的方法,只针对当前帧的点云数据,计算速度快。所述基于占据栅格的方法,结合了历史帧的点云数据,检测精度高,但计算复杂,消耗的内存大、计算时间长;并且,随着地图分辨率的提高或尺寸的增大,计算消耗呈指数级增加。
5.因此,本领域的技术人员致力于开发的基一种车辆可通行区域检测方法、系统和存储介质,能够结合两种方法的优势,检测精度高,计算消耗内存少,检测速度快。


技术实现要素:

6.鉴于现有技术的上述缺陷,本发明提供了一种车辆可通行区域检测方法、系统和存储介质,能够结合点云聚类和占据栅格两种方法的优势,检测精度高,计算消耗内存小,检测速度快。
7.具体的,本发明的技术方案如下:
8.一方面,本发明提供了一种车辆可通行区域检测方法,包括如下步骤:
9.步骤1、基于自车姿态更新坐标系,毫米波雷达获取当前帧的初始点云;
10.步骤2、对初始点云滤波,获得第二点云;
11.步骤3、基于前一帧第二点云的第二簇,对当前帧的第二点云初次聚类,得到当前帧的第一簇,并计算当前帧的第一簇的生命周期值;基于当前帧的第一簇的生命周期值,更新当前帧的第一簇,得到当前帧的第二簇;
12.步骤4、将当前帧的第二簇投影到栅格地图上,求取当前帧的第二簇的边界;
13.步骤5、基于边界的计算结果,确定车辆可通行区域。
14.进一步地,步骤2的滤波,包括清除动点设定范围内的静点;其中,动点设置为相对地面运动的目标的反射点,静点设置为相对地面静止的目标的反射点。
15.进一步地,步骤2的滤波,包括清除与自车距离大于设定距离的点。
16.进一步地,步骤2的滤波,包括清除反射强度低于设定强度的点。
17.进一步地,步骤2的滤波,还包括清除超过设定存储数量的点、保留与自车距离最近的n个点;其中,n为设定存储数量。
18.进一步地,步骤4中,用双向索引连通法求边界。
19.进一步地,步骤5确定车辆可通行区域的步骤具体包括:将以自车为中心的平面按照设定步进角度划分成若干扇区;将每个簇的边界映射到对应扇区;选取每个扇区距离自车的最近点;对各最近点平滑处理,获得可通行区域。
20.进一步地,步骤5中,用b样条曲线法进行平滑处理。
21.第二方面,本发明还提供了一种车辆可通行区域检测系统,包括毫米波雷达;毫米波雷达包括依次相连的点云获取单元、点云聚类单元、边界计算单元和可通行区域计算单元;点云获取单元被设置为基于当前坐标系获取当前帧的初始点云,并对初始点云滤波处理得到第二点云,再将第二点云输送给点云聚类单元;点云聚类单元被设置为基于前一帧第二点云的第二簇,对当前帧的第二点云初次聚类,得到当前帧的第一簇,并计算当前帧的第一簇的生命周期值;基于当前帧的第一簇的生命周期值,更新当前帧的第一簇,得到当前帧的第二簇;边界计算单元被设置为基于点云聚类单元输送的数据,利用占据栅格方法计算当前帧的第二簇的边界;可通行区域计算单元被设置为基于边界计算单元输送的数据,确定车辆可通行区域。
22.第三方面,本发明还提供了一种存储介质,存储介质存储有指令,所述指令被一个或者多个处理器执行,以实现前述的车辆可通行区域检测方法的步骤。
23.与现有技术相比,本发明将点云聚类与占据栅格的方法结合,在点云聚类的过程中引入前一帧的生命周期值,更新聚类后的簇,准确性高;用占据栅格的方法计算当前帧的簇的边界,降低了计算量。
附图说明
24.下面将以明确易懂的方式,结合附图说明优选实施方式,对本发明的上述特性、技术特征、优点及其实现方式予以进一步说明。
25.图1是本发明的一个实施例的车辆可通行区域检测方法流程图;
26.图2是本发明的一个实施例的前一帧和当前帧的自车与障碍物(人)相对位置示意图;
27.图3是本发明的一个实施例的平滑处理前后的车辆可通行区域示意图。
具体实施方式
28.以下参考说明书附图介绍本发明的多个优选实施例,使其技术内容更加清楚和便于理解。本发明可以通过许多不同形式的实施例来得以体现,本发明的保护范围并非仅限于文中提到的实施例。
29.本技术中,点云指若干点的集合。每个点包含的属性包括但不限于反射点的空间坐标、色彩(r/g/b)、强度和类别属性的一个或多个。点云可以通过各类雷达扫描或多目视觉计算获得。
30.实施例一
31.图1所示是本发明的车辆可通行区域检测方法的流程图,所述方法包括以下步骤:
32.步骤1、基于自车姿态更新坐标系,毫米波雷达获取当前帧的初始点云;
33.步骤2、对初始点云滤波,获得第二点云;
34.步骤3、基于前一帧第二点云的第二簇,对当前帧的第二点云初次聚类,得到当前帧的第一簇,并计算当前帧的第一簇的生命周期值;基于当前帧的第一簇的生命周期值,更新当前帧的第一簇,得到当前帧的第二簇;
35.步骤4、将当前帧的第二簇投影到栅格地图上,求取当前帧的第二簇的边界;
36.步骤5、基于步骤4的边界的计算结果,确定车辆可通行区域。
37.因为自车在行驶过程中姿态不断变化,所以需要基于当前坐标系计算点云信息。以图2所示为例说明,图2左侧为前一帧的自车与障碍物(人)相对位置示意图,右侧为当前帧的自车与障碍物(人)示意图。当前帧与前一帧相比,障碍物(人)姿态和位置没有变化,但自车向前行驶了一段距离,且行驶方向偏转了θ角。可见,不同时刻下同一障碍物与毫米波雷达相对位置发生了变化,所以获得的点云信息不同。因此,毫米波雷达必须基于当前坐标系计算初始点云信息。
38.考虑到行驶环境周边存在大量噪点,捕获的初始点云必须进行滤波处理。
39.在一些实施方法中,步骤2的滤波,包括但不限于1)清除动点设定范围内的静点;其中,动点设置为相对地面运动的目标的反射点,静点设置为相对地面静止的目标的反射点;2)清除与自车距离大于设定距离的点;3)清除反射强度低于设定强度的点。
40.考虑到毫米波雷达存储空间有限,捕获的初始点云需要限制存储的点的个数。
41.在一些实施方法中,捕获的初始点云清除超过设定存储数量的点、保留与自车距离最近的n个点;其中,n为设定存储数量。
42.步骤3将当前帧的第二点云聚类为簇。点云聚类是按照某种特定的标准把一个数据集分割成不同的簇,使得同一个簇内的数据尽可能相似,不在同一个簇的数据差异尽可能大。聚类的依据包括但不限于距离,法向量,密度,高程和强度。
43.本实施例以dbscan(density-based spatial clustering of applications with noise,具有噪声的基于密度的聚类方法)为例进行聚类。dbscan算法能够在点云数据中发现任意形状的簇,还可以找出不属于任何簇的噪点。具体地,dbscan聚类方法包括以下步骤:
44.步骤s1、设置聚类的半径r,设置半径r内包含的最少样本量minpts;
45.步骤s2、在第二点云中,记录每个点在半径r内的临近点个数;若临近点个数大于等于最少样本量minpts,该点设置为核心点;
46.步骤s3、以核心点为基础,聚类成簇;使得:簇间,任意核心点之间的距离均大于半径r;簇内,包括核心点及其半径r覆盖范围内的其他点;若簇内的某一核心点具有一个或多个邻接的核心点,所述某一核心点与一个或多个邻接的核心点的距离,至少有一组的距离小于等于半径r;
47.步骤s4、重复步骤s3,至第二点云中所有的点聚类结束。
48.在一些实施方式中,步骤s3具体包括如下步骤:
49.随机选择一个核心点p,将核心点p及其在半径r内覆盖的点聚类一个簇c;遍历核
心点p点在半径r内的所有临近点,若有核心点q,将核心点q在半径r内覆盖的新点聚类入簇c;以此类推,直到簇c不再增加新核心点,聚类完成。
50.传统点云聚类的方法只处理当前帧,计算速度快。传统占据栅格的方法一方面能够基于历史帧信息,一方面基于概率计算,二者结合计算障碍物边界,准确性高。但占据栅格的方法计算量大,且随着栅格地图的分辨率和尺寸增大,计算量呈指数级上升。基于此,本实施例中,在点云聚类中基于历史帧信息更新聚类的簇,在占据栅格方法中计算更新后的当前帧的簇的边界。
51.由于自车姿态的变化,不同帧的同一个簇的特征可能完全不同。因此,必须在历史帧与当前帧之间建立联系,才能基于历史帧信息更新当前帧的聚类结果。
52.在一些实施方法中,步骤3具体包括以下步骤:
53.步骤3.1、在当前帧的第二点云中,记录每个点在给定范围内的点的数量;若该数量大于等于第一阈值,该点设置为核心点;
54.步骤3.2、以前一帧的第二点云的第二簇为基础,对当前帧的第二点云初次聚类,得到当前帧的第一簇,并计算当前帧的第一簇的生命周期值;
55.所述生命周期值包括连续丢失值;若当前帧的第一簇中,包含当前帧的一个或多个核心点,连续丢失值置零;否则,连续丢失值加1;
56.步骤3.3、若当前帧的第一簇的连续丢失值大于等于连续丢失定值,删除该簇;
57.步骤3.4、对当前帧的剩余第一簇,重复步骤3.2至3.4。
58.设置核心点,一是使不同帧的点云具有可以分割或聚集的联系,从而使得当前帧的簇可以基于历史帧的信息更新点云聚类结果;二是核心点能够更集中地体现簇的特征。
59.在另一些实施方法中,也可以选择不设置核心点。即,取消设置步骤3.1,且步骤3.2中包含对象判别中,直接以是否新增当前帧第二点云的点作为判别标准。
60.连续丢失值小于连续丢失定值的积累过程,减缓了不同帧下同一个簇的“消失”速度,有利于捕捉不规则障碍物的真实边界,更接近真实使用场景,提高了可通行区域检测的安全边际。例如,随着自车行驶的姿态不同,连续间断分布的低反射强度障碍物可能a时刻被识别为障碍物,a 1时刻被识别为可通行区域,a 2时刻又被识别为障碍物。通过生命周期管理,a时刻识别的障碍物能够“延续”一帧,即a 1时刻依然会被认为障碍物。通过这种设置,该柱状障碍物,最终可以识别为一个物体,而非若干离散的长条物体。
61.减缓同一个簇的“消失”速度,也有利于多个毫米波雷达进行协作。为了提高自动驾驶的检测准确度,单辆智能车辆会配置多个毫米波雷达。由于安装位置不同,不同毫米波雷达对同一障碍物生成的点云数据不同。由于不同毫米波雷达数据交互或汇总需要时间,所以协同工作需要较高的同步性。设置连续丢失值和连续丢失定值,相当于将障碍物点云“缓存”若干帧,有利于协作的实时性数据交互配合。
62.此外,连续丢失值一直增加,直至达到连续丢失定值,说明采集到的点云对应于虚假障碍物,应该删除所述虚假障碍物对应的第一簇。
63.在另一些实施方式中,生命周期值还可以包括连续观测值;使得:若当前帧的第一簇中,包含当前帧的一个或多个核心点,连续观测值加1;若连续观测值大于等于连续观测定值,保留该簇若干帧。
64.连续观测值一直增加,直至达到连续观测定值,说明采集到的点云对应于真实障
碍物,应该保留所述真实障碍物对应的第一簇。
65.这种设置,有利于区分临时性遮挡和实际障碍物。具体地说,连续若干帧才确认某簇为真,这样就可以筛除临时性遮挡,如行车途中的飞鸟或漂浮物。
66.在另一些实施方式中,根据实际需求,连续丢失值与连续观测值可以搭配使用。例如,设置连续观测值和连续观测定值,同时设置连续丢失值和连续丢失定值;且连续观测值优先级高于连续丢失值。此时,被保留了若干帧的第二簇,不会因为连续丢失值达到连续丢失定值而被删除。
67.还应注意,本实施例的历史帧采用的是前一帧。实际应用时中并无此限制,可以根据需要采用前若干帧。
68.还应注意,初始化时,由于没有前一帧点云,前一帧的生命周期值设置为零,且前一帧的第二簇为空。
69.步骤4为基于占据栅格的方法计算当前帧的第二簇的边界。
70.在一些实施方法中,通过每次只计算一个簇,一方面可以使用小尺寸的栅格地图,另一方面由于计算量少可以降低对计算模块的性能要求,进而降低了车载雷达处理器的购置成本。此外,考虑到每个簇对应障碍物的形状差异,可以基于每个簇的尺寸,动态调整栅格地图的尺寸和分辨率。
71.在一些实施方法中,栅格地图的尺寸和分辨率按照下式计算:
[0072][0073]
其中,gridres为栅格地图分辨率,gridnum为分辨率调整常数,boxsizex为簇在自车前进方向的尺寸;boxsizey为簇在与自车前进方向垂直方向的尺寸。boxsizex和boxsizey根据簇的大小计算;在一些实施方法中,根据簇中点云的x方向和y方向的坐标值计算。
[0074]
对于每个栅格包含多个点的情况,在一些实施方法中,可以进行降采样。在降采样过程中,选择栅格中最能表征被占据栅格的概率的点,在不影响栅格状态判断的同时,还降低了计算量。
[0075]
本实施例中,步骤4具体包括以下步骤:
[0076]
步骤4.1、基于当前帧的第二簇计算栅格地图的尺寸和分辨率;
[0077]
步骤4.2、将当前帧的第二簇投影到栅格地图上,统计栅格的特征;所述特征,包括每个栅格中的点数量,以及被占据的栅格的坐标信息;
[0078]
步骤4.3、计算簇的边界;
[0079]
步骤4.4、重复步骤4.1至步骤4.3,至当前帧的所有第二簇的边界计算完毕。
[0080]
步骤4.3可以用多种方法计算簇的边界。在一些实施方法中,使用双向索引连通法计算簇的边界,原理简单,准确性高。
[0081]
本实施例采用依次计算各簇的方式,降低对计算模块的性能要求。在实际使用场景中,步骤4也可以并行计算当前帧的第二簇的边界。并行处理下,计算簇的边界速度更快,有利于多雷达协同;或使用并行计算芯片,如基于arm的多核处理器,基于x86或fpga的处理器。
[0082]
步骤4求出的是障碍物的边界。步骤5基于障碍物边界的计算结果,确定车辆可通
行区域。
[0083]
在一些实施方法中,步骤5具体包括以下步骤:
[0084]
步骤5.1、将以自车为中心的平面按照设定步进角度划分成若干扇区;
[0085]
步骤5.2、将每个簇的边界映射到对应扇区;选取每个扇区距离自车的最近点;
[0086]
步骤5.3、对各最近点平滑处理,获得可通行区域。
[0087]
各簇在扇区的距离自车的最近点分布可能较为离散,如图3中左侧所示。对于实际驾驶而言,小于一定尺寸的可通行空间没有通行意义。所以,需要对各最近点平滑处理。
[0088]
在一些实施方法中,用b样条曲线法进行平滑处理,原理简单,准确性高。
[0089]
图3右侧所示为平滑处理后的可通行区域示意图。由图3可以看出,经过平滑处理之后,可以获得能够实际通行的可通行区域边界。
[0090]
与现有技术相比,本实施例将点云聚类与占据栅格的方法结合,在点云聚类的过程中引入前一帧的生命周期值,更新聚类后的簇,准确性高;用占据栅格的方法计算当前帧的簇的边界,降低了计算量。
[0091]
实施例二
[0092]
本发明还提供了一种车辆可通行区域检测系统。
[0093]
所述检测系统包括毫米波雷达;毫米波雷达包括依次相连的点云获取单元、点云聚类单元、边界计算单元和可通行区域计算单元;点云获取单元被设置为基于当前坐标系获取当前帧的初始点云,并对初始点云滤波处理得到第二点云,再将第二点云输送给点云聚类单元;点云聚类单元被基于前一帧第二点云的第二簇,对当前帧的第二点云初次聚类,得到当前帧的第一簇,并计算当前帧的第一簇的生命周期值;基于当前帧的第一簇的生命周期值,更新当前帧的第一簇,得到当前帧的第二簇;边界计算单元被设置为基于点云聚类单元输送的数据,利用占据栅格方法计算簇的边界;可通行区域计算单元被设置为基于边界计算单元输送的数据,确定车辆可通行区域。
[0094]
在一些实施方法中,毫米波雷达可以选择4d毫米波雷达,可以直接获取障碍物点云的距离、方位、速度和高度信息。
[0095]
实施例三
[0096]
本发明还提供了一种存储介质,存储介质存储有指令,所述指令被一个或者多个处理器执行,以实现实施例一的车辆可通行区域检测方法的步骤。
[0097]
本发明的系统实施例与本发明的方法实施例对应,本发明方法实施例的技术细节同样适用于本发明的系统实施例,为减少重复,不再赘述。
[0098]
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献