一种地面障碍物的确定方法、装置、电子设备及存储介质与流程

文档序号:31059928发布日期:2022-08-09 19:25阅读:82来源:国知局
一种地面障碍物的确定方法、装置、电子设备及存储介质与流程

1.本技术涉及无人驾驶技术领域,尤其是涉及一种地面障碍物的确定方法、装置、电子设备及存储介质。


背景技术:

2.智能驾驶代表着现代汽车技术与产业发展的大趋势,而环境感知则是汽车智能驾驶的关键核心技术和长期研究的热点领域;感知技术主要通过大量车无人驾驶汽车搭载雷达设备,用以精确识别周边环境以保证驾驶的安全性与可靠性。
3.目前,在识别驾驶环境中的目标点云时,由于野外环境中的不平地面以及存在树木和杂草等不规则物体的情况,导致对后续目标点云的分类以及识别带来干扰,并且由于目标点云中各个点云数据近密远疏的特点,在对远近不同的识别区域内的目标点云按照相同的规则进行聚类时,会出现目标点云重叠而导致聚类失败的问题,影响聚类的准确性;因此,如何提高地面障碍物识别的准确性,成为了亟待解决的问题。


技术实现要素:

4.有鉴于此,本技术的目的在于提供一种地面障碍物的确定方法、装置、电子设备及存储介质,能够通过在待筛选点云数据中设置多个位置点,将行驶途中路旁物体伸到地面上的树枝等悬空物进行过滤,得到不包含悬空物的目标点云数据,并确定出目标点云数据的多个子点云区域,针对不同子点云区域,采用不同的与各个子点云区域相对应的预设距离阈值对目标点云数据进行聚类,能够针对不同子点云区域进行准确地聚类,提高了地面障碍物识别的准确性。
5.本技术主要包括以下几个方面:
6.第一方面,本技术实施例提供了一种地面障碍物的确定方法,所述确定方法包括:
7.获取激光雷达扫描的三维点云数据;
8.根据预设的地面高度从所述三维点云数据中滤除地面的点云数据,得到所述三维点云数据中除地面区域之外的待筛选点云数据;
9.将所述待筛选点云数据按照预设的多个位置点进行筛选,滤除所述待筛选点云数据中的悬空障碍物后,确定出目标点云数据以及所述目标点云数据中的多个子点云区域;其中,所述子点云区域是根据预设距离对所述目标点云数据进行划分得到的;
10.针对于每个子点云区域,按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类,确定出目标障碍物。
11.进一步的,通过以下步骤得到所述三维点云数据中除地面区域之外的待筛选点云数据:
12.将所述三维点云数据投影在平面上,根据预先设置的栅格单元,建立二维栅格图片;
13.在所述二维栅格图片中根据预设高度,将低于所述预设高度的点云数据确定为地
面点云数据并进行滤除,获得除地面区域之外的待筛选点云数据。
14.进一步的,通过以下步骤对悬空障碍物进行滤除:
15.针对于二维栅格图片中每个栅格单元,根据该栅格单元中位于最高位置点的点云数据和位于最低位置点的点云数据,划分出该栅格单元中位于中间位置点的点云数据,并确定出该栅格单元中位于中间位置点的点云数据的点云数量;
16.检测所述点云数量是否低于预设阈值;
17.若低于,则将该栅格单元中的全部点云数据进行删除,从而对悬空障碍物进行滤除;
18.若不低于,则进行下一个栅格单元位于中间位置点的点云数量的检测。
19.进一步的,通过以下步骤按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类:
20.针对于每个子点云区域,在该子点云区域中的点云数据中确定一个待查询点云数据,搜索距离所述待查询点云数据最近的多个点云数据,并获取所述待查询点云数据分别到各个最近的点云数据的距离;
21.针对于每个最近的点云数据,检测所述待查询点云数据与该点云数据之间的距离是否小于该点云数据所在子点云区域对应的预设距离;
22.将距离小于对应的预设距离的至少一个最近的点云数据与所述待查询点云数据聚类到一个类别下。
23.进一步的,通过以下步骤搜索距离该待查询点云数据最近的点云数据:
24.获取待查询点云数据,根据预先构建的目录树中所有节点的搜索点云数据,将所述目录树的根节点作为当前节点开始进行搜索,根据当前节点的搜索点云数据在划分维度上的数值,在位于当前节点的左侧以及右侧的两个子节点中确定下一个节点,并更新为当前节点继续进行搜索,直至当前节点为叶子节点,并将该叶子节点确定为最近节点,并将最近节点到待查询点云数据的距离确定为最近距离;
25.将上一个节点作为当前节点继续进行回溯搜索,将当前节点到待查询点云数据的距离作为搜索半径,确定搜索半径是否小于最近距离;若小于,则将当前节点更新为最近节点,搜索半径更新为最近距离,并将当前节点的另一个子节点更新为当前节点继续进行回溯搜索,直至搜索至根节点;
26.将最近节点对应的搜索点云数据,确定为距离该待查询点云数据最近的点云数据。
27.进一步的,所述根据当前节点的搜索点云数据在划分维度上的数值,在位于当前节点的左侧以及右侧的两个子节点中确定下一个节点的步骤,包括:
28.将当前节点的搜索点云数据以及待查询点云数据在划分维度上的数值进行比较;
29.若待查询点云数据在当前节点的划分维度上的数值小于搜索点云数据,则将当前节点的左侧子节点确定为下一个节点进行搜索;
30.若待查询点云数据在当前节点的划分维度上的数值不小于搜索点云数据,则将当前节点的右侧子节点确定为下一个节点进行搜索。
31.进一步的,所述在确定出目标障碍物之后,所述确定方法还包括:
32.根据障碍物信息对所述目标障碍物进行跟踪,预测所述目标障碍物的运动状态,
获取预测信息;其中,所述障碍物信息包括至少一个障碍物扫描设备获取到的信息;所述运动状态包括速度信息和距离信息;
33.根据所述预测信息,将多个设备获取到的该目标障碍物信息进行融合,从融合后的障碍物信息中确定出融合障碍物;
34.根据所述融合障碍物的运动状态,预测出所述融合障碍物在未来预测时间段内的障碍物运动路径;
35.基于所述障碍物运动路径,规划所述无人驾驶汽车躲避障碍物行驶的行驶路径。
36.第二方面,本技术实施例还提供了一种地面障碍物的确定装置,所述确定装置包括:
37.获取模块,用于获取激光雷达扫描的三维点云数据;
38.滤除模块,用于根据预设的地面高度从所述三维点云数据中滤除地面的点云数据,得到所述三维点云数据中除地面区域之外的待筛选点云数据;
39.处理模块,用于将所述待筛选点云数据按照预设的多个位置点进行筛选,滤除所述待筛选点云数据中的悬空障碍物后,确定出目标点云数据以及所述目标点云数据中的多个子点云区域;其中,所述子点云区域是根据预设距离对所述目标点云数据进行划分得到的;
40.确定模块,用于针对于每个子点云区域,按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类,确定出目标障碍物。
41.第三方面,本技术实施例还提供一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如上述的地面障碍物的确定方法的步骤。
42.第四方面,本技术实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如上述的地面障碍物的确定方法的步骤。
43.本技术实施例提供的一种地面障碍物的确定方法、装置、电子设备及存储介质,所述确定方法包括:获取激光雷达扫描的三维点云数据;根据预设的地面高度从所述三维点云数据中滤除地面的点云数据,得到所述三维点云数据中除地面区域之外的待筛选点云数据;将所述待筛选点云数据按照预设的多个位置点进行筛选,滤除所述待筛选点云数据中的悬空障碍物后,确定出目标点云数据以及所述目标点云数据中的多个子点云区域;其中,所述子点云区域是根据预设距离对所述目标点云数据进行划分得到的;针对于每个子点云区域,按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类,确定出目标障碍物。
44.这样,采用本技术提供的技术方案能够通过在待筛选点云数据中设置多个位置点,将行驶途中路旁物体伸到地面上的树枝等悬空物进行过滤,得到不包含悬空物的目标点云数据,并确定出目标点云数据的多个子点云区域,针对不同子点云区域,采用不同的与各个子点云区域相对应的预设距离阈值对目标点云数据进行聚类,能够针对不同子点云区域进行准确地聚类,提高了地面障碍物识别的准确性。
45.为使本技术的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合
所附附图,作详细说明如下。
附图说明
46.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
47.图1示出了本技术实施例所提供的一种地面障碍物的确定方法的流程图;
48.图2示出了本技术实施例所提供的另一种地面障碍物的确定方法的流程图;
49.图3示出了本技术实施例所提供的确定最近点云数据的示意图;
50.图4示出了本技术实施例所提供的聚类示意图;
51.图5示出了本技术实施例所提供的环境感知示意图;
52.图6示出了本技术实施例所提供的一种地面障碍物的确定装置的结构示意图之一;
53.图7示出了本技术实施例所提供的一种地面障碍物的确定装置的结构示意图之二;
54.图8示出了本技术实施例所提供的一种电子设备的结构示意图。
具体实施方式
55.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解,本技术中的附图仅起到说明和描述的目的,并不用于限定本技术的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本技术中使用的流程图示出了根据本技术的一些实施例实现的操作。应当理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
56.另外,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的全部其他实施例,都属于本技术保护的范围。
57.为了使得本领域技术人员能够使用本技术内容,结合特定应用场景“地面障碍物的确定”,给出以下实施方式,对于本领域技术人员来说,在不脱离本技术的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用场景。
58.本技术实施例下述方法、装置、电子设备或计算机可读存储介质可以应用于任何需要进行确定地面障碍物的场景,本技术实施例并不对具体的应用场景作限制,任何使用本技术实施例提供的一种地面障碍物的确定方法、装置、电子设备及存储介质的方案均在本技术保护范围内。
59.值得注意的是,智能驾驶代表着现代汽车技术与产业发展的大趋势,而环境感知
则是汽车智能驾驶的关键核心技术和长期研究的热点领域。感知技术主要通过大量车无人驾驶汽车加上了“眼睛”,用以精确识别周边环境以保证驾驶的安全性与可靠性,雷达传感器、摄像头等传感器技术在智能驾驶中应用较多。
60.目前,在识别驾驶环境中的目标点云时,由于野外环境中的不平地面以及存在树木和杂草等不规则物体的情况,导致对后续目标点云的分类以及识别带来干扰,并且由于目标点云中各个点云数据近密远疏的特点,在对远近不同的识别区域内的目标点云按照相同的规则进行聚类时,会出现目标点云重叠而导致聚类失败的问题,影响聚类的准确性;因此,如何提高地面障碍物识别的准确性,成为了亟待解决的问题。
61.基于此,本技术提出了一种地面障碍物的确定方法、装置、电子设备及存储介质,所述确定方法包括:获取激光雷达扫描的三维点云数据;根据预设的地面高度从所述三维点云数据中滤除地面的点云数据,得到所述三维点云数据中除地面区域之外的待筛选点云数据;将所述待筛选点云数据按照预设的多个位置点进行筛选,滤除所述待筛选点云数据中的悬空障碍物后,确定出目标点云数据以及所述目标点云数据中的多个子点云区域;其中,所述子点云区域是根据预设距离对所述目标点云数据进行划分得到的;针对于每个子点云区域,按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类,确定出目标障碍物。
62.这样,采用本技术提供的技术方案能够通过在待筛选点云数据中设置多个位置点,将行驶途中路旁物体伸到地面上的树枝等悬空物进行过滤,得到不包含悬空物的目标点云数据,并确定出目标点云数据的多个子点云区域,针对不同子点云区域,采用不同的与各个子点云区域相对应的预设距离阈值对目标点云数据进行聚类,能够针对不同子点云区域进行准确地聚类,提高了地面障碍物识别的准确性。
63.为便于对本技术进行理解,下面将结合具体实施例对本技术提供的技术方案进行详细说明。
64.请参阅图1,图1为本技术实施例所提供的一种地面障碍物的确定方法的流程图,如图1中所示,所述确定方法,包括:
65.s101、获取激光雷达扫描的三维点云数据;
66.该步骤中,通过在无人驾驶汽车上搭载的激光雷达设备获取行驶过程中扫描的周围环境的三维点云数据。
67.s102、根据预设的地面高度从所述三维点云数据中滤除地面的点云数据,得到所述三维点云数据中除地面区域之外的待筛选点云数据;
68.该步骤中,在进行地面障碍物确定时,将离散的三维点云数据聚类的判断依据为点与点之间距离是否接近,而在激光雷达点云数据中,有很大一部分点云数据属于地面点云数据,并且地面点云呈现为纹理伏,这对后续障碍物点云数据的分类,识别带来干扰,如果不将这些地面点云数据去除,在进行障碍物分割时会导致分割算法失效,因此需要先行过滤,所以,地面点云数据去除是减少数据量以及提高分割算法准确度的有效手段。
69.需要说明的是,三维点云数据中除地面区域之外的待筛选点云数据的确定请参阅图2,图2为本技术实施例所提供另一种地面障碍物的确定方法的流程图,如图2中所示,通过以下步骤得到待筛选点云数据:
70.s201、将所述三维点云数据投影在平面上,根据预先设置的栅格单元,建立二维栅
格图片;
71.该步骤中,对于野外环境中的不平地面以及存在树木和杂草等不规则物体的情况,采用栅格最大最小高度差法对地面进行剔除,可以在凹凸地面以及倾斜地面条件下,将可通行路径从点云中提取出来;同时针对树木和杂草等目标的点云稀疏性,使用鸟瞰图的方法将复杂的3d形状转换为2d平面,降低不规则物体对目标检测的影响。
72.s202、在所述二维栅格图片中根据预设高度,将低于所述预设高度的点云数据确定为地面点云数据并进行滤除,获得除地面区域之外的待筛选点云数据。
73.该步骤中,由高度阈值法筛选出含有一定数量点云的栅格单元同时也对地面进行一个初步的滤除,获取除地面区域之外的待筛选点云数据。
74.s103、将所述待筛选点云数据按照预设的多个位置点进行筛选,滤除所述待筛选点云数据中的悬空障碍物后,确定出目标点云数据以及所述目标点云数据中的多个子点云区域;
75.该步骤中,子点云区域是根据预设距离对目标点云数据进行划分得到的。
76.需要说明的是,通过以下步骤对悬空障碍物进行滤除:
77.s1031、针对于二维栅格图片中每个栅格单元,根据该栅格单元中位于最高位置点的点云数据和位于最低位置点的点云数据,划分出该栅格单元中位于中间位置点的点云数据,并确定出该栅格单元中位于中间位置点的点云数据的点云数量;
78.s1032、检测所述点云数量是否低于预设阈值;
79.s1033、若低于,则将该栅格单元中的全部点云数据进行删除,从而对悬空障碍物进行滤除;
80.s1034、若不低于,则进行下一个栅格单元位于中间位置点的点云数量的检测。
81.该步骤中,对栅格单元中的点云数据进行三点检测:栅格单元中点云数据的最高位置点,中间位置点,最低位置点,当最高位置点与最低位置点之间,即中间位置点的点云数量低于预先设定的数量,便将该栅格单元的点云数据过滤掉;这样,在无人车行驶途中可以有效地把路旁物体伸到地面上的树枝等悬空物过滤掉,不必在逐帧检测上进行大量的计算工作,实现了较好的地面滤除。
82.s104、针对于每个子点云区域,按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类,确定出目标障碍物。
83.该步骤中,针对激光雷达点云近密远疏的特点,将多尺度欧式聚类进行进一步的改进,首先对目标点云数据按照距离划分成多个子点云区域;例如将点云滤波得到的长方形感兴趣区域划分成10个子区域,在每一个子区域内部按照不同的预设距离阈值进行欧式聚类,欧式聚类的预设距离阈值可以分别设定为:0.2,0.4,0.4,0.6,1.0,1.2,1.4,1.6,1.8,2.0m,从而实现大范围的准确欧式聚类,确定出目标障碍物,克服了障碍物因为距离不同而导致的聚类精度差的问题。
84.需要说明的是,通过以下步骤按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类:
85.s1041、针对于每个子点云区域,在该子点云区域中的点云数据中确定一个待查询点云数据,搜索距离所述待查询点云数据最近的多个点云数据,并获取所述待查询点云数据分别到各个最近的点云数据的距离;
86.这里,通过以下步骤搜索距离该待查询点云数据最近的点云数据:
87.1)、获取待查询点云数据,根据预先构建的目录树中所有节点的搜索点云数据,将所述目录树的根节点作为当前节点开始进行搜索,根据当前节点的搜索点云数据在划分维度上的数值,在位于当前节点的左侧以及右侧的两个子节点中确定下一个节点,并更新为当前节点继续进行搜索,直至当前节点为叶子节点,并将该叶子节点确定为最近节点,并将最近节点到待查询点云数据的距离确定为最近距离;
88.示例性的,可以通过kd-tree算法来查找距离待查询点云数据最近的点云数据;首先要进行kd-tree的构建,构建开始前,对比各个点云数据在各维度的分布情况,点云数据在某一维度上坐标值的方差越大分布越分散,方差越小分布越集中,从方差大的维度开始切分可以取得很好的切分效果及平衡性,所以将方差最大的那个维度作为根节点,循环依序取点云数据的各维度来作为切分维度,取点云数据在该维度的中值作为切分超平面,将中值左侧的数据点挂在其左子树,将中值右侧的数据点挂在其右子树,递归处理其子树,直至所有点云数据挂载完毕,从而构建kd-tree,即目录树。
89.这里,所述根据当前节点的搜索点云数据在划分维度上的数值,在位于当前节点的左侧以及右侧的两个子节点中确定下一个节点的步骤,包括:
90.(1)、将当前节点的搜索点云数据以及待查询点云数据在划分维度上的数值进行比较;
91.(2)、若待查询点云数据在当前节点的划分维度上的数值小于搜索点云数据,则将当前节点的左侧子节点确定为下一个节点进行搜索;
92.(3)、若待查询点云数据在当前节点的划分维度上的数值不小于搜索点云数据,则将当前节点的右侧子节点确定为下一个节点进行搜索。
93.示例性的,kd-tree是每个节点均为k维数值点的二叉树,其上的每个节点代表一个超平面,该超平面垂直于当前划分维度的坐标轴,并在该维度上将空间划分为两部分,一部分在其左子树,另一部分在其右子树。即若当前节点的划分维度为d,其左子树上所有点在d维的坐标值均小于当前值,右子树上所有点在d维的坐标值均大于等于当前值。
94.2)、将上一个节点作为当前节点继续进行回溯搜索,将当前节点到待查询点云数据的距离作为搜索半径,确定搜索半径是否小于最近距离;若小于,则将当前节点更新为最近节点,搜索半径更新为最近距离,并将当前节点的另一个子节点更新为当前节点继续进行回溯搜索,直至搜索至根节点;
95.该步骤中,由于上述步骤1)确定的最近节点不一定是距离待查询点云数据最近的,所以需要根据目录树从最近节点进行回溯搜索,直至回溯到根节点停止搜索,将最终确定的最近节点确定为距离待查询点云数据最近的点云数据,在回溯的过程中,若当前搜索节点的搜索半径小于最近距离,则当前搜索节点的另一个未搜索过的子节点也要进行最近节点的判断,不断更新最近节点和最近距离,直到回溯至根节点结束,将最终更新后的最近节点确定为距离待查询点云数据最近的点云数据。
96.3)、将最近节点对应的搜索点云数据,确定为距离该待查询点云数据最近的点云数据。
97.示例性的,请参阅图3,图3为本技术实施例所提供的确定最近点云数据的示意图,如图3所示,获取待查询数据p(一个待查询点云数据),从kd-tree根节点开始比较,若p(k)
(待查询点云数据在k维度上的数值)小于m(kd-tree当前搜索节点在k维度上的数值),则访问当前搜索节点的左子树,否则访问右子树,从而确定下一个搜索节点,直至搜索节点到达叶子节点q,将叶子节点q确定为最邻近点,最小距离dc.min(最近距离)为p到q的距离,然后沿搜索路径进行回溯搜索至根节点,若发现搜索节点到p的距离小于最小距离,将该搜索节点的另一个子节点也纳入搜索范围,不断更新最邻近点以及最小距离,直至回溯到根节点停止循环,将最终的最小距离对应的最邻近点确定为距离该待查询点云数据最近的点云数据。
98.s1042、针对于每个最近的点云数据,检测所述待查询点云数据与该点云数据之间的距离是否小于该点云数据所在子点云区域对应的预设距离;
99.该步骤中,确定待查询点云数据与最近的点云数据之间的欧式距离,公式如下:
[0100][0101][0102]
其中,ρ为点(x2,y2,z2)与点(x1,y1,z1)之间的欧式距离,|x|为点(x2,y2,z2)到原点的欧氏距离。
[0103]
s1043、将距离小于对应的预设距离的至少一个最近的点云数据与所述待查询点云数据聚类到一个类别下。
[0104]
示例性的,请参阅图4,图4为本技术实施例所提供的聚类示意图,如图4所示,获取空间中的某点p(待查询点云数据),通过kd-tree邻近搜索,找到k个离p最近的点云,获取p分别与这k个点云之间的欧式距离,将欧式距离小于设定阈值(预设距离)的点云与p聚类在集合q中(同一个障碍物的类别),直到集合q中的点云数目不再增加,停止循环,聚类过程结束,否则在q中选取除了p之外未选取过的点云更新点p,再次进行聚类。
[0105]
示例性的,设十个子点云区域的预设距离分别为d1=0.2,d2=0.4,d3=0.4,d4=0.6,d5=1.0,d6=1.2,d7=1.4,d8=1.6,d9=1.8,d
10
=2.0;设qi(i=1,2,3,
……
,10)代表十个子点云区域,ρ
j(qi)
则代表各个子点云区域内部的各个欧式距离,经过与预设距离的比较公式:ρ
j(qi)
《di,实现最终的多尺度欧式聚类,经过多尺度欧式聚类之后,目标点云能够极大地被划归到一个类中,不会出现因为目标点云重叠而导致的聚类失败问题。
[0106]
示例性的,请参阅图5,图5为本技术实施例所提供的环境感知示意图,如图5所示,首先处理激光雷达的原始点云数据(三维点云数据),实现点云的地面剔除、悬空物处理,半径滤波,分割聚类;首先通过栅格高度差,将满足某一范围高度的点云进行区分,实现对地面的滤除并分割出地面上的障碍物点云;虽然分割出了障碍物点云,但是在野外等林间道路环境中可能存在着大量的悬空障碍物,如林间道路两旁树的枝叶会横在车前,故需要用三点检测方法(最高位置点、最低位置点以及中间位置点)对悬空物点云进行滤除;去除了主要的干扰后,分割出来的障碍物由于距离的原因,会出现点云发散的情况,这时候就需要半径滤波将点云中离散的点进行剔除便于之后的多尺度欧式聚类,提高障碍物的识别效果;经过上面几个过程后,获得了较为干净的点云数据,再利用多尺度欧式距离法判断一定距离范围内是否存在点云,将满足条件的点云划归为一个类,从而使得障碍物的点云更加紧密,达到更好的聚类效果;进行聚类之后,无人车可以更高效地感知道路上地障碍物,实现精确地避障等动作。
[0107]
需要说明的是,在确定出目标障碍物之后,确定方法还包括以下几个步骤:
[0108]
1)、根据障碍物信息对所述目标障碍物进行跟踪,预测所述目标障碍物的运动状态,获取预测信息;
[0109]
该步骤中,障碍物信息包括至少一个障碍物扫描设备获取到的信息;运动状态包括速度信息和距离信息。
[0110]
2)、根据所述预测信息,将多个设备获取到的该目标障碍物信息进行融合,从融合后的障碍物信息中确定出融合障碍物;
[0111]
3)、根据所述融合障碍物的运动状态,预测出所述融合障碍物在未来预测时间段内的障碍物运动路径;
[0112]
4)、基于所述障碍物运动路径,规划所述无人驾驶汽车躲避障碍物行驶的行驶路径。
[0113]
示例性的,无人驾驶汽车上设置有不同的障碍物扫描设备,可以根据行驶环境中障碍物预测信息的来源,将通过激光雷达扫描设备获取到的目标障碍物信息以及通过毫米波雷达扫描设备获取到的目标障碍物信息进行融合,以获取更为紧密准确的目标障碍物,将融合后的目标障碍物通过匈牙利算法进行匹配,获取该目标障碍物在上一时刻的运动状态,并通过运动模型以及卡尔曼滤波对该目标障碍物在当前时刻的运动状态进行预测以及更新,以此预测出该目标障碍物的运动路径以便无人驾驶汽车躲避该目标障碍物进行正常行驶。
[0114]
本技术实施例提供的一种地面障碍物的确定方法、装置、电子设备及存储介质,所述确定方法包括:获取激光雷达扫描的三维点云数据;根据预设的地面高度从所述三维点云数据中滤除地面的点云数据,得到所述三维点云数据中除地面区域之外的待筛选点云数据;将所述待筛选点云数据按照预设的多个位置点进行筛选,滤除所述待筛选点云数据中的悬空障碍物后,确定出目标点云数据以及所述目标点云数据中的多个子点云区域;其中,所述子点云区域是根据预设距离对所述目标点云数据进行划分得到的;针对于每个子点云区域,按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类,确定出目标障碍物。
[0115]
这样,采用本技术提供的技术方案能够通过在待筛选点云数据中设置多个位置点,将行驶途中路旁物体伸到地面上的树枝等悬空物进行过滤,得到不包含悬空物的目标点云数据,并确定出目标点云数据的多个子点云区域,针对不同子点云区域,采用不同的与各个子点云区域相对应的预设距离阈值对目标点云数据进行聚类,能够针对不同子点云区域进行准确地聚类,提高了地面障碍物识别的准确性。
[0116]
基于同一申请构思,本技术实施例中还提供了与上述实施例提供一种地面障碍物的确定方法对应的一种地面障碍物的确定装置,由于本技术实施例中的装置解决问题的原理与本技术上述实施例一种地面障碍物的确定方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
[0117]
请参阅图6、图7,图6为本技术实施例所提供的一种地面障碍物的确定装置结构图之一,图7为本技术实施例所提供的一种地面障碍物的确定装置结构图之二。如图6中所示,所述确定装置610包括:
[0118]
获取模块611,用于获取激光雷达扫描的三维点云数据;
[0119]
滤除模块612,用于根据预设的地面高度从所述三维点云数据中滤除地面的点云数据,得到所述三维点云数据中除地面区域之外的待筛选点云数据;
[0120]
处理模块613,用于将所述待筛选点云数据按照预设的多个位置点进行筛选,滤除所述待筛选点云数据中的悬空障碍物后,确定出目标点云数据以及所述目标点云数据中的多个子点云区域;其中,所述子点云区域是根据预设距离对所述目标点云数据进行划分得到的;
[0121]
确定模块614,用于针对于每个子点云区域,按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类,确定出目标障碍物。
[0122]
可选的,所述滤除模块612在用于得到所述三维点云数据中除地面区域之外的待筛选点云数据时,滤除模块612具体用于:
[0123]
将所述三维点云数据投影在平面上,根据预先设置的栅格单元,建立二维栅格图片;
[0124]
在所述二维栅格图片中根据预设高度,将低于所述预设高度的点云数据确定为地面点云数据并进行滤除,获得除地面区域之外的待筛选点云数据。
[0125]
可选的,所述处理模块613在用于对悬空障碍物进行滤除时,所述处理模块613具体用于:
[0126]
针对于二维栅格图片中每个栅格单元,根据该栅格单元中位于最高位置点的点云数据和位于最低位置点的点云数据,划分出该栅格单元中位于中间位置点的点云数据,并确定出该栅格单元中位于中间位置点的点云数据的点云数量;
[0127]
检测所述点云数量是否低于预设阈值;
[0128]
若低于,则将该栅格单元中的全部点云数据进行删除,从而对悬空障碍物进行滤除;
[0129]
若不低于,则进行下一个栅格单元位于中间位置点的点云数量的检测。
[0130]
可选的,所述确定模块614在用于按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类时,所述确定模块614具体用于:
[0131]
针对于每个子点云区域,在该子点云区域中的点云数据中确定一个待查询点云数据,搜索距离所述待查询点云数据最近的多个点云数据,并获取所述待查询点云数据分别到各个最近的点云数据的距离;
[0132]
针对于每个最近的点云数据,检测所述待查询点云数据与该点云数据之间的距离是否小于该点云数据所在子点云区域对应的预设距离;
[0133]
将距离小于对应的预设距离的至少一个最近的点云数据与所述待查询点云数据聚类到一个类别下。
[0134]
可选的,所述确定模块614在用于搜索距离该待查询点云数据最近的点云数据时,所述确定模块614具体用于:
[0135]
获取待查询点云数据,根据预先构建的目录树中所有节点的搜索点云数据,将所述目录树的根节点作为当前节点开始进行搜索,根据当前节点的搜索点云数据在划分维度上的数值,在位于当前节点的左侧以及右侧的两个子节点中确定下一个节点,并更新为当前节点继续进行搜索,直至当前节点为叶子节点,并将该叶子节点确定为最近节点,并将最近节点到待查询点云数据的距离确定为最近距离;
[0136]
将上一个节点作为当前节点继续进行回溯搜索,将当前节点到待查询点云数据的距离作为搜索半径,确定搜索半径是否小于最近距离;若小于,则将当前节点更新为最近节点,搜索半径更新为最近距离,并将当前节点的另一个子节点更新为当前节点继续进行回溯搜索,直至搜索至根节点;
[0137]
将最近节点对应的搜索点云数据,确定为距离该待查询点云数据最近的点云数据。
[0138]
可选的,所述确定模块614在用于根据当前节点的搜索点云数据在划分维度上的数值,在位于当前节点的左侧以及右侧的两个子节点中确定下一个节点时,所述确定模块614具体用于:
[0139]
将当前节点的搜索点云数据以及待查询点云数据在划分维度上的数值进行比较;
[0140]
若待查询点云数据在当前节点的划分维度上的数值小于搜索点云数据,则将当前节点的左侧子节点确定为下一个节点进行搜索;
[0141]
若待查询点云数据在当前节点的划分维度上的数值不小于搜索点云数据,则将当前节点的右侧子节点确定为下一个节点进行搜索。
[0142]
可选的,如图7所示,所述确定装置610还包括路径规划模块615,所述路径规划模块615用于:
[0143]
根据障碍物信息对所述目标障碍物进行跟踪,预测所述目标障碍物的运动状态,获取预测信息;其中,所述障碍物信息包括至少一个障碍物扫描设备获取到的信息;所述运动状态包括速度信息和距离信息;
[0144]
根据所述预测信息,将多个设备获取到的该目标障碍物信息进行融合,从融合后的障碍物信息中确定出融合障碍物;
[0145]
根据所述融合障碍物的运动状态,预测出所述融合障碍物在未来预测时间段内的障碍物运动路径;
[0146]
基于所述障碍物运动路径,规划所述无人驾驶汽车躲避障碍物行驶的行驶路径。
[0147]
本技术实施例提供的一种地面障碍物的确定装置,所述确定装置包括:获取模块,用于获取激光雷达扫描的三维点云数据;滤除模块,用于根据预设的地面高度从所述三维点云数据中滤除地面的点云数据,得到所述三维点云数据中除地面区域之外的待筛选点云数据;处理模块,用于将所述待筛选点云数据按照预设的多个位置点进行筛选,滤除所述待筛选点云数据中的悬空障碍物后,确定出目标点云数据以及所述目标点云数据中的多个子点云区域;其中,所述子点云区域是根据预设距离对所述目标点云数据进行划分得到的;确定模块,用于针对于每个子点云区域,按照该子点云区域的预设距离阈值对子点云区域中的点云数据进行聚类,确定出目标障碍物。
[0148]
这样,采用本技术提供的技术方案能够通过在待筛选点云数据中设置多个位置点,将行驶途中路旁物体伸到地面上的树枝等悬空物进行过滤,得到不包含悬空物的目标点云数据,并确定出目标点云数据的多个子点云区域,针对不同子点云区域,采用不同的与各个子点云区域相对应的预设距离阈值对目标点云数据进行聚类,能够针对不同子点云区域进行准确地聚类,提高了地面障碍物识别的准确性。
[0149]
请参阅图8,图8为本技术实施例所提供的一种电子设备的结构示意图。如图8中所示,所述电子设备800包括处理器810、存储器820和总线830。
[0150]
所述存储器820存储有所述处理器810可执行的机器可读指令,当电子设备800运行时,所述处理器810与所述存储器820之间通过总线830通信,所述机器可读指令被所述处理器810执行时,可以执行如上述图1以及图2所示方法实施例中的地面障碍物的确定方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
[0151]
本技术实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时可以执行如上述图1以及图2所示方法实施例中的地面障碍物的确定方法的步骤,具体实现方式可参见方法实施例,在此不再赘述。
[0152]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0153]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0154]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0155]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0156]
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0157]
最后应说明的是:以上所述实施例,仅为本技术的具体实施方式,用以说明本技术的技术方案,而非对其限制,本技术的保护范围并不局限于此,尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本技术实施例技术方案的精神和范围,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1