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

一种路沿检测方法、装置及汽车与流程

2022-03-13 21:56:18 来源:中国专利 TAG:


1.本发明涉及汽车技术领域,尤其涉及一种路沿检测方法、装置及汽车。


背景技术:

2.在自动驾驶中,可行驶区域的检测是极其重要的一个环节,而路沿正是可行驶区域的边界,因此路沿的检测对于自动驾驶的安全和智能具有关键作用。然而现实中的城市道路场景比较复杂,比如道路斜坡、道路两侧以及道路区域内的动静态障碍物等都会影响路沿的检测效果,因此路沿检测的精度和准确性不够是现有技术存在的难题。


技术实现要素:

3.本发明所要解决的技术问题在于,提供一种路沿检测方法、装置及汽车,用于解决现有路沿检测的精度和准确性不够的问题。
4.本发明提供的一种路沿检测方法,所述方法包括:
5.步骤s11、获取车辆的激光雷达扫描得到的第一点云数据,并将所述第一点云数据转化为基于车辆自身坐标系的第二点云数据,所述车辆自身坐标系x轴方向为车辆正前方;
6.步骤s12、将第二点云数据所在的感兴趣区域沿所述x轴每隔预设的第一距离划分成一个子区域;
7.步骤s13、采用区域生长算法基于每一所述子区域中的第二点云数据获得该子区域的种子点,并根据部分种子点或者全部种子点,确定每一所述子区域地面基准高度;
8.步骤s14、根据每一所述子区域地面基准高度和预设第一高度差,在所述第二点云数据中提取所述感兴趣的区域内路面点,所述感兴趣的区域内路面点包括路面和路沿的地面点;
9.步骤s15、根据所述路沿的预设高度差范围、预设梯度范围和法向量方向,在所述感兴趣的区域内路面点中获得第一路沿候选点,确定道路的路沿。
10.进一步地,步骤s13中采用区域生长算法基于每一所述子区域中的第二点云数据获得该子区域的种子点具体包括:
11.在每一所述子区域内,在所述第二点云数据中选取预设数量的具有最小高度值的点计算其高度平均值sh;
12.在每一所述子区域内,在所述第二点云数据中选取高度小于sh s
th
的点作为每一所述子区域内的种子点,所述s
th
为预设第二高度差;
13.在每一所述子区域内,在所述种子点的邻域内的所述第二点云数据中选择与所述种子点构成平滑平面的待选种子点,将所述与种子点构成平滑平面的待选种子点均作为新的种子点,并继续在所述新的种子点的邻域内的所述第二点云数据中选择与所述新的种子点构成平滑平面的待选种子点,直到到达所述感兴趣区域边界,或者到达条件:所有种子点的邻域内不具有与所述所有种子点构成平滑平面的待选种子点。
14.进一步地,步骤在每一所述子区域内,在所述种子点的邻域内的所述第二点云数
据中选择与所述种子点构成平滑平面的待选种子点,将所述与种子点构成平滑平面的待选种子点均作为新的种子点,具体包括:
15.在每一所述子区域内,将所述种子点的邻域内的所述第二点云数据中作为待选种子点;
16.判断所述种子点与所述待选种子点的法向量的夹角是否小于预设角度阈值;
17.当所述种子点与所述待选种子点的法向量的夹角小于预设角度阈值时,判定所述待选种子点与所述种子点构成平滑平面,确定所述待选种子点为新的种子点。
18.进一步地,步骤s13中根据部分种子点或者全部种子点,确定每一所述子区域地面基准高度具体包括:
19.根据所述部分种子点后者所述全部种子点,计算所述部分种子点的高度平均值或者全部种子点的高度平均值rh,所述rh为每一所述子区域地面基准高度。
20.进一步地,步骤s14具体包括:
21.在每一所述子区域内,从所述第二点云数据中提取高度低于所述地面基准高度和预设第二高度差之和的点,作为所述感兴趣的区域内路面点。
22.进一步地,步骤s15具体包括:
23.对所述感兴趣的区域内路面点进行栅格化处理,按照预设长、宽、高建立三维栅格地图;
24.计算每一栅格的路面点最大高度差,判断所述每一栅格的路面点最大高度差是否符合预设高度差范围;
25.计算每一栅格中所有路面点高度均值,利用公式计算每一栅格的梯度,判断所述每一栅格的梯度是否符合预设梯度范围;其中,所述g为所述每一栅格的梯度,所述i为所述每一栅格所有路面点的高度均值;
26.利用公式计算每一栅格所有路面点的均值,其中,所述为每一栅格中所有路面点的均值,|v
i,j,k
|表示栅格v
i,j,k
中所有路面点的数量,所述p
l
为栅格v
i,j,k
第l个路面点的3d坐标;
27.利用公式计算每一栅格协方差,其中,所述c
i,j,k
为协方差,所述t表示矩阵的转置;
28.对所述每一栅格协方差进行奇异值分解,选择具有最小奇异值的奇异向量作为所述每一栅格的法向量,判断每一栅格的法向量是否与自身车辆垂直;
29.当栅格同时满足:最大高度差符合预设高度差范围、梯度符合预设梯度范围且法向量与车辆自身垂直,所述栅格中的地面点确定为第一路沿候选点,确定道路的路沿。
30.进一步地,所述步骤s15进一步还包括:
31.对不具有连续性栅格中第一路沿候选点作为孤立的噪声点删除,获得第二路沿候
选点;
32.将所述第二路沿候选点确定为道路的路沿。
33.进一步地,所述步骤s15进一步还包括:
34.根据障碍物聚类算法在所述第二路沿候选点中将障碍物噪声去除,获得第三路沿候选点;
35.将所述第三路沿候选点确定为道路的路沿。
36.本发明提供的一种路沿检测装置,所述装置包括:
37.获取单元,用于获取车辆的激光雷达扫描得到的第一点云数据,并将所述第一点云数据转化为基于车辆自身坐标系的第二点云数据,所述车辆自身坐标系x轴方向为车辆正前方;
38.划分单元,用于将第二点云数据所在的感兴趣区域沿所述x轴每隔预设的第一距离划分成一个子区域;
39.计算单元,用于采用区域生长算法基于每一所述子区域中的第二点云数据获得该子区域的种子点,并根据部分种子点或者全部种子点,确定每一所述子区域地面基准高度;
40.提取单元,用于根据每一所述子区域地面基准高度和预设第一高度差,在所述第二点云数据中提取所述感兴趣的区域内路面点,所述感兴趣的区域内路面点包括路面和路沿的地面点;
41.确定单元,用于根据所述路沿的预设高度差范围、预设梯度范围和法向量方向,在所述感兴趣的区域内路面点中获得第一路沿候选点,确定道路的路沿。
42.本发明提供的一种汽车,所述汽车包括上述路沿检测装置。
43.实施本发明,具有如下有益效果:
44.通过本发明,通过激光雷达扫描获取点云数据,并转换到车辆自身坐标系中,沿车辆正前方按照预设第一距离划分成子区域,并在子区域中挑选种子点进行生长,根据种子点确定每一子区域地面基准高度,通过每一子区域路面基准高度和预设第一高度差,将路面和路沿的地面点都筛选出来并栅格化处理,通过路沿与路面之间高度差、梯度和法向量方向来初步筛选出路沿,并过滤一些路面干扰和障碍物干扰,解决现有的路沿检测精确度和准确性不够的问题。
附图说明
45.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
46.图1是本发明实施例提供的适用于路沿检测方法的流程图。
47.图2是本发明实施例提供的汽车的正视图。
48.图3是本发明实施例提供的汽车的左视图。
49.图4是本发明实施例提供的划分子区域的路面图。
50.图5是本发明实施例提供的路沿检测装置的结构图。
具体实施方式
51.本专利中,通过几何特征和排除干扰方式逐步挑选出路沿,以下结合附图和实施例对该具体实施方式做进一步说明。
52.如图1所示,本发明实施例提供了路沿检测方法,所述方法包括:
53.步骤s11、获取车辆的激光雷达扫描得到的第一点云数据,并将所述第一点云数据转化为基于车辆自身坐标系的第二点云数据,所述车辆自身坐标系x轴方向为车辆正前方。
54.参照图2,ys和zs分别为激光雷达坐标系的y轴坐标和z轴坐标,yv和zv分别为车辆自身坐标系的y轴坐标和z轴坐标;参照图3,xs和zs分别为激光雷达坐标系的x轴坐标和z轴坐标,xv和zv分别为车辆自身坐标系的x轴坐标和z轴坐标,对于激光雷达坐标系的坐标可以转换为车辆自身坐标系的坐标,车辆自身坐标系x轴方向为车辆正前方。
55.需要说明的是,将所述第一点云数据转换为所述第二点云数据是为了方便计算和测试。
56.步骤s12、将所述第二点云数据所在的感兴趣区域沿所述x轴每隔预设的第一距离划分成一个子区域。
57.需要说明的是,为了提高计算效率,为所述第二点云数据选取感兴趣的区域,将满足x∈[x
min
,x
max
]and y∈[y
min
,y
max
]and z∈[z
min
,z
max
]区域作为感兴趣的区域,所述x
min
、所述x
max
分别为预设x轴最小坐标和预设x轴最大坐标,所述y
min
、所述y
max
分别为预设y轴最小坐标和预设y轴最大坐标,所述z
min
、所述z
max
分别为预设z轴最小坐标和预设z轴最大坐标;因为上述坐标由车辆的激光雷达扫描获取,因而所述x
min
、所述x
max
均在x轴正方向。
[0058]
参考图4,路沿41和路沿42分别位于道路两边,边界43和边界44是第二点云数据所在的感兴趣区域沿所述x轴的两侧边界,多个分割线45沿车辆自身坐标系x轴每隔预设第一距离划分成一个子区域。
[0059]
步骤s13、采用区域生长算法基于每一所述子区域中的第二点云数据获得该子区域的种子点,并根据部分种子点或者全部种子点,确定每一所述子区域地面基准高度。
[0060]
具体地,采用区域生长算法基于每一所述子区域中的第二点云数据获得该子区域的种子点包括:
[0061]
在每一所述子区域内,在所述第二点云数据中选取预设数量的具有最小高度值的点计算其高度平均值sh;
[0062]
在每一所述子区域内,在所述第二点云数据中选取高度小于sh s
th
的点作为每一所述子区域内的种子点,所述s
th
为预设第二高度差;
[0063]
需要说明的是,更优的办法是,在每一子区域中,如果出现种子点数量小于预设数量,计算每一所述子区域内较低点的高度平均值sh时,将预设数量的具有次最小高度的点进行平均来计算,把最小高度的那个点排除在外;在每一所述子区域内选取高度小于sh s
th
的点作为每一所述子区域内的种子点,所述s
th
为预设第二高度差,通过提高子区域内较低点的高度平均值来提升种子点数量,也是为了避免某些子区域内有个别点高度特别低造成干扰。
[0064]
在每一所述子区域内,在所述种子点的邻域内的所述第二点云数据中选择与所述种子点构成平滑平面的待选种子点,将所述与种子点构成平滑平面的待选种子点均作为新的种子点,并继续在所述新的种子点的邻域内的所述第二点云数据中选择与所述新的种子
点构成平滑平面的待选种子点,直到到达所述感兴趣区域边界,或者到达条件:所有种子点的邻域内不具有与所述所有种子点构成平滑平面的待选种子点。
[0065]
需要说明的是,邻域是相对种子点而言的,是指到种子点的距离不超过预设正数的集合,通过在种子点的邻域内寻找到新的种子点,然后继续以新的种子点来寻找所述新的种子点的邻域内的种子点,直到到达感兴趣区域边界或者所有种子点的邻域内不具有与所述所有种子点构成平滑平面的点,目的就是把每一子区域内的种子点全部找出来。
[0066]
进一步地,步骤在每一所述子区域内,在所述种子点的邻域内的所述第二点云数据中选择与所述种子点构成平滑平面的待选种子点,将所述与种子点构成平滑平面的待选种子点均作为新的种子点,具体包括:
[0067]
在每一所述子区域内,将所述种子点的邻域内的所述第二点云数据中作为待选种子点;
[0068]
判断所述种子点与所述待选种子点的法向量的夹角是否小于预设角度阈值;
[0069]
当所述种子点与所述待选种子点的法向量的夹角小于预设角度阈值时,判定所述待选种子点与所述种子点构成平滑平面,确定所述待选种子点为新的种子点。
[0070]
进一步地,步骤s13中根据部分种子点或者全部种子点,确定每一所述子区域地面基准高度具体包括:
[0071]
根据所述部分种子点或者所述全部种子点,计算所述部分种子点的高度平均值或者全部种子点的高度平均值rh,所述rh为每一所述子区域地面基准高度。
[0072]
需要说明的是,根据每一子区域中部分种子点或者全部种子点进行平均计算,确定每一子区域地面基准高度;采用部分种子点进行平均计算基于预设种子点数量,而且是高度最低的部分种子点来平均计算。
[0073]
步骤s14、根据每一所述子区域地面基准高度和预设第一高度差,在所述第二点云数据中提取所述感兴趣的区域内路面点,所述感兴趣的区域内路面点包括路面和路沿的地面点。
[0074]
具体地,步骤s14具体包括:
[0075]
在每一所述子区域内,从所述第二点云数据中提取高度低于所述地面基准高度和预设第一高度差之和的点,作为所述感兴趣的区域内路面点。
[0076]
需要说明的是,步骤s14计算得到了每个子区域地面基准高度rh,预设第二高度差为r
th
,所述地面基准高度和预设第一高度差之和为rh r
th
,每一子区域低于所述地面基准高度和预设第一高度差之和的点,被提取出来作为感兴趣的区域内路面点,预设第一高度差为r
th
时会考虑到一般路沿高度。
[0077]
步骤s15、根据所述路沿的预设高度差范围、预设梯度范围和法向量方向,在所述感兴趣的区域内路面点中获得第一路沿候选点,确定道路的路沿。
[0078]
步骤s15具体包括:
[0079]
对所述感兴趣的区域内路面点进行栅格化处理,按照预设长、宽、高建立三维栅格地图;
[0080]
需要说明的是,上述步骤实际上是对车身自身坐标系中的点云数据建立3d栅格地图,每个栅格的大小设置为v
l
*vw*vh,其中v
l
、vw、vh分别表示栅格的长、宽、高。
[0081]
计算每一栅格的路面点最大高度差,判断所述每一栅格的路面点最大高度差是否
符合预设高度差范围;
[0082]
需要说明的是,每一栅格路面点最大高度差是指每一栅格中两个路面点最大高度差,路面点既包括路面的地面点也包括路沿的地面点;一般在路沿处,路沿的地面点与路面的地面点高度差范围高于一般路面的地面点之间高度差,而且路沿的地面点与路面的地面点高度差范围小于15cm或者20cm,通过该特性来对路沿进行筛选。
[0083]
计算每一栅格中所有路面点高度均值,利用公式计算每一栅格的梯度,判断所述每一栅格的梯度是否符合预设梯度范围;其中,所述g为所述每一栅格的梯度,所述i为所述每一栅格所有路面点的高度均值;
[0084]
需要说明的是,路面点包括路沿的地面点和路面的地面点。
[0085]
利用公式计算每一栅格所有路面点的均值,其中,所述为每一栅格所有路面点的均值,|v
i,j,k
|表示栅格v
i,j,k
中所有路面点的数量,所述p
l
为栅格v
i,j,k
第l个路面点的3d坐标;
[0086]
利用公式计算每一栅格协方差,其中,所述c
i,j,k
为协方差,所述t表示矩阵的转置;
[0087]
对所述每一栅格协方差进行奇异值分解,选择具有最小奇异值的奇异向量作为所述每一栅格的法向量,判断每一栅格的法向量是否与自身车辆垂直;
[0088]
当栅格同时满足:最大高度差符合预设高度差范围、梯度符合预设梯度范围且法向量与车辆自身垂直,将所述栅格中的路面点确定为第一路沿候选点,确定所述第一路沿候选点为道路的路沿。
[0089]
需要说明的是,所述第一路沿候选点还存在噪声和干扰,例如不连续部分,某些路面有凸起部分,部分路面区域存在障碍物,这些都需要逐步排除以获得更准确的路沿。
[0090]
进一步地,所述步骤s15还包括:
[0091]
对不具有连续性的栅格中第一路沿候选点作为孤立的噪声点删除,获取第二路沿候选点,
[0092]
将所述第二路沿候选点确定为道路的路沿。
[0093]
需要说明的是,上述筛选步骤是基于路沿所包括栅格具有连续性。
[0094]
具体地,通过每个栅格与周围相邻栅格之间的距离进行聚类,如果同一聚类中栅格数量少于预设栅格数量,认定上述栅格不具有连续性,属于干扰信息而进行排除。
[0095]
进一步地,所述步骤s15进一步还包括:
[0096]
根据障碍物聚类算法在所述第二路沿候选点中将障碍物噪声去除,获取第三路沿候选点;
[0097]
将所述第三路沿候选点确定为道路的路沿。
[0098]
具体地,由于路沿的选取很容易受到噪声的影响,比如道路中其他车辆,道路指示
牌等,因此通过对分割出的非地面点根据距离进行聚类,然后将其投影到地面中,在路沿候选点中去除位于障碍物区域内的点。这样即可减少由于障碍物的局部点云特征与路沿特征比较相似所产生的噪声;得到的第三路沿候选点正是本发明所需要的结果。
[0099]
如图5所示,本发明实施例提供了路沿检测装置,所述装置包括:
[0100]
获取单元51,用于获取车辆的激光雷达扫描得到的第一点云数据,并将所述第一点云数据转化为基于车辆自身坐标系的第二点云数据,所述车辆自身坐标系x轴方向为车辆正前方;
[0101]
划分单元52,用于将第二点云数据所在的感兴趣区域沿所述x轴每隔预设的第一距离划分成一个子区域;
[0102]
计算单元53,用于采用区域生长算法基于每一所述子区域中的第二点云数据获得该子区域的种子点,并根据部分种子点或者全部种子点,确定每一所述子区域地面基准高度;
[0103]
提取单元54,用于根据每一所述子区域的地面基准高度和预设第一高度差,在所述第二点云数据中提取所述感兴趣的区域内路面点,所述感兴趣的区域内路面点包括路面和路沿的地面点;
[0104]
确定单元55,用于根据所述路沿的预设高度差范围、预设梯度范围和法向量方向,在所述感兴趣的区域内路面点中获得第一路沿候选点,确定道路的路沿。
[0105]
本发明还提供了一种汽车,所述汽车包括上述路沿检测装置。
[0106]
实施本发明,具有如下有益效果:
[0107]
通过本发明,通过激光雷达扫描获取点云数据,并转换到车辆自身坐标系中,沿车辆自身坐标系x轴按照预设第一距离划分成子区域,并在子区域中挑选种子点进行生长,根据种子点确定每一子区域地面基准高度,通过每一子区域路面基准高度和预设第二高度差,将路面和路沿的地面点都筛选出来并栅格化处理,通过路沿与路面之间高度差、梯度和法向量方向来初步筛选出路沿,并过滤一些路面干扰和障碍物干扰,解决现有的路沿检测精确度和准确性不够的问题。
[0108]
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献