1. 按处理图片的方式区分:
1.1 特征点法
PTAM、ORB-SLAM为代表。
步骤:1)提取特征点;2)根据特征点对不同图片进行匹配;3)根据视觉几何约束求出运动;4)通过最小化重投影误差优化结果。
优点:1)可以在非常多的图片之间寻找到特征匹配。
缺点:1)依赖特征点的效果,各个阈值需要很精巧地设定。2)需要剔除误匹配。3)特征点的优化往往是为了提高速度,带来的牺牲是特征点的鲁棒性。
1.2 直接法
LSD-SLAM、DSO为代表。
特点:1)直接用像素点的灰度值进行运算。特征法只用了特征点之间的距离信息,而直接法用了梯度大小及方向。直接法几乎使用了图片所有的信息,即使是很小的梯度值,所以针对少特征点的场景、相机不聚焦、运动模糊的情况,直接法的表现要好于特征法。2)特征法是最小化重投影误差,而直接法是最小化光度学误差(photometric error)。光度学误差的计算量要大于重投影误差。但是直接法省去了计算特征点和描述子的时间。3)更方便建立半稠密地图。
1.3 半直接法
SVO为代表。Tracking线程的三步,前两步用直接法最小化photometric error匹配,第三步用特征点法最小化重投影误差优化。
2. 点云的稠密程度区分:
2.1 稀疏法
PTAM、ORB-SLAM为代表,一般是特征点法。
2.2 稠密法:
DTAM、KinectFusion为代表,一般用RGBD相机,计算量很大,需要GPU并行。
2.3 半稠密法
LSD-SLAM、DSO为代表,一般用直接法得到,因为直接法可以利用图像中所有灰度值梯度明显的区域,这比特征点法提取的特征要稠密一些。如果是用特征点法,比如ORB-SLAM,则需要在把稀疏地图稠密化。
3. 按计算方式区分:
3.1 滤波法
Mono-SLAM为代表。
3.2 优化法
PTAM开始的一系列SLAM算法都是用优化法,主要原因是基于优化的算法比滤波法在单位计算时间可以得到更高的精度(参考文献:Strasdat H, Montiel J M M, Davison A J. Real-time monocular SLAM: Why filter?[C]//Robotics and Automation (ICRA), 2010 IEEE International Conference on. IEEE, 2010: 2657-2664.)
优化工具:
1) g2o
2) gtsam
3) ceres-solver
4) isam2
4. 按相机类型区分
4.1 单目
尺度未知、尺度漂移是个问题,往往结合IMU确定尺度。
4.2 双目(多目)
结合单目和RGBD的优点,一方面保持了设备的简单化,另一方面可以恢复尺度。
4.3 RGBD
一般是稠密重建。
5. 是否IMU融合:
典型项目:
1) MSCKF
2) OKVIS
3) ROVIO
4) HKUST VINS