slam1:激光slam,视觉slam,滤波

slam:定位与建图。

入手SLAM有2个月了,但是还是没入门,只是跑了一下别人的例子,但是想更改就显得十分困难,所以我现在在一步步深入。

1.几个蒙蔽:

首先slam有好多算法,撇开视觉slam,我现在是在用激光雷达做激光slam,但是网上的大多都是视觉slam,所以对于使用激光雷达的我。。。。ROS里的gmapping包构建地图用的是RBPF,书《slam for dummies》用的是EKF,还有什么卡尔曼滤波,看了一天的博客,别人推荐的几个关键算法的论文也有几个,代码openslam网站上也有一大堆,还有一个google开源的slam demo,前几天还听大神交流什么什么开环闭环的问题,我一脸蒙蔽,我得一一将其理清楚,比较其他几个博客所说的,逐步辨别真伪。

得先从slam的历史入手,摸清楚各个阶段slam的数学、算法表示以及相应的代码。

2.slam历史:slam和滤波即定位与建图和滤波有啥关系?和图优化呢?

2.1 根据http://www.leiphone.com/news/201609/iAe3f8qmRHXavgSl.html,

早期,R.Smith把slam当成一个滤波的问题。

SLAM最早的提出者R. Smith把SLAM建构成了一个EKF(Extended Kalman Filter,扩展卡尔曼滤波)问题。他们按照EKF的形式,把SLAM写成了一个运动方程和观测方式,以最小化这两个方程中的噪声项为目的,使用典型的滤波器思路来解决SLAM问题。“

运动方程:

当一个帧到达时,我们能(通过码盘或IMU)测出该帧与上一帧的相对运动,但是存在噪声,是为运动方程。

观测方程:

同时,通过传感器对路标的观测,我们测出了机器人与路标间的位姿关系,同样也带有噪声,是为观测方程。

通过这两者信息,我们可以预测出机器人在当前时刻的位置。同样,根据以往记录的路标点,我们又能计算出一个卡尔曼增益,以补偿噪声的影响。”

“于是,对当前帧和路标的估计,即是这个预测与更新的不断迭代的过程。

21世纪后:

"21世纪之后,SLAM研究者开始借鉴SfM(Structure from Motion)问题中的方法,把捆集优化(Bundle Adjustment)引入到SLAM中来。优化方法和滤波器方法有根本上的不同。它并不是一个迭代的过程,而是考虑过去所有帧中的信息。通过优化,把误差平均分到每一次观测当中。在SLAM中的Bundle Adjustment常常以图的形式给出,所以研究者亦称之为图优化方法(Graph Optimization)。图优化可以直观地表示优化问题,可利用稀疏代数进行快速的求解,表达回环也十分的方便,因而成为现今视觉SLAM中主流的优化方法。"

2.2根据http://www.opencv.org.cn/forum.php?mod=viewthread&tid=37672

单目视觉SLAM方法在是否引入概率框架方面分为基于概率框架的方法和基于非概率框架的方法。其中前者的代表方法是基于Kalman滤波(KF)的方法,基于粒子滤波(PF)的方法等;后者的代表方法是基于关键帧和稀疏捆绑调整优化的方法,基于图优化的方法等。
采用概率框架的方法的思路大致为:假设从初始时刻到当前 时刻的观测数据和控制输入已知,那么就可以联合后验概率来构建一个后验概率密度函数,这个函数用来描述相机姿态和地图中的特征的空间位置,进而通过递归的贝叶斯滤波算法来对构建的概率密度函数进行估计,从而完成SLAM问题的解决。在基于KF的方法中,假设满足高斯分布并且系统的非线性较小时可以得到不错的效果,另外从后验概率的不同可以分为EKF-SLAM方法、扩展信息滤波(EIF)方法、UKF-SLAM方法、SEIF方法等,例如,Davison等提出的单目视觉SLAM系统(MonoSLAM)和Roussillon[提出的实时单目视觉SLAM系统(RTSLAM)就是建立在扩展卡尔曼滤波(EKF)的基础上的。再基于PF的方法中,主要有Doucet[7]提出的基于Rao-Blackwellized粒子滤波器(RBPF)的方法和在此基础上Montemerlo[8]提出的FastSLAM方法等,其中FastSLAM方法可以用于非线性的系统。基于概率框架的方法的计算框架类似,其中基于EKF的单目视觉,一般可以分为运动模型和观测模型并在HMM的假设下可以实现系统状态的预测和观测更新。地图也可以在线更新,但是这种方法多采用增量式的地图创建方法,故在系统不稳定和观测的不确定性的影响下造成误差的累积,在大规模场景时会导致最终地图的不一致性,难于保持准确度和鲁棒性。
        在非概率框架的方法中 Klein 等在基于关键帧的基础上提出的 PTAM 系统 Parallel Tracking andMapping ), 该系统会在后文给出详细的分析和优化措施。基于图优化的 SLAM 方法 [9] 在采取了全局优化的基础上,在大规模场景下可以取得好的效果。在国外,基于图优化的方法大都被划分为前端和后端的问题,






未完待续。。。

你可能感兴趣的:(SLAM)