激光SLAM闭环方案总结

高质量的闭环是建图必不可少的元素之一。而激光SLAM不像视觉那样可以提供细致的纹理信息,因此常常出现误检和漏检的情况。最近,看了不少关于激光SLAM闭环方法的论文,总结一下。

一、构建点云的描述子

1、Scan Context(2018)--Scan context: Egocentric spatial descriptor for place recognition within 3d point cloud map

思想:把采集到的激光点云沿着方位角方向将点云分割成一个个sector,即下图蓝色的扇形。沿着径向方向,将点云分割成一个个ring,即下图黄色圆环。一个sector和一个ring的交集称之为bin,即图中黑色区域。通过统计每个bin中点云的最大z方向值,来形成一个scan context 描述子。

激光SLAM闭环方案总结_第1张图片

上图使用高度,形成的二维投影:

激光SLAM闭环方案总结_第2张图片

缺点:代码比较轻量,跑过loam+kitti,但很容易形成假的回环。

补充:后续还有ISC方案,思想基本一致,只是将点云的Z轴高度信息换成了点云的强度信息进行编码。

2、Scan Context++(2021)--Scan context++:Structural Place Recognition Robust to Rotation and Lateral Variations in Urban Environments

思想:实际上文中是提出了计算描述子的两种方式(基于笛卡尔坐标系和基于极坐标系),来解决横向位移和旋转不变性的影响。

缺点:未开源,在实际运行的系统上不易做到自适应切换两种描述子。

3、Iris(2020)--LiDAR Iris for Loop-Closure Detection

思想:与SC类似,也是采用最近很流行的鸟瞰图,提取每个bin中的高度信息,通过傅里叶变化和LoG-Gabor滤波将它转化成一个二进制描述子

优/缺点:描述子提取速度快,系统长时间运行,回环搜索速度下降的很厉害。

4、Imaging Lidar(2021)--Robust Place Recognition using an Imaging Lidar

思想:利用高分辨率的雷达,将采集到的点云投影成一个intensity image,然后在该图上提取ORB特征描述子,利用词袋模型法做回环检测、匹配对应的特征。最后用PnP-RANSAC算法筛除一些错误的特征匹配。

优/缺点:要求雷达线束分布均匀(垂直的分辨率一致)。不同场景重新训练字典集。数据集上效果表现不错。

5、BoW3D(2022)--BoW3D:Bag of Words for Real-Time Loop Closing in 3D LiDAR SLAM

思想:基于LinK3D特征来实现词袋模型. DBoW3D的总体结构是采用哈希表构建单词与位置的一对一直接关联。(没有实际跑过,据说效果不错,可以去github找一下跑跑看)

二、采用神经网络

1、OverlapNet(2020)--OverlapNet: Loop Closing for LiDAR-based SLAM

基于CNN的构建的神经网络模型,用于激光雷达回环检测。该模型可以在仅通过激光雷达的信息(深度图、灰度图、法线图和语义分割后的图)来判断是否发现回环,以及两帧数据之间的偏航角变化

改进版本:OverlapTransformer(2022)

2、LCDNet(2022)--LCDNet: Deep Loop Closure Detection and Point Cloud Registration for LiDAR SLAM

将点云的帧间配准和回环检测集成的网络。论文数据来看,实际运行时间消耗太大了,但不失为一种尝试。

回环时间性能的指标:1)构建回环信息的时间 2)回环搜索的时间

你可能感兴趣的:(0_1SLAM,slam,自动驾驶,闭环检测)