1、SLAM相关教材书目
——————入门——————

《视觉SLAM十四讲》★

《一起学习RGBDSLAM》

《自主移动机器人导论》

《ROS入门》

——————进阶——————

《概率机器人》

《计算机视觉中的多图几何》

《机器人学中的状态估计》

《机器人感知》

——————交叉领域相关——————

《机器学习》、《深度学习》 《PYTHON3X》、《点云库PCL》(倘若做语义地图方向,可能会有所涉及)

2.前期准备工作

SLAM系统可以分成以下几块:传感器数据,视觉里程计,后端优化,建图,以及回环检测。其中视觉里程计属于前端,后端优化包括非线性优化

同时我们也会接触一些数学理论和许多的编程知识,会用到Eigen,OpenCV,PCL,g2o,Ceres等数据库,掌握Linux操作系统中的使用方法。

推荐几个学习SLAM的书和资源。高翔博士的Slam14讲和他发表的一起学习RGBD-SLAM.能够快速地入门和学习,其他资源等到学习到之后,在和大家分享。

源代码托管在GitHub上:

https://github.com/gaoxiang12/slambook

对于SLAM的研究,我们需要具备:

1.      高等数学,线性代数,概率论等数学知识的积累;

2.      C++语言基础;

3.      Linux基础;

4.      ROS系统;

5.      Cmake,vim/emacs及一些编程工具;

6.      会用Eigen,OpenCV,PCL,g2o,Ceres等第三方库。

SLAM的研究根据学术大佬的的总结,可以说“花开五朵,各表一枝”.

1.      基础理论(Bsic Theroy);

2.      传感器(Sensor);

3.      建图(Mapping);

4.      回环检测(Loop Detection);

5.      高级问题(Advanced Topic).

SLAM算法实现,要考虑七个方面:

1.      地图标识问题;

2.      信息感知问题;

3.      数据关联问题;

4.      定位和构图问题;

5.      回环检测问题;

6.      探索问题;

7.      绑架问题。

3、学习策略
明确目标:对研究者而言,最紧迫的是用最少的时间和精力,写出足够水平的论文。

因此在学习SLAM的时候,切忌贪多求全、目的不明。

可参考以下学习流程:了解基础→会做→找点→去做自己的工作并写论文

①【了解基础】入门教材(《视觉SLAM十四讲》,理论了解+代码实践)

②【会做】已有的知名SLAM方法:

ORB SLAM,LSD SLAM,DSO SLAM,SVO SLAM

可以ORB SLAM为范本重点学习,看对应的论文+源代码,并去复现一遍。

③【找点】看一些新的知名期刊文献,寻找自己的研究点。该领域发展迅速,期刊论文上的成果一般较老,最新的会议论文和最新发布的开源代码可重点关注;此外,追踪关注一些知名课题组的研究成果。

在文献调研阶段,如需要,可穿插进行知识补充,一些需要深入了解的知识,在“了解基础”阶段只掌握了大概,可针对性地补充学习。

4.SLAM开源代码链接

MonoSLAM 单目 https://github.com/hanmekim/SceneLib2
PTAM 单目 http://www.robots.ox.ac.uk/~gk/PTAM/
ORB-SLAM 单目为主 http://webdiis.unizar.es/~raulmur/orbslam/
LSD-SLAM 单目为主 http://vision.in.tum.de/research/vslam/lsdslam
SVO 单目 https://github.com/uzh-rpg/rpg_svo
DTAM RGB-D https://github.com/anuranbaka/OpenDTAM
DVO RGB-D https://github.com/tum-vision/dvo_slam
DSO 单目 https://github.com/JakobEngel/dso
RTAB-MAP 双目/RGB-D https://github.com/introlab/rtabmap
RGBD-SLAM-V2 RGB-D https://github.com/felixendres/rgbdslam_v2
Elastic Fusion RGB-D https://github.com/mp3guy/ElasticFusion
Hector SLAM 激光 http://wiki.ros.org/hector_slam
GMapping 激光 http://wiki.ros.org/gmapping
OKVIS 多目+IMU https://github.com/ethz-asl/okvis
ROVIO 单目+IMU https://github.com/ethz-asl/rovio

5.学习参考

博客链接:https://blog.csdn.net/electech6/article/details/82597882

半闲居士博客链接:https://www.cnblogs.com/gaoxiang12/p/4633316.html

SLAM14讲笔记博客链接:https://blog.csdn.net/dahailuoa6/article/details/90675711

SLAM学习策略和前期准备相关推荐

  1. 最新语义视觉SLAM综述:面向应用的移动机器人自主导航解决方案

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 论文名称: A survey of image semantics-based visual simu ...

  2. AAAI 2021 | 用于旋转目标检测的动态锚框学习策略

    点上方蓝字计算机视觉联盟获取更多干货 在右上方 ··· 设为星标 ★,与你不见不散 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:AI科技评论 AI博士笔记系列推荐 周志华<机器学习& ...

  3. 三维空间刚体运动5:详解SLAM中显示机器人运动轨迹及相机位姿(原理流程)

    三维空间刚体运动5:详解SLAM中显示机器人运动轨迹及相机位姿(原理流程) 一.显示运动轨迹原理讲解 二.前期准备 三.git管理子模块及克隆源代码 1.学习使用Git Submodule 2.克隆源 ...

  4. 参加第一届“SLAM技术及应用”暑期学校暨研讨会和全国SLAM技术论坛有感

    哈哈,先是一段官话啦! 2018年7月24日至7月27日,第一届"SLAM技术与应用"暑期学校与研讨会在浙江紫金港校区的蒙民伟楼225报告厅成功举行.本次暑期学校由浙江大学CAD& ...

  5. 一起自学SLAM算法:11.5 强化学习与自主导航

    连载文章,长期更新,欢迎关注: 写在前面 第1章-ROS入门必备知识 第2章-C++编程范式 第3章-OpenCV图像处理 第4章-机器人传感器 第5章-机器人主机 第6章-机器人底盘 第7章-SLA ...

  6. 从零开始跑ORB_SLAM2(一) 前期准备与环境配置

    前期准备 工作环境: PC:i5-8265U 8GRAM 核显 弟弟CPU 相机:Intel-Realsense D435 环境:Ubuntu16.04 LTS+ ROS Kinect 如何安装Ubu ...

  7. SLAM综述阅读笔记六:基于图像语义的SLAM调研:移动机器人自主导航面向应用的解决方案 2020

    转自[[论文阅读]A survey of image semantics-based visual simultaneous localization and mapping 语义视觉SLAM综述 - ...

  8. 从零完成slam实战,以Vins-Fusion为例

    写在前面 1.本文以vins-fusion为例,是因为其框架正统.简单清晰,易于调试和后续改进:camera-imu外参及同步时间td可实时估计:已有融合gps方案且较为容易可添加融合其它传感器. 2 ...

  9. SLAM图优化g2o

    SLAM图优化g2o 图优化g2o框架 图优化的英文是 graph optimization 或者 graph-based optimization, "图"其实是数据结构中的gr ...

最新文章

  1. 解析激光雷达中时序融合的研究现状和发展方向
  2. cocos2d-x游戏循环与调度
  3. SAP S/4 Hana On-premise Edition 1511做了哪些简化
  4. jsp工程防止外部注入_防止 jsp被sql注入的五种方法
  5. 2019长江课堂作业答案_“绝户网”捕捞长江鳗鱼苗 检察机关:“全链条”担责...
  6. 虚拟机vCPU和vNUMA调整大小-经验法则
  7. 20一个自定义集合的自述
  8. 机器学习的数学(三)范数的简单介绍
  9. STM32之红外接收
  10. struts2架构网站漏洞修复详情与利用漏洞修复方案
  11. Google开源Live Transcribe的语音引擎
  12. Tree-shaking
  13. BUUCTF MISC刷题笔记(五)
  14. 数据库是什么,它是做什么用的?
  15. (调试)图像调试基本术语
  16. 为什么抖音张同学这么火爆?用 Python 分析 1w+条评论数据,我发现了其中的秘密
  17. 编写游戏开始界面与结束提示(含素材视频教程)
  18. 简简单单做一个带过期时间的内存缓存
  19. c语言输入123输出112233,C语言程序的设计 第3章 程序语言基础1.pdf
  20. spring占位符无法替换的报错排查

热门文章

  1. 前端获取本机ip_前端开发者必须明白的浏览器工作原理
  2. icpc西部区域赛_信息学子在ACMICPC 2020中国(西部)大学生程序设计竞赛中喜获佳绩...
  3. linux参考文献_linux常用指令
  4. linux spf13 vim安装,Linux 下安装 spf13-VIM
  5. python循环练习_Python循环练习
  6. Swagger:后端文档生成工具
  7. Swiper4.5在vue项目中的使用方法
  8. js (查重)键值对数组(一维数组),并归类计数
  9. phpcms底部版权信息修改教程——修改“开发团队”信息
  10. ubuntu安装python3.6_Ubuntu16.04安装python3.6.5步骤详解