robot mapping introduction to robot mapping -...
TRANSCRIPT
![Page 1: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/1.jpg)
1
Robot Mapping
Introduction to Robot Mapping
Cyrill Stachniss
![Page 2: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/2.jpg)
2
What is Robot Mapping?
§ Robot – a device, that moves through the environment
§ Mapping – modeling the environment
![Page 3: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/3.jpg)
3
Related Terms
State Estimation Localization
Mapping SLAM
Navigation Motion Planning
![Page 4: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/4.jpg)
4
What is SLAM?
§ Computing the robot’s poses and the map of the environment at the same time
§ Localization: estimating the robot’s location
§ Mapping: building a map § SLAM: building a map and localizing
the robot simultaneously
![Page 5: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/5.jpg)
5
Localization Example
§ Estimate the robot’s poses given landmarks
![Page 6: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/6.jpg)
6
Mapping Example
§ Estimate the landmarks given the robot’s poses
![Page 7: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/7.jpg)
7
SLAM Example
§ Estimate the robot’s poses and the landmarks at the same time
![Page 8: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/8.jpg)
8
The SLAM Problem
§ SLAM is a chicken-or-egg problem: → a map is needed for localization and → a pose estimate is needed for mapping
map
localize
![Page 9: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/9.jpg)
9
SLAM is Relevant
§ It is considered a fundamental problem for truly autonomous robots
§ SLAM is the basis for most navigation systems
map
localize
autonomous navigation
![Page 10: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/10.jpg)
10
SLAM Applications § SLAM is central to a range of indoor,
outdoor, air and underwater applications for both manned and autonomous vehicles.
Examples: § At home: vacuum cleaner, lawn mower § Air: surveillance with unmanned air vehicles § Underwater: reef monitoring § Underground: exploration of mines § Space: terrain mapping for localization
![Page 11: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/11.jpg)
11
SLAM Applications Indoors
Space
Undersea
Underground
Courtesy of Evolution Robotics, H. Durrant-Whyte, NASA, S. Thrun
![Page 12: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/12.jpg)
12
SLAM Showcase – Mint
Courtesy of Evolution Robotics (now iRobot)
![Page 13: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/13.jpg)
13
SLAM Showcase – EUROPA
![Page 14: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/14.jpg)
14
Mapping Freiburg CS Campus
![Page 15: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/15.jpg)
15
Definition of the SLAM Problem
Given § The robot’s controls
§ Observations
Wanted § Map of the environment
§ Path of the robot
![Page 16: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/16.jpg)
16
Probabilistic Approaches
§ Uncertainty in the robot’s motions and observations
§ Use the probability theory to explicitly represent the uncertainty
“The robot is exactly here”
“The robot is somewhere here”
![Page 17: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/17.jpg)
17
In the Probabilistic World
Estimate the robot’s path and the map
controls observations path map distribution given
![Page 18: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/18.jpg)
18
Graphical Model
unknown
unknown
observed
![Page 19: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/19.jpg)
19
Full SLAM vs. Online SLAM
§ Full SLAM estimates the entire path
§ Online SLAM seeks to recover only the most recent pose
![Page 20: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/20.jpg)
20
Graphical Model of Online SLAM
![Page 21: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/21.jpg)
21
Online SLAM
§ Online SLAM means marginalizing out the previous poses
§ Integrals are typically solved recursively, one at at time
![Page 22: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/22.jpg)
22
Graphical Model of Online SLAM
![Page 23: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/23.jpg)
23
Why is SLAM a Hard Problem? 1. Robot path and map are both unknown
2. Map and pose estimates correlated
![Page 24: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/24.jpg)
24
Why is SLAM a Hard Problem? § The mapping between observations and
the map is unknown § Picking wrong data associations can have
catastrophic consequences (divergence)
Robot pose uncertainty
![Page 25: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/25.jpg)
25
Taxonomy of the SLAM Problem
Volumetric vs. feature-based SLAM
Courtesy by E. Nebot
![Page 26: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/26.jpg)
26
Taxonomy of the SLAM Problem
Topologic vs. geometric maps
![Page 27: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/27.jpg)
27
Taxonomy of the SLAM Problem
Known vs. unknown correspondence
![Page 28: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/28.jpg)
28
Taxonomy of the SLAM Problem
Static vs. dynamic environments
![Page 29: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/29.jpg)
29
Taxonomy of the SLAM Problem
Small vs. large uncertainty
![Page 30: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/30.jpg)
30
Taxonomy of the SLAM Problem
Active vs. passive SLAM
Image courtesy by Petter Duvander
![Page 31: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/31.jpg)
31
Taxonomy of the SLAM Problem
Any-time and any-space SLAM
![Page 32: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/32.jpg)
32
Taxonomy of the SLAM Problem
Single-robot vs. multi-robot SLAM
![Page 33: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/33.jpg)
33
Approaches to SLAM
§ Large variety of different SLAM approaches have been proposed
§ Most robotics conferences dedicate multiple tracks to SLAM
§ The majority of techniques uses probabilistic concepts
§ History of SLAM dates back to the mid-eighties
§ Related problems in geodesy and photogrammetry
![Page 34: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/34.jpg)
34
SLAM History by Durrant-Whyte § 1985/86: Smith et al. and Durrant-Whyte
describe geometric uncertainty and relationships between features or landmarks
§ 1986: Discussions at ICRA on how to solve the SLAM problem followed by the key paper by Smith, Self and Cheeseman
§ 1990-95: Kalman-filter based approaches § 1995: SLAM acronym coined at ISRR’95 § 1995-1999: Convergence proofs & first
demonstrations of real systems § 2000: Wide interest in SLAM started
![Page 35: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/35.jpg)
35
Three Main Paradigms
Kalman filter
Particle filter
Graph-based
![Page 36: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/36.jpg)
36
Motion and Observation Model
"Motion model"
"Observation model"
![Page 37: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/37.jpg)
37
Motion Model
§ The motion model describes the relative motion of the robot
control old pose new pose distribution given
![Page 38: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/38.jpg)
38
§ Gaussian model
§ Non-Gaussian model
Motion Model Examples
![Page 39: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/39.jpg)
39
Standard Odometry Model § Robot moves from to . § Odometry information
![Page 40: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/40.jpg)
40
More on Motion Models
§ Course: Introduction to Mobile Robotics, Chapter 6
§ Thrun et al. “Probabilistic Robotics”, Chapter 5
![Page 41: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/41.jpg)
41
Observation Model
§ The observation or sensor model relates measurements with the robot’s pose
pose observation distribution given
![Page 42: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/42.jpg)
42
§ Gaussian model
§ Non-Gaussian model
Observation Model Examples
![Page 43: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/43.jpg)
43
More on Observation Models
§ Course: Introduction to Mobile Robotics, Chapter 7
§ Thrun et al. “Probabilistic Robotics”, Chapter 6
![Page 44: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/44.jpg)
44
Summary
§ Mapping is the task of modeling the environment
§ Localization means estimating the robot’s pose
§ SLAM = simultaneous localization and mapping
§ Full SLAM vs. Online SLAM § Rich taxonomy of the SLAM problem
![Page 45: Robot Mapping Introduction to Robot Mapping - uni-freiburg.deais.informatik.uni-freiburg.de/teaching/ws13/mapping/pdf/slam01-intro.pdf · 4 What is SLAM? ! Computing the robot’s](https://reader030.vdocuments.site/reader030/viewer/2022040704/5e010bc12d74df4baa328148/html5/thumbnails/45.jpg)
45
Literature
SLAM overview § Springer “Handbook on Robotics”,
Chapter on Simultaneous Localization and Mapping (subsection 1 & 2)
On motion and observation models § Thrun et al. “Probabilistic Robotics”,
Chapters 5 & 6 § Course: Introduction to Mobile
Robotics, Chapters 6 & 7