基于线束迭代的激光雷达地面提取方法与流程
- 国知局
- 2024-08-22 14:52:37
本技术涉及一种应用激光雷达数据处理算法实时提取非地面数据的新方法,属于无人驾驶与自动导航领域。
背景技术:
1、在无人驾驶与自动导航领域,为保障车辆自身与路面设施、行人的安全,无人车辆必须具备较高的环境感知能力。环境感知是获取周遭环境信息以进行自主决策与导航控制的基础部分,非地面数据检测是环境感知能力的重要组成部分。
2、现有国内外涉及无人驾驶车辆的障碍物检测手段主要包括激光雷达,因其具有受光照影响小、精度较高等优点,基于激光雷达的非学习障碍物检测方法大致流程包括点云预处理、点云聚类、包围框拟合和障碍物信息发布等步骤。使用激光雷达获知的环境数据为三维空间中反射点的坐标值,地面提取算法的目的是标记出属于非地面的点以触发车辆避障,同时被视为地面的点则会直接删除,但是环境数据包括有低于地面的凹坑、低矮杂物、台阶等较小障碍物通常会被混淆为地面数据,一旦被删除就会对自动驾驶安全性带来较大安全隐患。因此,如何进一步地提升地面检测精度就显得尤为重要。
3、现有地面提取算法可分为使用地面方程与不使用两大类,计算地面方程常用算法为ransac,即先随机采样拟合出一个平面方程,再重复随机过程若干次,保留最好的一个作为地面方程。此类方程计算结果仅能拟合平面,对于坡道计算精度较低。为了描述坡道等因素,gpf以及apollo的plane fit ground detector等算法加入了分段思想,gpf沿着x轴将路面分成若干段,每段中用svg计算平面方程。plane fit ground detector算法沿着x和y轴将点云分成栅格,每个栅格中分别拟合一个地面方程,但是无法通过不断细化分段或栅格来逼近凹凸不平的路面。因为,栅格的大小与其所受噪声的影响是一对矛盾关系,当栅格边长小于1米时会很容易将其中草丛,行人等误检成地面。另外,如在先公开专利申请cn202210699140.7,基于单个点云迭代,最终收敛值到一个平面方程。又如专利申请cn202111453859.4,基于轨迹对点云进行断面分割,然后利用移动最小二乘法逐一提取断面的道路面,最后通过约束断面内点云的几何特征提取并精化地面点,但是预设路面宽度稳定而不适用于室内复杂场景;使用kd-tree搜索,时间复杂度较高为o(log n)~o(n),计算周期较长、处理速度低,难以真正进行推广使用。
4、在不使用地面方程的算法中ray ground filter较为常见,其依据机械雷达特性以射线形式组织点云,根据雷达角分辨率将空间划分角度极小的扇形,同一扇形中的点认为是同一线束,通过计算同扫描线中相邻线束的两点间坡度是否大于特定阈值判断是否为地面点。当使用较便宜的激光雷达时,两线束间间隔较大,难以判断台阶和低矮障碍物,且无视了相邻扫描线间的坡度差异信息。另外,如在先专利申请cn202011075094.0,其将点云映射至柱状坐标系中,求每个点云与其相邻点间的角度值,然后遍历搜集角度值较平坦的点云作为地面坐标,这种方法对于点云稀疏的区域挑战较大,如机械雷达两根线束之间可能相差30cm,此时障碍物可能被检测为平缓的坡道,且所有点计算角度开销也比较大。又如专利申请cn202311219224.7,其在点云投影后使用分水岭算法以确定地面边界,但是分水岭算法耗时较长且容易过分割,在点云稀疏的情况下容易受障碍物噪声的干扰,同时使用凸包检测提取地面难以处理地面凹坑和大面积街沿情形。
5、有鉴于此,特提出本专利申请。
技术实现思路
1、本技术所述的基于线束迭代的激光雷达地面提取方法,在于解决现有技术存在的实时地面算法精度较低、难以分辨10cm高度的低矮障碍物、遇到不平整地面或多段坡道时性能下降等问题,提出基于同线束内点云连续性特点、使用在线束间迭代的地面提取手段,以期充分利用激光雷达地面点云呈环状分布的先验特征,有效地提高针对拱桥或凹凸路面等环境地面的提取能力,从而具备在以上复杂路面准确检测出低矮障碍物的能力、同时实现提高计算效率和降低计算开销的设计目的。
2、为实现上述设计目的,所述基于线束迭代的激光雷达地面提取方法,先对同线束内的点云合成聚类,再实施跨线束合并处理。该方法包括有以下步骤,
3、步骤1,预处理雷达点云数据;
4、步骤2,将所有点云分成小簇;
5、步骤3,初始化地面种子;
6、步骤4,从地面种子线段依次向远处线束迭代;
7、使用虚拟线段减少计算以提高复杂路面迭代准确度;
8、4.1、若路中间存在障碍物将地面线束遮挡,则先对近处线段进行拼接尝试;
9、4.2、选定有可能是该种子后续地面的线段;
10、4.3.1、进行第二轮筛选;遍历候选地面列表,依据公式dismatch_score=min(0.5-交长比,0)+15*|z(0)-z(n)|+1000*|k(0)-k(n)|计算不匹配指数;其中,z(0),k(0)是地面种子的高度和斜率;z(n),k(n)是当前候选的高度和斜率;
11、4.3.2、若无候选地面满足dismatch_score<1.3,则认为有坡度,全部当选种子地面;否则仅当dismatch_score<1.3的才当选种子地面;
12、步骤5、搜集该线束的种子地面,按上述步骤4重复迭代计算再下一线束的线段;
13、步骤6、当所有线束迭代完毕,把所有地面种子对应的点云分类为地面,其它分类为前景障碍物。
14、进一步地,所述的步骤1中对获取的点云数据保留xyz坐标、线束、方位角、角度(range)信息,将所有点按照线束和方位角序号存入哈希表中。
15、进一步地,所述的方位角序号计算公式为其中,azimuth为方位角,width为每个线束的点云数。
16、进一步地,所述的步骤2包括,在处理过程中不关注距离远近,只对同一线束内的点进行聚类;对同一线束的点云依据角度(range)值做一维sobel算子边缘检测;在算子计算结果大于阈值处截断,分割成若干段平滑的圆弧;采样计算所有线段平均高度z、以及平均斜率k。
17、进一步地,所述的步骤3包括,首先选择最下面线束0,若线段的|z+sensor_h|<0.12,则认为此线段是地面;其中,sensor_h为雷达安装高度,z为所有线段平均高度。
18、进一步地,所述的步骤4.1包括,
19、4.1.1、对于每个线段一次性地检查其与同线束内其它线段是否能合并;从距离近的线段开始判断,先判断顺时针还是逆时针拼接,再用自身平均高度和斜率外推出到临近线段的高度公式为线段间隔+z;
20、4.1.2、计算拼接阈值;使用公式0.01+min(遮挡角度/1200+0.02)计算拼接阈值,若小于该阈值,则将两线段间遮挡补全,生成一条虚拟线段;
21、4.1.3、根据上述两条线段点的数量加权计算虚拟线段的平均高度和斜率、线段开始结束点信息以及线段含点个数;按照此步骤内容,继续搜索直到左右所有可以合并的线段都加入到该虚拟线段中;
22、4.1.4、若某线段已经和其它线段合并过,则跳过不再检查与其它线段的合并可能性。
23、进一步地,所述的步骤4.2,设定最大允许坡度θ,当下一线束的线段与地面种子交长比大于0且z相差小于tan(θ)*地面线束间隔且斜率,则成为该种子的候选地面;其中,交长比是指两线段方位角重合大小与较短线段方位角范围之比。
24、综上内容,本技术具有以下优点和有益效果:
25、1、本技术有效地提高了地面提取精度,在路面不平的情况下能够保留5cm高的障碍物。
26、2、本技术采用所有点云共同描述地面,能够最大限度地适应变化坡度等复杂环境因素。
27、3、本技术所述提取方法的整体计算量较小,时间复杂度为o(n)且主要集中在sobel算子分割线段处,若在此处使用显卡并行计算可进一步地显著提速,因此本技术的计算速度较高且适用性与推广性较高。
28、4、本技术所述提取方法可与目标检测聚类模块组合,以用于深度图聚类算法共享前面映射的哈希表,从而进一步减少整体运算时间,运行效率较高。
本文地址:https://www.jishuxx.com/zhuanli/20240822/280214.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表