Robot Mapping: Extended Kalman Filter
Robot Mapping: Extended Kalman Filter
1
SLAM is a State Estimation
Problem
Estimate the map and robot’s pose
Bayes filter is one tool for state
estimation
Prediction
Correction
2
Kalman Filter
It is a Bayes filter
Estimator for the linear Gaussian case
Optimal solution for linear models and
Gaussian distributions
3
Kalman Filter Distribution
Everything is Gaussian
3D
1D
Courtesy: K. Arras 4
Properties: Marginalization and
Conditioning
Given
5
Marginalization
Given
with
with
6
Conditioning
Given
with
with
7
Linear Model
The Kalman filter assumes a linear
transition and observation model
Zero mean Gaussian noise
8
Components of a Kalman Filter
Matrix that describes how the state
evolves from to without controls or
noise.
Matrix that describes how the control
changes the state from to .
9
Linear Motion Model
Motion under Gaussian noise leads to
10
Linear Motion Model
Motion under Gaussian noise leads to
11
Linear Observation Model
Measuring under Gaussian noise leads
to
12
Linear Observation Model
Measuring under Gaussian noise leads
to
13
Everything stays Gaussian
Given an initial Gaussian belief, the
belief is always Gaussian
Proof is non-trivial
(see Probabilistic Robotics, Sec. 3.2.4)
14
Kalman Filter Algorithm
15
1D Kalman Filter Example (1)
prediction measurement
correction
16
1D Kalman Filter Example (2)
prediction
correction
measurement
17
Kalman Filter Assumptions
Gaussian distributions and noise
Linear motion and observation model
18
Non-linear Dynamic Systems
Most realistic problems (in robotics)
involve nonlinear functions
19
Linearity Assumption Revisited
Non-Gaussian!
22
Non-Gaussian Distributions
The non-linear functions lead to non-
Gaussian distributions
Kalman filter is not applicable
anymore!
Local linearization!
23
EKF Linearization: First Order
Taylor Expansion
Prediction:
Correction:
Jacobian matrices
24
Reminder: Jacobian Matrix
It is a non-square matrix in general
25
Reminder: Jacobian Matrix
It is the orientation of the tangent plane to
the vector-valued function at a given point
Courtesy: K. Arras
Correction:
Linear functions!
27
Linearity Assumption Revisited
33
Linearized Observation Model
The linearized model leads to
34
Extended Kalman Filter
Algorithm
KF vs. EKF
35
Extended Kalman Filter
Summary
Extension of the Kalman filter
One way to handle the non-linearities
Performs local linearizations
Works well in practice for moderate
non-linearities
Large uncertainty leads to increased
approximation error error
36
Literature
Kalman Filter and EKF
Thrun et al.: “Probabilistic Robotics”,
Chapter 3
Schön and Lindsten: “Manipulating the
Multivariate Gaussian Density”
Welch and Bishop: “Kalman Filter
Tutorial”
Tipaldi: “Notes on Univariate
Gaussians and 1D Kalman Filters”
37
Slide Information
These slides have been created by Cyrill Stachniss as part of
the robot mapping course taught in 2012/13 and 2013/14. I
created this set of slides partially extending existing material
from courses of Wolfram Burgard, Dieter Fox, and myself.
I tried to acknowledge all people that contributed image or
video material. In case I missed something, please let me
know. If you adapt this course material, please make sure
you keep the acknowledgements.
Feel free to use and change the slides. If you use them, I
would appreciate an acknowledgement as well. To satisfy my
own curiosity, I appreciate a short email notice in case you
use the material in your course.
My video recordings are available through YouTube:
http://www.youtube.com/playlist?list=PLgnQpQtFTOGQrZ4O5QzbIHgl3b1JHimN_&feature=g-list