SLAM算法分为三类:Kalman滤波、概率滤波、图优化

Kalman滤波方法包括EKF、EIF;概率滤波包括RBPF,FastSLAM是RBPF滤波器最为成功的实例, 也是应用最为广泛的SLAM方法;

SLAM分为Full SLAM和Online SLAM

常见的二维激光SLAM算法

1、GMapping is a highly efficient Rao-Blackwellized particle filer to learn grid maps from laser range data.

2、Tinyslam又称CoreSLAM
The advantage of DP-SLAM over CoreSLAM is thus the thoretical ability not to be lost in long corridors, and this
is the goal indeed of the map-per-particle concept - not the loop closing which can’t be achieved in DP-SLAM without an external process. As a matter of
fact, we decided that this advantage didn’t worth the complexity - especially as we could rely on a good odometry on our platform and given that our goal was to close rather small loops (exploring laboratories instead of corridors...).
As the idea of CoreSLAM was to integrate laser information in our localization subsystem based on particle filter.
 
3、DPSLAM works by maintaining a joint distribution over robot poses and maps via a particle filter. The algorithm associates a map to each particle, and focuses on the problem of sharing parts of maps among particles in order to minimize memory (and time through map copy). The problem with DP-SLAM is that it is rather complex to integrate into an existing particle filter based localization susbystem
 
4、Hector-SLAM
 
5、Karto-SLAM

http://www.zhihu.com/question/35116055/answer/62001013

http://blog.csdn.net/dourenyin/article/details/48055441

视觉SLAM算法

1、orbslam 是14-15年被一个西班牙博士做的,目前还在做,最近又发了新文章:Probabilistic Semi-Dense Mapping from Highly Accurate Feature-Based Monocular SLAM。
orbslam可以看做是PTAM的一个延伸。ptam想必做visual slam 的都知道,它是第一个将tracking和mapping分成两个线程实现的实时slam系统,07年出来的时候很惊艳。几乎成立后来feature-based slam方法的标准。orbslam 算是这个思路的延伸,于ptam相比它又加了一个loopclosing的线程。这个系统基于ptam,个人感觉效果也更好一些(毕竟ptam相对较老),整合了covisible graph,基于bagofwords 做relocalization等技术。

常见的一些开源代码(高博整理):[转载]
* rtabslam https://github.com/introlab/rtabmap_ros#rtabmap_ros
* ORB-slam https://github.com/raulmur/ORB_SLAM
* rgbd-slam-v2 https://github.com/felixendres/rgbdslam_v2
* lsd-slam https://github.com/tum-vision/lsd_slam
* dvo-slam https://github.com/tum-vision/dvo_slam
* hector-slam https://github.com/tu-darmstadt-ros-pkg/hector_slam
* svo https://github.com/uzh-rpg/rpg_svo

SLAM研究体系分类

SLAM学习笔记(2)SLAM算法的更多相关文章

  1. SLAM学习笔记 - 视觉SLAM方法资源汇总

    工具类: ros框架 linux系列教程     vim Eigen     Eigen快速入门 Pangolin  Pangolin安装与使用 数据集: TUM         数据格式 提供pyt ...

  2. ROS_RGB-D SLAM学习笔记--室内环境测试

    ROS_RGB-D SLAM学习笔记 RTAB-Map's ros-pkg. RTAB-Map is a RGB-D SLAM approach with real-time constraints. ...

  3. GMM高斯混合模型学习笔记(EM算法求解)

    提出混合模型主要是为了能更好地近似一些较复杂的样本分布,通过不断添加component个数,能够随意地逼近不论什么连续的概率分布.所以我们觉得不论什么样本分布都能够用混合模型来建模.由于高斯函数具有一 ...

  4. 强化学习-学习笔记7 | Sarsa算法原理与推导

    Sarsa算法 是 TD算法的一种,之前没有严谨推导过 TD 算法,这一篇就来从数学的角度推导一下 Sarsa 算法.注意,这部分属于 TD算法的延申. 7. Sarsa算法 7.1 推导 TD ta ...

  5. 【学习笔记】 Adaboost算法

    前言 之前的学习中也有好几次尝试过学习该算法,但是都无功而返,不仅仅是因为该算法各大博主.大牛的描述都比较晦涩难懂,同时我自己学习过程中也心浮气躁,不能专心. 现如今决定一口气肝到底,这样我明天就可以 ...

  6. SLAM学习笔记(1)基本概念

    SLAM (simultaneous localization and mapping),也称为CML (Concurrent Mapping and Localization), 即时定位与地图构建 ...

  7. SLAM学习笔记

    ORB_SLAM2源码: 获得旋转矩阵,来自这里:http://www.cnblogs.com/shang-slam/p/6406584.html 关于Covisibility图来自:http://b ...

  8. SLAM学习笔记 - ORB_SLAM2源码运行及分析

    参考资料: DBow2的理解 单目跑TUM数据集的运行和函数调用过程 跑数据集不需要ros和相机标定,进入ORB_SLAM目录,执行以下命令: ./Examples/Monocluar/mono_tu ...

  9. SLAM学习笔记(3)相关概念

    SIFT,即尺度不变特征变换(Scale-invariant feature transform,SIFT),是用于图像处理领域的一种描述子.这种描述具有尺度不变性,可在图像中检测出关键点,是一种局部 ...

随机推荐

  1. 修改ssh服务端口

    第一种: 01假如要改Linux SSH的默认端口(22),那么你只要修改:/etc/ssh/sshd_config中Port 22,这里把22改成自己要设的端口就行了,不过千万别设和现已有的端口相同 ...

  2. Key-Vlaue Coding Apple官方翻译

    今天是键值编码,网上有很多文章,可以百度.不太理解的就看官方文档吧 键-值编码 键值编码是一种运用字符串标识符来间接访问一个对象的属性和关系的机制.它尤其强化并关联了多种Cocoa编程的机制和技术,体 ...

  3. php连接redis数据库 操作redis任务队列

    首先你的安装phpredis扩展在你的服务器上 $redis = new Redis(); $redis->connect('119.29.10.xx',6379); $redis->au ...

  4. springMvc文件下载

    //主要看导入的是那些类 import com.ibm.db.service.ITopicService;import org.apache.commons.io.FileUtils;import o ...

  5. 采用HSV生成随机颜色

    使用hsv/hsb生成随机颜色,并排除靠近黑白两色的色值 public static String randomColor(){ int max = 25500000 ; Random rand = ...

  6. 语艺杂谈1 – MAP赋值与插入

    MAP赋值和插入,对于相同ID的处理方式不同,前者为替换 后者为插入失败 #include <map> #include <string> #include <iostr ...

  7. 详解在bash脚本中如何获取自身路径

    DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" 这是stac ...

  8. Visual Studio开发环境最佳字体及配色

    环境: Visual Studio 2010,(本人使用的windows 7) 字体:Fixedsys, 12pt,下载地址:http://www.fixedsysexcelsior.com 普通文本 ...

  9. 【转】Unity3D中脚本的执行顺序和编译顺序(vs工程引用关系)

    http://www.cnblogs.com/champ/p/execorder.html 在Unity中可以同时创建很多脚本,并且可以分别绑定到不同的游戏对象上,它们各自都在自己的生命周期中运行.与 ...

  10. SVM神经网络的术语理解

    SVM(Support Vector Machine)翻译成中文是支持向量机, 这里的“机(machine,机器)”实际上是一个算法.而支持向量则是指那些在间隔区边缘的训练样本点[1]. 当初看到这个 ...