经典论文回顾 - RGB-D SLAMv2 : 3D Mapping with an RGB-D Camera
前言
本文属于 RGB-D SLAM v2 的论文,2013年发表于机器人领域顶级期刊 TRO。
一作Felix Endres,导师团都是大牛:弗莱堡大学 Wolfram Burgard 教授, 也是书籍《概率机器人》的作者; Daniel Cremers则是 慕尼黑工业大学机器人实验室的大佬。
鉴于该文章属于经典文章,本文不像以前文章那番做详细的翻译式分析,更多是站在当代角度,如ORBSLAM2已经大火的年代,去回顾这篇文章的早期特点,思考和讨论一些将来的发展方向。
核心内容
简要整理该系统特点如下:

特征点提取
提取特征点,并以描述子匹配,两帧之间建立联系后求解变换。对变换应用EMM模型判断有效性,满足条件则加入图优化,否则作为无效剔除。
特征点不唯一,作者验证了 ORB, Surf, SIFT等,实际是time-accuracy tradeoff。其中SIFT运算量要求最高(需要GPU),但效果最好。ORB则最快,效果差一些。
鲁棒性考量
EMM模型,考虑在该变换下,其中一帧的点投射到另一帧,属于遮挡/可视/匹配关系。通过对每个点假设检验评估有效,统计有效比例来计算该transform是否有效。
此外鲁棒性还在图优化中体现,对于优化后误差仍然过高的边,将直接剔除并继续优化。
建图部分
使用 Voxel存储一个为移动机器人路径规划的地图。使用 OctreeMap 紧凑存储。
然而建图模块独立,应用SLAM的定位结果,建图部分并不辅助SLAM
VoxelMap的弊端: 除非从头开始重建该地图,发生回环后产生的巨大轨迹校准,无法在地图中更新。
回环检测
作者引入关键帧,以及基于图的一种随机搜索,设定3个参数来确定每帧回环的搜索范围
该模块平行运行

精度效果

简直是教科书式的细致。本文2013年SLAM还刚起来,benchmark也不完善,这个老哥身先士卒提出一些完整的评价方式,比如表格里的各种 median, max ... 然而后面大家似乎都是堆RMSE完事。
细节讨论
关于 Voxel-Map
该地图一般只用于建图。
产生大回环后, Voxel-Map 是无法实时更新的,换句话说,地图只能添加信息,不能修改已有信息。因此这一点:
1) 动态环境/变化 无法快速增删。
2) 前期不准的累积误差将一直保留在地图中,即无法在不从头重建的情况下维持"全局一致"
实验效果评估
1) 部分地区抖动比较厉害
2) 部分产生大偏移,虽然后面会回去。
其他
该代码作为号召SLAM可复现的先锋,完全开源。

