关于视觉SLAM中特征点法,光流法和直接法的区别和理解
视觉SLAM中特征点法,光流法,直接法的区别和理解
1.特征点法
简介:顾名思义,特征点法就是对图像提取特征,对图像特征进行跟踪的过程。
有关特征点的介绍:
特征点一般包括了两部分:关键点和描述子
常用特征点:SIFT,SURF,ORB等
关键点:通过对图像取不同响应值得到的,如各种角点:例如最出名的FAST角点(ORBSLAM中所使用的特征点类型),Harries角点等
描述子:描述图像关键点的信息,如BRIFE描述子就可以轻量化的完成对关键点的信息记录,如在ORBSLAM(ORB=FAST角点+BRIFE描述子)当中,旋转不变性是由光度质心不变原理解决的,尺度不变性是由金字塔来解决的。
特征点在SLAM系统中的作用如下:
前端视觉里程计:通过匹配特征点求取位姿变换,从而估计相机位姿,
后端优化:通过非线性优化的方法或者扩展卡尔曼滤波(EKF)通过路标点(特征点)对位姿进行进一步的优化。
回环检测:在有回环检测的情况下,可以通过FAB-MAP建立的特征点词袋(一类特征点通过聚类形成的一个包),对机器人是否检测回环进行判定。
特征点法的优缺点:(相对于其他算法的比较)
优点:
1.理论成熟,研究和应用也是最广泛的,如ORBSLAM。
2.通过特征点建立的词袋(如FABMAP通过视觉特征进行聚类得到的特征点簇可以记作一个词,通过判定词的有无来判定是否回环),可以进行回环检测的判定。
3.基于特征点的算法,由于有描述子可以很稳定且鲁棒的对于视觉的特征进行描述,所以其不易受到光照的影响
缺点:
1.对无纹理或者弱纹理会出现特征点匹配困难,比如管型腔体内,白色的墙面
2.关键点和描述子消耗计算资源比较大,实时性不高。
3.图像利用率不高,除了特征点其他点几乎对于SLAM系统没有太大贡献。
2.光流法和直接法
简介:把这两个放在一起讲是由于这两个直接法其实是由光流法演变过去的,它们都有一个共同而强烈的假设:光度(也可以叫做灰度)不变性。
光流法可以通过跟踪关键点(可以是FAST角点,没有描述子)来优化使得图像当中的两个对应的位置光度误差最小来估计相机的运动。
直接法相当于在这个基础上对前面估计的相机位姿进行进一步优化,因为这样的位姿很难保证全局最优性,例如在SVO(稀疏直接法)中,会对过去估计好的位姿通过用过去已经收敛的插入的地图点进行进一步全局的位姿优化。这使得位姿的估计更加的准确和鲁棒。
优点:
1.计算量小,实时性高。如SVO2.0的位姿估计算法在I7的平台上可以实现400帧每秒的速度
2.通过直接法的方式可以不需要有明显的纹理特征,只要一副图像当中有灰度变化即可,在没有特征点的时候甚至可以随机取点.
3.图像的利用率较高,可以利用这一点对图像进行半稠密或者稠密的重建。
缺点:
由于强烈假设的原因,对于图像的光度变化比较敏感
单纯图像的梯度来求取位姿的话,由于图像的非凸性,容易陷入局部最优
目前的直接法如SVO可能设计回环检测比较困难,不过高博士对DSO做了一个回环检测的内容具体还没看,有兴趣的可以参考https://vision.in.tum.de/research/vslam/ldso
总结
在视觉SLAM中,特征点法和直接法都是视觉SLAM中非常重要的组成部分,特征点法通过最小化重投影误差来计算相机位姿与地图点的位置,而直接法则最小化光度误差(photometric error)。所谓光度误差是说,这个最小化的目标函数,通常由图像之间的误差来决定,而非重投影之后的几何误差。
ps:
第一次写博客,可能文章不是非常谨慎,有问题或者疑问的地方希望大家可以多多评论和私信哦,我会及时回复的。
常用SLAM框架的论文我放到这里了,有需要的小可爱可以下载链接:https://pan.baidu.com/s/149hZE9Ql5dv0pMVBjTGY_A
提取码:1r85
这是我做SLAM的看论文的一些汇总,希望可以一键三连哦
有关直接法SVO的解析可以看这篇博客,讲解的很好,包括公式的推导和程序的解析都比较有帮助:https://blog.csdn.net/heyijia0327/article/details/51083398
参考文献:
[1] 高翔、张涛《视觉SLAM十四讲》
[2] Ra´ul Mur-Artal and Juan D. Tard´os. ORB-SLAM2: An Open-Source SLAM System for Monocular, Stereo,and RGB-D Cameras.[J] IEEE TRANSACTIONS ON ROBOTICS VOL. 33, NO. 5, OCTOBER 2017
[3] Christian Forster et al. SVO: Semidirect Visual Odometry for Monocular and Multicamera Systems.[J]. IEEE TRANSACTIONS ON ROBOTICS,VOL. 33, NO. 2, APRIL 2017
[4].[https://blog.csdn.net/heyijia0327/article/details/51083398]
原文链接:https://blog.csdn.net/LEAVESJUN/article/details/111502852