SLAM课程:
1、http://ais.informatik.uni-freiburg.de/teaching/ws15/mapping/ (https://www.youtube.com/watch?v=U6vr3iNrwRA&index=1&list=PLgnQpQtFTOGQrZ4O5QzbIHgl3b1JHimN_)
2、http://www.doc.ic.ac.uk/~ajd/Robotics/index.html ——Andrew Davison (Imperial College London)
3、https://webdocs.cs.ualberta.ca/~zhang/c631/——主要以作业为主 (
University of Alberta)
4、高翔博士(http://www.cnblogs.com/gaoxiang12/p/5762702.html)--泡泡机器人
本贴整理了我先前做过的一些报告,以便读者查询:
- SLAM基础知识(q群直播):ppt&录像: http://pan.baidu.com/s/1boD9yVH
- SLAM基础知识(加长版),2016ROS暑期学校@华东师大,ppt和录音:http://www.robotics.sei.ecnu.edu.cn/ros2016/prog.html
- 直接法的理论与实现(斗鱼直播),ppt:http://pan.baidu.com/s/1dE2cspF,录像:[稍后上传]
- 非线性优化与g2o(斗鱼直播),ppt:http://pan.baidu.com/s/1hrY0oaK 录像:http://pan.baidu.com/s/1c2qPdle
- caffe简介(斗鱼)[稍后上传]
此外:
- slamcn.org也是我和朋友们一直在维护的网站。
- http://space.bilibili.com/38737757 是泡泡机器人公开课的b站主页。--视频
……
参考书籍:
1、“
Probabilistic Robotics”——
http://www.probabilistic-robotics.org/
2、“slam for dummies”
3、“Introduction to Estimation and Data fusion_Slides”
4、《视觉SLAM十四讲》by 高翔——相关学习笔记:http://blog.csdn.net/youngpan1101/article/category/6716830
入门篇:(摘自:http://blog.csdn.net/hiddleson/article/details/25914569)
1. Andrew Davison的课程: http://www.doc.ic.ac.uk/~ajd/Robotics/index.html
AD在在week 8里面推荐了slam的两个入门 Tutorial 1 和Tutorial 2
2. Tutorial的两篇文章文笔灰常秀丽,但是不操作还是云里雾里:
所以这里有一个瑞士苏黎世理工的学生练习 (http://www.csc.kth.se/~kootstra/index.php?item=313&menu=300)
大家把excise 3:SLAM(EKF)做了,也就差不多了解些slam的原理了
关于练习3的答案,我过几天上传好, 答案
3. 对于我这个学渣来说,EKF其实还是比较难理解,所以推荐一本书,详见第三章,学霸无视
KF、PF等滤波Matlab示例代码(http://studentdavestutorials.weebly.com/)
二、现有资源
1. OpenSLAM:https://openslam.org/
这个网站中含有很多slam方面的资料,编写的程序也各有不同,很权威
2. Kitti这个图库,大家可以下载做simulation:http://www.cvlibs.net/datasets/kitti/
3. 个人感觉exercise 3练习后,可以选择 Javier Civera 的程序进行试手,感觉灰常不错。注意对calibration的调整
http://webdiis.unizar.es/~jcivera/code/1p-ransac-ekf-monoslam.html
4. 对于JC的1p RANSAC-monoSLAM有一定了解了,可以试试用SURF去实现
这里有个南理工哥们的论文还不错,可以参考 http://cdmd.cnki.com.cn/Article/CDMD-10288-1012319519.htm
三、有用的书籍
1. Multiple View Geometry in Computer Vision Second Edition ,http://www.robots.ox.ac.uk/~vgg/hzbook/
计算机视觉方面大神级别的书,也有中文版,点此下载中英文双版
2. Robotics Vision and Control , pdf下载:http://robotics.itee.uq.edu.au/~metr4202/tpl/Robotics%20Vision%20&%20Control.pdf
通过MATLAB几乎把机器人学给贯穿了,里面每章节都有对应的Code,关于里面Matlab的codes,需要留言
澳大利亚昆士兰理工大学的Peter Corke是机器视觉领域的大牛人物,他所编写的Robotics, vision and control一书更是该领域的经典教材
配套有matlab工具箱。工具箱分为两部分,一部分为机器人方面的,另一部分为视觉方面的工具箱
源代码都是开放免费下载的: http://petercorke.com/Toolbox_software.html
3. Probabilistic Robotics. 这本书是导师推荐的
他说这本书的理解要有很好的数学基础,大神一定要读,很多不懂的都会柳暗花明
http://www.probabilistic-robotics.org/
一些专业站点:
1、
a) OpenSLAM
http://openslam.org/——这个网站中含有很多slam方面的资料,编写的程序也各有不同,很权威
b)
http://www.mrpt.org/——
mobile robot programming toolkit非常好的东西
c)ROS+SLAM
http://wiki.ros.org/rgbdslam
http://wiki.ros.org/gmapping
2、
RGB-D SLAM Dataset and Benchmark
http://vision.in.tum.de/data/datasets/rgbd-dataset
3、单目SLAM
http://vision.ia.ac.cn/Students/gzp/monocularslam.html
http://www.cs.unc.edu/~welch/kalman/——卡尔曼滤波
4、Computer Vision Algorithm Implementations
http://www.cvpapers.com/rr.html
5、http://slamcn.org/index.php/
博客:
1、从零开始学SLAM( http://blog.csdn.net/hiddleson/article/details/25914569)
2、 http://blog.csdn.net/iamsheldon/article/details/6895026 (待分析)
1. http://www.openslam.org/
2. http://www-personal.acfr.usyd.edu.au/nebot/victoria_park.htm 经典数据库
3. http://babel.isa.uma.es/mrpt/index.php/Main_Page 2008年开始陆续出现了一些好文章.
4. http://cres.usc.edu/radishrepository/view-all.php 包含了大量的用于验证SLAM算法的数据.
5. http://robots.stanford.edu/papers.html Standford 研究团队
6. http://www.isa.uma.es/C13/jlblanco/default.aspx 西班牙的一个博士生.编程能力极强. 另外Jose Neira带领的团队也比较猛.
7. http://cml.mit.edu/~jleonard/ 麻省理工的一个团队,参加了DARPA的智能车挑战赛。目前主要从事水下SLAM的研究。
另外现在的利用飞机采集数据,研究SLAM是目前的一个热点。最近几年,理论上的突破已经很有限。大量研究者开始转向视觉SLAM。
代表人物牛津大学的Andrew Davison (http://www.doc.ic.ac.uk/~ajd/)
几个牛人:
1. Tim Beily 及所在的 悉尼大学一些研究者
2.Giorgio Grisetti;Cyrill Stachniss;Wolfram Burgard; (GridMapping 算法,及概率机器人一书作者)
3. ;M. Montemerlo; Dirk Haehnel; Sebastian Thrun; (FastSLAM创始者,理论水平和实际应用能力非常强)。参加过DARPA的智能车挑战赛,取得最好成绩。
4. Austin Eliazar; Ronald Parr; (DP-SLAM创始者,从文章到数据,程序都公开的牛人)
http://www.cs.duke.edu/~eliazar
http://www.cs.duke.edu/~parr
5. 以 Jose Neira和Jose luis Blanco为代表的一批西班牙学者.
6. Andrew Davison 视觉SLAM 领域的权威。
7.John Leonard 侧重于 应用。目前主要在做水下SLAM的项目。参加过DARPA的智能车挑战赛。
http://cml.mit.edu/~jleonard
8、“why-slam-matters-future-of-real-time” http://www.computervisionblog.com/2016/01/why-slam-matters-future-of-real-time.html
来源: >
摘自:《http://www.cnblogs.com/jian-li/p/4472499.html》
教材
程序设计
- c++
- 《The C Programming Language》
- 《深入理解计算机系统》
- 《c和指针》
- 《linux程序设计(第四版)》
编程
- Linux下项目阅读神器与方便的开发环境
c++开发环境配置、matlab开发环境配置、ros开发环境配置、cmake,make项目,qtcreator项目
- 计算机组成原理,计算机体系结构,操作系统,并行编程
- 编译原理
- 并行计算
理论基础
- State estimation
- linear solver
- Multiview geometry
- Probabilitic robotics
SfM
SLAM
框架
数学工具
vSLAM
下面一张图是slam的分类:
- 传感器介绍:
- IMU介绍
vslam 主要使用的传感器包括三种:(1)rgbd相机;(2)单目相机;(3)双目相机。
各种传感器的主要的优劣:
- rgbd相机(1)优点:在于能够直接rgb图像和深度图像,不需要额外的算法计算深度信息;(2)缺点:rgbd相机由于红外相机的功率问题,容易受到太阳光的干扰,无法在室外使用。各种rgbd相机的参数我会在后面的文章中给出。
- 单目相机:(1)优点:单目相对于rgbd相机和双目相机没啥优点,毕竟rgbd相机有一个rgb和一个深度相机,怎么样都不会比单目差吧。。而双目相机有两个rgb相机,唯一的优点可能是单目相机价格相对便宜,而且能够容易获得,比如手机呀,pad等,都有单目相机,也就有很多人用手机和pad做单目的slam。(2)缺点:无法直接获得深度信息,用单目进行slam缺少尺度信息,slam的过程中也会存在尺度漂移的问题。
- 双目相机:(1)优点:能够获得深度信息,能够使用在室外和室内的情况,不存在rgbd相机的问题;(2)缺点:有些器件需要同步两个相机,深度大的地方深度的误差较大,很远的时候退化成单目(简单的讲就是左右两个相机看到的都是一样的)。
- 各种传感器slam的项目罗列:
- RGB-D相机
(1) washington university 华盛顿大学的rgbdslam,经典的方法和理论介绍[1]。
(2) kinfu 某位大牛根据kinectfusion的论文自己写的rgbdslam,模型非常的精细。
(3) rgbdslam Endres大大写的slam,经典的方法。
- rgbdslam各个模块资料
TODO:上面列的各个slam算法
- vo方法
- 闭环检测方法
- 图优化
(1)GTSam
(2)Ceres
(3)TORO: Tree-based netwORk Optimizer
(4)g2o
- 单目相机资料
- tvl1_optical_flow
- A Multi-scale Approach to 3D Scattered Data Interpolation
with Compactly Supported Basis Functions
- Ptam
激光SLAM
- 2d laser slam
- 传感器原理介绍
- 2d laser slam算法
这里介绍常见的3种算法,gmapping算法需要给出轮式里程计的数据,而hector slam则不需要轮式里程计,只用激光雷达就可以进行slam,karto slam也需要轮式里程计的数据。
gmapping:基于particle filter的方法
hector slam:只有前端scan matching的方法
TODO:写一篇关于原理和代码分析的博客。
karto slam:基于图优化的方法
前端配准的文章,后端优化的文章
TODO:原理分析,代码分析
- icp算法原理分析与代码介绍
- libpointmatcher:高效的3d lidar处理库
-
ICPCUDA
- 3d laser slam
- 激光
- viametris
- slam6d
-
blam
international lidar forum
博客
编程库
期刊
其他库
python topography plot
robotics
计算机视觉
famous cv labs or website
- computer vision research group
- 他人整理的资料
computer vision
比赛
IMAV
摘自:https://github.com/kanster/awesome-slam
Simultaneous Localization and Mapping, also known as SLAM, is the computational problem of constructing or updating a map of an unknown environment while simultaneously keeping track of an agent's location within it.
News
- For researchers, please read the recent review paper, Past, Present, and Future of Simultaneous Localization And Mapping: Towards the Robust-Perception Age, from Cesar Cadena, Luca Carlone et al.
Table of Contents
Books
- State Estimation for Robotic -- A Matrix Lie Group Approach by Timothy D. Barfoot, 2016
- Simultaneous Localization and Mapping for Mobile Robots: Introduction and Methods by Juan-Antonio Fernández-Madrigal and José Luis Blanco Claraco, 2012
- Simultaneous Localization and Mapping: Exactly Sparse Information Filters by Zhan Wang, Shoudong Huang and Gamini Dissanayake, 2011
- Probabilistic Robotics by Dieter Fox, Sebastian Thrun, and Wolfram Burgard, 2005
- An Invitation to 3-D Vision -- from Images to Geometric Models by Yi Ma, Stefano Soatto, Jana Kosecka and Shankar S. Sastry, 2005
- Multiple View Geometry in Computer Vision by Richard Hartley and Andrew Zisserman, 2004
- Numerical Optimization by Jorge Nocedal and Stephen J. Wright, 1999
Courses, Lectures and Workshops
- SLAM Tutorial@ICRA 2016
- Geometry and Beyond - Representations, Physics, and Scene Understanding for Robotics at Robotics: Science and Systems (2016)
- Robotics - UPenn on Coursera by Vijay Kumar (2016)
- Robot Mapping - UniFreiburg by Gian Diego Tipaldi and Wolfram Burgard (2015-2016)
- Robot Mapping - UniBonn by Cyrill Stachniss (2016)
- Introduction to Mobile Robotics - UniFreiburg by Wolfram Burgard, Michael Ruhnke and Bastian Steder (2015-2016)
- Computer Vision II: Multiple View Geometry - TUM by Daniel Cremers ( Spring 2016)
- Advanced Robotics - UCBerkeley by Pieter Abbeel (Fall 2015)
- Mapping, Localization, and Self-Driving Vehicles at CMU RI seminar by John Leonard (2015)
- The Problem of Mobile Sensors: Setting future goals and indicators of progress for SLAM sponsored by Australian Centre for Robotics and Vision (2015)
- Robotics - UPenn by Philip Dames and Kostas Daniilidis (2014)
- Autonomous Navigation for Flying Robots on EdX by Jurgen Sturm and Daniel Cremers (2014)
- Robust and Efficient Real-time Mapping for Autonomous Robots at CMU RI seminar by Michael Kaess (2014)
- KinectFusion - Real-time 3D Reconstruction and Interaction Using a Moving Depth Camera by David Kim (2012)
- SLAM Summer School organized by Australian Centre for Field Robotics (2009)
- SLAM Summer School organized by University of Oxford and Imperial College London (2006)
- SLAM Summer School organized by KTH Royal Institute of Technology (2002)
Papers
- Past, Present, and Future of Simultaneous Localization And Mapping: Towards the Robust-Perception Age (2016)
- Direct Sparse Odometry (2016)
- Modelling Uncertainty in Deep Learning for Camera Relocalization (2016)
- Large-Scale Cooperative 3D Visual-Inertial Mapping in a Manhattan World (2016)
- Towards Lifelong Feature-Based Mapping in Semi-Static Environments (2016)
- Tree-Connectivity: Evaluating the Graphical Structure of SLAM (2016)
- Visual-Inertial Direct SLAM (2016)
- A Unified Resource-Constrained Framework for Graph SLAM (2016)
- Multi-Level Mapping: Real-time Dense Monocular SLAM (2016)
- Lagrangian duality in 3D SLAM: Verification techniques and optimal solutions (2015)
- A Solution to the Simultaneous Localization and Map Building (SLAM) Problem
- Simulataneous Localization and Mapping with the Extended Kalman Filter
Researchers
United States
- John Leonard
- Sebastian Thrun
- Frank Dellaert
- Dieter Fox
- Stergios I. Roumeliotis
- Vijay Kumar
- Ryan Eustice
- Michael Kaess
- Guoquan (Paul) Huang
- Gabe Sibley
- Luca Carlone
- Andrea Censi
Europe
- Paul Newman
- Roland Siegwart
- Juan Nieto
- Wolfram Burgard
- Jose Neira
- Davide Scaramuzza
Australia
- Cesar Cadena
- Ian Reid
- Tim Bailey
- Gamini Dissanayake
- Shoudong Huang
Datasets
- Intel Research Lab (Seattle)
Code
- ORB-SLAM
- LSD-SLAM
- ORB-SLAM2
- DVO: Dense Visual Odometry
- SVO: Semi-Direct Monocular Visual Odometry
- G2O: General Graph Optimization
- RGBD-SLAM