0. 前言

作为激光雷达的回环而言,最经典的仍然是Scan Context,但是Scan Context仍然会存在有一些缺陷,一是它只利用了最大的高度,丢失了很多点云信息,二是Scan-Context不具有旋转不变性,需要进行暴力匹配,三是Scan-Context缺少特征提取步骤。所以文章《LiDAR Iris for Loop-Closure Detection》,同时作者也将代码开源到了Github上:https://github.com/JoestarK/LiDAR-Iris,下面我们来详细梳理一下这篇文章.

1. 闭环策略

作为SLAM的回环来说,目前主要有四种闭环检测策略:

  1. point-to-point matching,即点到点的匹配(如,ICP,NDT及其变种);

  2. 从3D点云中检测关键点,并从每个关键点位置中提取描述子,然后利用词袋模型(bag-of-words (BoW) model)进行场景匹配(BoW,BoW3d等)。

  3. 从点云中提取以直方图的形式表示的全局描述子(如ESF, FPFH, VFH, M2DP,Scan Cntext)。

  4. 基于卷积神经网络(CNNs)模型的方法。

2. 本文贡献

如上文所说,目前激光的全局或者局部的描述子能力和不变性有所欠缺,同时不具有旋转不变性,需要暴力的匹配,在Scan Context中使用了NrN_rNr​ (Rings)的快速搜索算法来节省时间,但是也损失了对应的精度。而本文的方法解决了上述的缺陷

  1. 提出了一个LiDAR点云的全局描述符LiDAR Iris,将一个地方总结为在LiDAR-Iris图像表示上进行几次Gabor过滤和阈值操作后获得的二进制签名图像, 充分利用了点云的大部分信息。
  2. 该全局描述符具有旋转不变性,避免了暴力搜索,节约了计算资源。
  3. 与现有的LIDAR全局描述符相比,该描述符的性能达到了SOTA。

3. 主要内容

准确的说,Lidar Iris描述符的生成理论上可以从执行上可以分解为三个模块:一是生成Lidar-Iris图像的表示;二是通过傅立叶变换使得Lidar-Iris具有平移不变性;三是基于LoG-Gabor滤波器的二值特征提取。下面我们就来对这三个执行模块进行分析.

3.1 LiDAR-lris图像

首先和Scan Context思想类似,即将三维点云映射成二维图像,对应的方法如下图所示

作者保留了一个以雷达为中心的k∗k(m)k*k(m)k∗k(m)的一个正方形作为有效感应区(本文取k=80mk=80mk=80m),激光雷达的位置作为正方形的中心。以这个正方形为单位,将点云离散为80(沿半径的方向的) * 360(角向)的bin。值得注意的是,压缩成二维平面后,每一个区域中仍然具有高度、距离、反射率等特性,如果舍去就和栅格地图无异了,所以作者通过八位二进制代码对同一个bin内的所有点进行编码。以高度的编码方法举例,对于每一个bin内的点云集,首先按照高度的大小顺序,线性离散为8个bin,并不是每个bin都会有点,有点的bin值为1,否则为0,从而可以获得上图中的8位二进制编码。

同时借鉴了虹膜算法,将我们bin的环形鸟瞰图转化为像素条,形成和Scan Context类似的结果,有区别的是Lidar-IRIS图像的像素强度为每个bin的8位二进制数所转换的十进制数,而Scan Context是获取了当前位置的最高高度,这样其实是丢失了很多信息。

最后,与现有的基于直方图的全局描述符相比,所提出的编码过程不需要对每个bin中的点进行计数,从而提高了计算效率,但是又保存了大致的特征,不会受到噪声的干扰。

3.2 平移不变性Lidar-Iris的傅立叶变换

虽然在空间上来看是一个圆,应该有旋转不变性。但我们按照0−2π0 - 2\pi0−2π展开成 2D 图像后,像素条 对 Lidar 的朝向就变得敏感了。朝向稍微偏几度可能整体图像就有比较大的平移从而不相似了。所以作者提出了平移不变性Lidar-Iris的傅立叶变换。在学过图像处理的同学知道,傅里叶频谱可以有效地解决平移导致匹配重合度不高的问题

同时傅里叶本身又具有旋转变化性,这就导致非常适合我们的像素条的监测。

基于傅里叶变换的方案能够估计粗略的点云旋转、缩放和平移(用不到缩放)。点云的旋转对应于经过傅里叶变换后的Lidar-IRIS图像的水平平移,反映到傅里叶变换后两幅图像是完全没有差异的

而点云的平移则是对应傅里叶变换后的 LiDAR-Iris 图像的垂直方向上的平移,会引起Lidar-IRIS 图像像素强度的轻微变化,从而导致傅里叶变换后本身的频谱发生轻微的变化。 但是Lidar-IRIS以bin为最小单位保留了点云的绝对内部结构,并没有那么高的分辨率,所以提高了辨别能力的同时又对图像像素强度的变化具有鲁棒性, 所以可以忽略由机器人在小范围内平移引起的 LiDAR-Iris 图像中强度的变化。

假设两个Lidar-IRIS图像仅仅差别一个位移(δx,δy\delta_x,\delta_yδx​,δy​),例如I1(x,y)=I2(x−δx,y−δy)I_1(x,y) = I_2(x −δx,y −δy)I1​(x,y)=I2​(x−δx,y−δy),那么这两个图像之间的傅立叶变换可以定义为
I^1(wx,wy)e^−i(wxδx+wyδy)=I^2(wx,wy)\hat{I}_1(w_x,w_y) \hat{e}^{−i(w_x δ_x +w_y δ_y )}= \hat{I}_2(w_x,w_y)I^1​(wx​,wy​)e^−i(wx​δx​+wy​δy​)=I^2​(wx​,wy​)

对应的,归一化的交叉功率谱定义为:
Corr^=I^2(wx,wy)I^1(wx,wy)==I^2(wx,wy)I^1(wx,wy)∗∣I^1(wx,wy)I^1(wx,wy)∗∣=e−i(wxδx+wyδy)\hat{C o r r}=\frac{\hat{I}_{2}\left(w_{x}, w_{y}\right)}{\hat{I}_{1}\left(w_{x}, w_{y}\right)}==\frac{\hat{I}_{2}\left(w_{x}, w_{y}\right) \hat{I}_{1}\left(w_{x}, w_{y}\right) *}{\left|\hat{I}_{1}\left(w_{x}, w_{y}\right) \hat{I}_{1}\left(w_{x}, w_{y}\right) *\right|}=e^{-i\left(w_{x} \delta_{x}+w_{y} \delta_{y}\right)}Corr^=I^1​(wx​,wy​)I^2​(wx​,wy​)​==∣∣​I^1​(wx​,wy​)I^1​(wx​,wy​)∗∣∣​I^2​(wx​,wy​)I^1​(wx​,wy​)∗​=e−i(wx​δx​+wy​δy​)

其中∗*∗表示复共轭。我们可以看到在简化后的归一化的交叉功率谱之间的关系,只有和初始位置以及移动来变化的。取傅里叶逆变换Corr(x,y)=F−1(Corr^)=δ(x−δx,y−δy)Corr(x,y) = F^{−1}(\hat{Corr}) = δ (x −δ_x,y − δ_y)Corr(x,y)=F−1(Corr^)=δ(x−δx​,y−δy​),这意味着Corr(x,y)Corr(x,y)Corr(x,y)仅在(δx,δy)=argmax⁡x,y{Corr(x,y)}(δ_x,δ_y) =arg \max_{x,y}\{Corr(x,y)\}(δx​,δy​)=argmaxx,y​{Corr(x,y)}为非零。

3.3 基于LoG-Gabor滤波器的二值特征提取

…详情请参照古月居

经典文献阅读之--lris(优于Scan Context的回环检测)相关推荐

  1. 经典文献阅读之--NICE-SLAM(SLAM的神经隐含可扩展编码)

    0. 简介 对于深度学习而言,NeRF一定是最近两年最火的工作之一了,**NeRF(Neural Radiance Fields)**是最早在2020年ECCV会议上的Best Paper,其将隐式表 ...

  2. 货运服务网络设计:经典文献阅读笔记(3)复现Netplan

    **货运服务网络设计:经典文献阅读笔记(2)**提到说要把Crainic T G(1984年)文献使用的模型复现一下,但是文章给出的通用框架还是太笼统,在尝试后决定使用Jacques Roy & ...

  3. 经典文献阅读之--Swin Transformer

    0. 简介 Transfomer最近几年已经霸榜了各个领域,之前我们在<经典文献阅读之–Deformable DETR>这篇博客中对DETR这个系列进行了梳理,但是想着既然写了图像处理领域 ...

  4. 经典文献阅读之--PL-SLAM(点线SLAM)

    0. 简介 之前作者基本都在围绕着特征点提取的路径在学习,最近看到了最近点云PCL推送的<Structure PLP-SLAM: Efficient Sparse Mapping and Loc ...

  5. 经典文献阅读之--OV2SLAM(高速视觉slam)

    0. 简介 视觉里程计最近几年越来越受到学术界以及工业界的认可,以ORB和VINS为代表的视觉SLAM已经可以满足绝大多数场景,而OV2SLAM在其他VSLAM中脱颖而出,其实时性以及具体的回环性能在 ...

  6. Scan context: 3D点云的场景识别/回环检测

    作者丨铜离子c@知乎 来源丨https://zhuanlan.zhihu.com/p/214309563 编辑丨3D视觉工坊 回环检测,或者说场景识别问题,关键在于如何构建每个场景(图片/点云)的&q ...

  7. 经典激光slam配准及回环检测框架:ScanContext

    论文名称: Scan context: Egocentric spatial descriptor for place recognition within 3d point cloud map 论文 ...

  8. (回环检测)Scan Context++: Structural Place Recognition Robust to Rotation and Lateral Variations in Urba

    论文创新基本和之前一致,只是比之前表达更加规范化,此外添加了很多有趣实验验证,没有余力可以不看这篇论文,之前那篇看完就够了 摘要 位置识别是机器人导航中的一个关键模块.现有的研究路线主要集中在视觉位置 ...

  9. 经典文献阅读之--PON

    0. 简介 作为Transformer在机器视觉领域的爆火,在自动驾驶领域目前很多工作都集中在前视转鸟瞰图的方法中,这里我们来讲2020年一篇经典的论文<Predicting Semantic ...

  10. 经典文献阅读之--SuMa++

    0. 简介 作为一名技术博主,最主要的还是需要不断地学习新的知识,而最好的学习就是不断地阅读新的文章,并不断地学习和总结前人的思路和方法.所以博主打算开一个新的系列来介绍.这里主要来介绍一下<S ...

最新文章

  1. python 归一化_几种归一化方法(Normalization Method)python实现
  2. JSP中base href=%=basePath%作用
  3. c++图书管理系统_轻松学做C语言课程设计:图书管理系统-数组实现
  4. Xgboost算法原理详解及python实现
  5. element-ui中el-table的表头、内容样式
  6. 金属,塑料,傻傻分不清楚
  7. Myeclipse J2EE Project, 折腾死我了。
  8. python执行速度太慢为什么还_为什么你写的Python运行的那么慢呢?
  9. php宝宝起名,宝宝在线起名取名大全
  10. 强势入局,区块链专利将成为银行下一个战场?
  11. 使用CobaltStrike制作钓鱼网站
  12. 装饰者模式 增加功能;动态代理减少功能 只要完成自己部分功能 (繁杂部分交给他人处理)...
  13. 朴素贝叶斯实战:人群收入预测(基于美国人口普查收入数据)
  14. 嵌入式系统python开发_嵌组词_嵌的拼音含义_组词造句解释_嵌字的组词
  15. 【机器人学导论(第四版)】1-绪论
  16. ROS、OpenAI和Gazebo机器人与人工智能仿真与实践教研杂记(二)环境构建
  17. 判了!腾讯获赔 475 万!首例“微信自动抢红包”不正当竞争案宣判
  18. linux如何安装vi命令,Ubuntu 16.04 下 Vim安装及配置
  19. 03【Web】基础-JavaScript
  20. linux命令中的merge(2)

热门文章

  1. c语言常用延时程序,新手常用单片机延时程序
  2. 百度云智峰会 百度天像打造多媒体新生态
  3. PS标尺参考线拖不准问题
  4. 【回溯】有蹩脚的马踏棋盘——思路巨清晰!!!
  5. java 判断标点符号_Java判断中英文符号、标点的实现
  6. 东南大学计算机系分数,2017最新东南大学专业排名及分数线
  7. cents7+tomcat
  8. lol最克制诺手的英雄_LOL:最克制诺手的三个英雄,剑姬上榜,第一能打得诺手出不了塔...
  9. 269个JavaScript工具函数
  10. linux输入文件后clustalw,合并提取后的domain序列之后,linux系统中的clustalw不能读出蛋白信息...