学习SLAM需要哪些预备知识？
SLAM涵盖的东西比较多，分为前端和后端两大块。前端主要是研究相邻帧的拼接，又叫配准。根据传感器不一样，有激光点云、图像、RGB-D拼接几种，其中图像配准中又分基于稀疏特征(Sparse)的和稠密(Dense)的两种。后端主要是研究地图拼接(前端)中累积误差的校正，主流就两种，基于概率学理论的贝叶斯滤波器（EKF，PF）以及基于优化的方法。EKF已经用得很少了，PF也就在2D地图SLAM（Gmapping）中用得多，大多还是用优化的方法在做。 你自己已经说了这块需要的知识，一个是数学，一个是编程。所以入门的话，也从这两块开始弄。 一、数学方面 数学的话，建议楼上说过的Thrun的《probabilistic robotics》，其实不需要全部看完，了解下概率学是如何解决机器人中的问题的，关键学习贝叶斯滤波，也是就是贝叶斯公式在各个问题(定位，SLAM)中的应用。另外，优化的话，建议先把最小二乘优化中给弄透彻，数学推导要会，因为很多问题，最后都是归结到最小二乘优化，然后就是梯度下降、求Jacobian之类的。 二、编程方面 理论的东西是比较无聊的，必须得实战。建议入门先写一发最小二乘优化，可以就做一个简单的直线拟合，不要用Matlab中的优化工具，了解数学推导最后是怎么写到代码里面的。然后，一定要玩好Matlab优化工具包，做实验最方便了。 有了一些基础之后，可以尝试玩一些现有的SLAM包，推荐两个地方，一个是www.openslam.org，里面有各种SLAM包，主流的SLAM算法，在这一般都有源码。另外一个就是ROS了，里面有很多现成的SLAM包，像Gmapping，RGB-D SLAM，上手非常快，甚至你没有任何设备，你也可以利用ROS中的仿真环境（如Gazebo）跑。建议先试试Gmapping，百度上有很多中文教程，一开始跑这些package还是很涨成就感的，可以提高你的兴趣。 如果你是做视觉或者RGB-D，那么OpenCV和PCL是必不可少的工具。早点上手肯定没得错。 三、进阶 大体入门之后，你就需要根据你实验室研究的项目来学习了，看是用激光、相机、还是Kinect来做了，不同传感器的前端算法还是有些差距的。激光的话一般是ICP，相对简单。视觉的东西还是比较多的，楼上推荐《Multiview Geometry in Computer Vision》确实很重要，不过，我觉得这同时你还应该了解特征提取、特征描述子、特征匹配这些东西。如果你们实验室做的Dense registration，那你还得学李代数那些东西（高大上啊，神马李群看好多天都看不懂啊！！！）。其实，很多算法都有开源包，你可以去ROS、一些大神博客、牛逼实验室主页中多逛逛。 四、学渣只能帮你到这了，再后面就不会了，再往后就得找真大神了。
@鲁灵犀答主主要说的是基于视觉的bundleadjustment的方法，我倒是觉得如果是入门的话，首推《probabilistic robotics》.私以为这是一本所有做自主移动机器人的都应该好好读的书。作者从运动模型到感知模型，逐步建立了slam的虑波器方法，包括externed kalmen filter 和particle filter.当然在十一章作者也介绍了图优化的理论。当然啦，急于优化理论做视觉slam,sfm,<multiple view geometry in computer vision>是圣经,不过还需要些计算机视觉的基础知识，特征提取啊，图像金字塔之类的。 放张图片搞个笑。 ps我也做视觉slam。 虑波器方法是最早用来做slam的方法，它讲slam理解成一种估计问题。有系统的理论，适合入门打基础。现在比较就行的是优化方法，做视觉的话，还分为rgbd，stereo,monocular等方案。 推荐 几篇文章： SimultaneousLocalisationandMapping(SLAM):Part 1 SimultaneousLocalisationandMapping(SLAM):Part 2 这两篇文章主要介绍，slam问题的模型，以及滤波器方法，适合入门 做visual slam的话，推荐visual odometry part 1和part 2 visual odometry 和 visual slam基本是同质的问题，只不过关注的点各有侧重，odometry注重的是当前实时性，slam 注重的是全局的优化。这两篇文章归纳了做odometry（slam）的三种主流的feature-based算法： 1.2D-to-2D correspondences 2.3D-to-3D correspondences 3.2D-to-3D correspondences 其中3最流行，包括07年的ptam，最近的orbslam等。 另外，去年到今年，基于appearance-based的方法也出现了很多令人印象深刻的作品，如Dtam，svo，lsdslam等