1、最早的特征点法,并把定位与跟踪分为两个线程是PTAM(Parallel Tracking and Mapping for Small AR Workspaces)
可以说是特征点法SLAM的起源之一。
论文:http://www.robots.ox.ac.uk/~gk/publications/KleinMurray2007ISMAR.pdf
代码:https://github.com/cggos/ptam_cg
主页:http://www.robots.ox.ac.uk/~gk/PTAM/
论文解读博客:https://blog.csdn.net/u011178262/article/details/79315782
2、ORB_SALM在PTAN的基础上,将跟踪,建图,闭环检测,界面显示分为四个单独的线程进行。是目前最优秀的特征点法SLAM系统之一,当然后续也有很多的改进。
论文+代码:https://github.com/raulmur/ORB_SLAM2
3、由于原始的ORB_SLAM没有地图保存与加载功能,因此考虑添加此功能,实现地图的重复使用
博客:https://blog.csdn.net/qq_34254510/article/details/79969046
代码:https://github.com/BoomFan/ORB_SLAM2
此代码在ORB_SLAM的基础上添加了地图加载,与保存,可以实现重定位。效果非常棒,TUM数据集上可以运行,实际环境需要根据自己的相机配置一下,也是可以使用的.。
4、稀疏地图看起来效果不是那么直观,因此一种基于ORB_SLAM的半稠密地图构建出现了
论文:Probabilistic Semi Dense Mapping from Highly Accurate Feature-Based Method Monocular SLAM
博客:https://blog.csdn.net/heyijia0327/article/details/52464278
代码:https://github.com/HeYijia/ORB_SLAM2
看起来效果还是不错的,可是自己实现的时候好像并没有那么好的效果,有点不解。
5、由于ORB_SLAM2中添加了RGBD相机,因此可以考虑进行稠密场景的三维重建,下面是高博的博客与修改的代码
代码:https://github.com/gaoxiang12/ORBSLAM2_with_pointcloud_map
博客+kinectV2:https://www.cnblogs.com/gaoxiang12/p/5161223.html
博客+Xtion:https://blog.csdn.net/aptx704610875/article/details/51490201
这个效果还是很不错的,数据集上,实际设备均有效。主要就是pointcloudmapping.cc和pointcloudmapping.h这两个文件,可以试着自己根据ORB_SLAM2移植一下,还是很简单的。
6、还是高博修改的代码,结合SVO和ORB_SLAM2,跟踪速度输原来的3倍左右
代码:https://github.com/gaoxiang12/ORB-YGZ-SLAM
7、将ORB_SLAM加上IMU传感器,可以增强系统的稳定性,即VIORB(Visual-Inertial Monocular SLAM with Map Reuse)
论文:https://arxiv.org/pdf/1610.05949.pdf
代码:https://github.com/jingpang/LearnVIORB
此代码不是论文作者写的,原文并没有开源。该代码效果很不错,但是实时性略欠。高博也在ORB_SLAM的基础上开发了一个
立体的惯导SLAM,效果很不错,速度很快,模块化很强。
代码:https://github.com/gaoxiang12/ygz-stereo-inertial
8、针对于场景中的动态物体,为了消除动态物体的影响,DS-SLAM在ORB_SLAM的基础上进行了改进
论文:https://arxiv.org/vc/arxiv/papers/1809/1809.08379v1.pdf
博客:https://blog.csdn.net/pikachu_777/article/details/86479564
代码:https://github.com/ivipsourcecode/DS-SLAM
主要采用segNet和运动一致性进行动态特征检测。消除动态物体的影响,并构建稠密地图与八叉树地图
9、针对于场景中的动态物体,为了消除动态物体的影响,dynaSLAM在ORB_SLAM的基础上进行了改进
论文:https://arxiv.org/pdf/1806.05620.pdf
主页:https://bertabescos.github.io/DynaSLAM/
代码:https://github.com/BertaBescos/DynaSLAM
主要采用多视角几何与Mask_RCNN进行动态物体影响的消除,并构建静态地图。
10、一个功能十分完善的ORB_SLAM系统
代码:https://github.com/Ewenwan/ORB_SLAM2_SSD_Semantic
编译过程:https://github.com/Ewenwan/ORB_SLAM2_SSD_Semantic/issues/1
定位,建图,动态场景识别,稠密点云地图。八叉树地图,功能非常齐全了,自己编译后使用数据集测试,效果很不错!
11、结合ORB_SLAM和DSO的半直接松耦合SLAM
论文+代码:https://github.com/sunghoon031/LCSD_SLAM
DSO边缘化的关键帧作为特征点模块的入口,进行ORB_SLAM算法的系列操作。
12、采用深度学习提取ORB特征点,使得稳定性更强。
论文:https://arxiv.org/pdf/1902.11046.pdf
代码:https://github.com/jiexiong2016/GCNv2_SLAM
13、良好的特征匹配是一种增强模块,专为基于特征的BA SLAM而设计,例如ORB-SLAM2。与传统的批量特征匹配相比,良好的特征匹配的主要优点是更好地权衡性能效率。
代码:https://github.com/YipuZhao/GF_ORB_SLAM2