地面车辆三维点云的快速分割
原文 [Fast segmentation of 3D point clouds for ground vehicles]
论文地址 :https://ieeexplore.ieee.org/document/5548059/authors#authors
代码:https://github.com/lorenwel/linefit_ground_segmentation
代码讲解 https://blog.youkuaiyun.com/leesanity/article/details/123663325
https://blog.youkuaiyun.com/lovelyaiq/article/details/118826534
摘要:
本文介绍了一种大尺寸远距离三维点云的快速分割方法,特别适合于以后的物体分类。我们的方法是针对高速自主地面机器人的移动,因此分割方法的实时性能起着关键作用。这一点尤其正确,因为分割被认为只是更重要的目标分类任务的一个必要的初步步骤,而目标分类本身的计算要求非常高。通过将分割问题分解为两个复杂度较低的简单子问题:局部地平面估计和快速二维连通分量标记,我们的方法实现了效率。
在不同室外场景下采集的真实数据上对该方法的性能进行了评估,并将结果与现有方法进行了比较。我们表明,我们的方法需要较少的运行时间,同时产生的分割结果,更适合以后的分类识别对象。
引言
在本文中,我们解决了分割大尺寸远程三维扫描数据的问题,这种方法允许以后根据其三维点对检测到的对象进行分类。
给定一组由距离扫描仪获取的3D点,分割的目标是将点云分离为表示单个对象的不相交子集。随着全三维扫描仪在过去几年的普及,分割算法面临的主要挑战是需要处理大量可能无序的三维数据。
在[1]中,我们提出了一种基于激光雷达的感知系统,能够实时处理此类数据。以类似于[2]的方式构建了一个占用网格,并通过找到被认为代表障碍物的网格单元的连接组件,在该网格的2.5D域中完全完成了分割。网格就像一个哈希表,用于快速检索3D点,然后为找到的每个连接组件提取对象点云子集,并将其输入基于3D点云特征的分类框架,为每个对象指定一个类别标签。
虽然该系统被证明能够实时检测和分类目标,以简化将车辆与场景中的其他目标区分开来的任务[1],但一些主要缺点很容易识别,最突出的是由于将3D点映射到2.5D网格结构引入降维,导致数据分割不足。
在我们早期工作的基础上,本文的主要贡献是一种快速分割长距离无序三维点云数据的方法,它克服了我们之前工作中的上述问题,同时仍然提供了对象分类所需的信息。
特别是,我们的新方法保留了传感器在关键步骤中传递的完整3D信息,从而降低了欠分割的可能性。尽管如此,考虑到Velodyne高清晰度激光雷达传感器以10 Hz的频率提供的10万点大云层,该方法仍能实时执行。该方法并不局限于特定的机器人或传感器,但我们使用我们的车辆MuCAR-3(慕尼黑认知自主机器人车,第三代)对其进行了描述和演示,这是一款配备Velodyne HDL-64激光雷达的大众途锐。
在第三节详细描述我们的方法之前,我们首先概述相关工作。
在第四节中,我们提供了实验结果,并在第五节中总结了论文,对未来的研究进行了展望。
二、相关工作
考虑到现代3D距离扫描仪提供的大量数据,迄今为止最有效的分割算法依赖于先降维,通过将3D点投影到固定在地面上的2.5D网格来实现。
许多团队在2007年DARPA城市挑战机器人比赛中采用了这种方法,以分割点云并检测轨道上的其他车辆,取得了巨大成功([3]、[4]、[5])。该方法的一个缺点是,在分割下,属于不同对象的点被合并到同一段中的情况经常发生。
这是因为栅格仅提供环境的2.5D表示,但不模拟任何点对之间的自由垂直空间。例如,树梢和树梢下的地面将被检测为一个单独的物体。这给对象分类带来了额外的困难,例如[1],因为地平面点对于其他不同类型的对象来说是公共的。
最近,出现了一些解决全3D分割问题的工作([6]、[7]、[8]、[9])。其中,[6]、[7]有一些相似之处,它们都使用相应扫描设备的特性来建立点之间的邻域关系。然后使用该邻域从估计的点法线中提取局部点特征。然后,考虑由这些特征导出的平滑度约束,对点进行欧氏聚类。据报道,[6]的性能接近但不达到实时性能,而[7]的实时性能
快速点云分割
在我们的方法中,我们没有像点云分割那样建立复杂的邻域关系和提取复杂的点特征,而是以一种允许通过简单的比较和局部直线拟合来估计地平面点的方式来分割数据。结合起来,分区和直线拟合利用二维范围数据处理流行的IME提取算法[11]到三维点云数据领域的扩展。特别地。在我们的工作中,拟合线的另一个目的是确定接地点。然后,通过将所有非地面点映射到施加在xy平面上的高分辨率网格结构,并对该网格应用快速连接组件算法,(fast component algorithms)对标记为不属于地面的点进行分组
我们首先对所提出的方法进行了描述,并对数据采集和预处理进行了一些说明,然后详细介绍了地平面估计。最后,我们展示了如何将非地面点分组为不相交的子集,以获得适合后续对象分类的分割结果
A.数据采集与预处理
激光雷达数据通过100 MBIt以太网以2.5 KHZ的速率以384个距离和方位测量值的小包形式到达。这些数据包是在传感器旋转一圈时收集的,我们称之为扫描。在运行我们的算法之前,我们首先对激光雷达扫描进行惯性校正,将车辆运动考虑在内(利用惯性导航和里程信息)。形式上,时间扫描可以用无序集