04 Lecture Odometry
04 Lecture Odometry
04 – 1
[Link]
Chair of Automotive Technology
TUM School of Engineering and Design
Technical University of Munich
04 – 5
Autonomous Vehicle Perception – Odometry Strategies (Leitenstern)
Prof. Dr.-Ing. Markus Lienkamp | Felix Fent, [Link].
1 Introduction
2 Odometry Fundamentals
3 Scan Registration
4 Visual Odometry
1 Introduction
2 Odometry Fundamentals
3 Scan Registration
4 Visual Odometry
04 – 10
Recap: Localization
Summary
[Link]
04 – 11
Introduction
Odometry Definition
𝑥
𝑥𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒 𝑥𝑡1,𝑣𝑒ℎ𝑖𝑐𝑙𝑒
𝑡0 𝑡1
[YAN22, 04 – 13
SIC16]
Introduction
Wheelspeed Odometry
Travelled distance 𝑠
[YAN22, 04 – 14
SIC16]
Introduction
IMU Odometry
𝑦 Ψ𝑡0 − ΔΨ
» IMU measures linear accelerations in x/y/z and angular rates
around x/y/z
» Computation of relative change in position by
double integration of linear accelerations: Ψ𝑡0 𝑦𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒
𝑡 𝑡
» 𝑠 = 𝑡1 𝑡1 𝑎 𝑡 𝑑𝑡 𝑑𝑡 + 𝑦𝑠
0 0 𝑦𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒
» Computation of relative change in orientation by 𝑥𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒 + 𝑥𝑠
single integration of angular rates
𝑡
» ΔΨ = 𝑡1 𝜓ሶ 𝑡 𝑑𝑡 (for z-axis – yaw rotation) 𝑥
0 𝑥𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒
» Limitations: 𝑡0 𝑡1
» Accumulation of integration errors
» High calibration effort
[YAN22, 04 – 15
SIC16]
Introduction
LiDAR / Camera / RaDAR Odometry
𝑦 Ψ𝑡0 − ΔΨ
» LiDAR / Camera / RaDAR give us information about the
environment
» Objects (especially static ones) may be perceived
from different perspectives over time Ψ𝑡0 𝑦𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒
» How to compute the relative change in position / rotation + 𝑦𝑠
from this information? 𝑦𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒
𝑥𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒 + 𝑥𝑠
𝑥
𝑥𝑡0,𝑣𝑒ℎ𝑖𝑐𝑙𝑒
𝑡0 𝑡1
04 – 16
Additional Slide
1 Introduction
2 Odometry Fundamentals
3 Scan Registration
4 Visual Odometry
04 – 18
Odometry Fundamentals
Definition – Landmarks vs. Features
» Landmarks:
» Points in the environment that are recognized in different frames
» Features:
» Clear-cut attribute in the perceived data (from LiDAR / camera /RaDAR) that can be
extracted by algorithms
[THU06] 04 – 19
Odometry Fundamentals
Definition – Landmarks vs. Features
Features
Landmarks
[THU06] 04 – 20
Odometry Fundamentals
Principle
04 – 22
Odometry Fundamentals
Principle
04 – 23
Odometry Fundamentals
Data Association
𝑡0 𝑡1
[THU06] 04 – 24
Odometry Fundamentals
Data Association
04 – 25
Odometry Fundamentals
Data Association
» In
Data Association
general, the has great
data effect on theisestimation
association unknown of the
andtransformation
has to be
estimated!
» Known data association:
Strategies for data association differ between the different sensors
» Correspondences betweenLiDAR/RaDAR/camera
different frames are known
» → Closed-form solution of transformation can be computed (e.g. using Singular Value
Decomposition (SVD))
»We will firstdata
Unknown learn, how the
association: transformation can be estimated, given a set
of known (estimated)
» Correspondences correspondences
between different frames computed and afterwards
based seestrategy
on a matching the
» application for the different
Generally impossible to computesensors with
the optimal the specific data association
transformation
strategies
04 – 26
Odometry Fundamentals
Principle
Iterative Methods
04 – 27
Rotation Translation
Odometry Fundamentals 𝑁𝑦
Transformation Estimation
1 2
𝐸 𝑅, 𝑡 = 𝑥𝑖 − 𝑅𝑦𝑖 − 𝑡
{𝑥𝑖 } 𝑁𝑦
𝑖=1
Number of points
{𝑦𝑖 }
[UME91] 04 – 28
Odometry Fundamentals
Transformation Estimation
» Given:
» 2 corresponding point sets (correspondences from data association):
» 𝑋 = 𝑥1 , … , 𝑥𝑁𝑥
» 𝑌 = {𝑦1 , … , 𝑦𝑁𝑦 }
» Wanted:
» Translation 𝑡 + Rotation 𝑅 minimizing the sum of squared errors:
1 𝑁𝑦 2
» 𝐸 𝑅, 𝑡 =
𝑁𝑦
σ𝑖=1 𝑥𝑖 − 𝑅𝑦𝑖 − 𝑡 Least squares problem
» 𝑥𝑖 and 𝑦𝑖 are corresponding points
[UME91] 04 – 29
Odometry Fundamentals
Singular Value Decomposition
» For known correspondences between the 2 sets of points, the Singular Value
Decomposition (SVD) may be used to determine the transformation:
1
» 𝑋 ′ = 𝑥𝑖 − 𝜇𝑥 = 𝑥𝑖′ , 𝜇𝑥 = σ𝑁𝑥
𝑖=1 𝑥𝑖 (center of mass)
𝑁𝑥
1 𝑁𝑦
» 𝑌 ′ = 𝑦𝑖 − 𝜇𝑦 = 𝑦𝑖′ , 𝜇𝑦 = σ𝑖=1 𝑦𝑖 (center of mass)
𝑁𝑦
» Compute the SVD between the 2 sets of points as follows (3D-case):
𝜎1 0 0
𝑁𝑦 𝑇
» 𝑊 = 𝑈 0 𝜎2 0 𝑉 𝑇 , 𝑊 = σ𝑖=1 𝑦𝑖′ 𝑥𝑖′
0 0 𝜎3
» Reminder: 𝑈, 𝑉 are unitary matrices, 𝜎1 > 𝜎2 > 𝜎3 are the singular values of 𝑊
[UME91] 04 – 30
Odometry Fundamentals
Singular Value Decomposition
» Given the SVD between the 2 sets of points, and 𝑟𝑎𝑛𝑘 𝑊 = 3, the unique, optimal
solution for minimizing the 𝐸 𝑅, 𝑡 is defined by (without proof):
𝑅 = 𝑈𝑉 𝑇
𝑡 = 𝜇𝑦 − 𝑅𝜇𝑥
» SVD solution assumes known correspondences
» More general approaches for least squares problem needed for estimated
correspondences:
» More complex error functions (e.g. considering covariances / uncertainties)
» Often iterative algorithms (e.g. Gauss-Newton minimization, Levenberg-Marquardt)
[UME91] 04 – 31
Autonomous Vehicle Perception – Odometry Strategies (Leitenstern)
Prof. Dr.-Ing. Markus Lienkamp | Felix Fent, [Link].
1 Introduction
2 Odometry Fundamentals
3 Scan Registration
4 Visual Odometry
04 – 33
[Link]
Scan Registration
Problem Definition
{𝑦𝑖 }
{𝑥𝑖 }
𝑅, 𝑡
1 𝑁𝑦 2
» Least-squares minimization: 𝐸 𝑅, 𝑡 = σ𝑖=1 𝑥𝑖 − 𝑅𝑦𝑖 − 𝑡
𝑁𝑦
[SIC16] 04 – 34
Scan Registration
Strategies Overview
Scan Registration
04 – 36
Scan Registration
Example: KISS-ICP
[Link] 04 – 37
Scan Registration
Algorithm – ICP
𝑦𝑖 = 𝑠𝑜𝑢𝑟𝑐𝑒
𝑥𝑖 = 𝑟𝑒𝑓𝑒𝑟𝑒𝑛𝑐𝑒
[BES92] 04 – 38
Scan Registration
Algorithm – ICP
Initial/current transformation
[BES92] 04 – 39
Scan Registration
Algorithm – ICP
Final transformation
[BES92] 04 – 40
Scan Registration
Algorithm – ICP
[SIC16] 04 – 41
Scan Registration
Algorithm – ICP
04 – 42
Scan Registration
Performance Criteria & Variants
Challenges
04 – 43
Scan Registration
Performance Criteria & Variants
Challenges
Point to search
correspondences for
04 – 44
Scan Registration
Performance Criteria & Variants
Outlier / noise
Tolerance against noise / outliers
04 – 45
Scan Registration
Performance Criteria & Variants
Challenges Variants
Weighting of correspondences /
Tolerance against noise / outliers
Rejection of outlier point pairs
04 – 46
Scan Registration
Point subsets
04 – 47
Scan Registration
Point storage
Point to search
correspondences for
04 – 48
Scan Registration
Point storage
Voxel grid
» Store points efficiently to speed up
correspondence search
» Voxel hash map
» KD tree
Point to search
correspondences for
04 – 49
Scan Registration
Correspondence Strategies
𝑟 𝑟 𝑟 𝑟
𝑟 𝑟
𝑟 𝑟 𝑟 𝑟 𝑟
𝑟
04 – 51
Scan Registration
Summary
» Registration of point clouds needed to integrate LiDAR/RaDAR data into sensor fusion
algorithm (e.g. Bayesian filter) (but also relevant for other tasks, e.g. calibration)
» Computes the transformation (rotation + translation) between two sets of points
» Distinction between iterative / non-iterative approaches
» Known data association → Solution can be computed using SVD
» Unknown data association → Usually iterative approaches
» Iterative strategies are State-of-the-Art ➔ Strategies for initial guess computation
» Most popular example: Iterative-Closest-Point (ICP)
04 – 53
Scan Registration
Example: KISS-ICP
» Point-2-Point ICP
» Few parameters, but working on various domains
» Check it out!
[Link]
[VIZ23] 04 – 54
Autonomous Vehicle Perception – Odometry Strategies (Leitenstern)
Prof. Dr.-Ing. Markus Lienkamp | Felix Fent, [Link].
1 Introduction
2 Odometry Fundamentals
3 Scan Registration
4 Visual Odometry
04 – 55
Visual Odometry
Problem Definition
[Link] 04 – 56
Visual Odometry
Problem Definition
𝑝0 𝑝1
» Estimate transformation (𝑅, 𝑡) between two camera poses given two images mapping the
environment according to:
𝑥 𝑋
𝑦 =𝑃 𝑌
𝑍
1 3D world coordinate
1
2D pixel coordinate
Projection matrix 04 – 57
Visual Odometry
Depth Information in Images
04 – 58
Visual Odometry
Strategies Overview
Visual Odometry
[Link] 04 – 61
Visual Odometry
Indirect Visual Odometry – Visual Features
Keypoint +
descriptor (e.g. gradient):
0.01
0.05
𝑓=
⋮
0.03
04 – 62
Visual Odometry
Indirect Visual Odometry – Visual Features
» Examples:
» Hand-crafted:
» SIFT (Scale Invariant Feature Transform)
» SURF (Speeded-Up Robust Features)
» BRIEF (Binary Robust Independent Elementary Factors)
» ORB (Oriented FAST and rotated BRIEF)
» Learning-based:
» SuperGlue ([Link]
[Link] 04 – 64
Visual Odometry
Indirect Visual Odometry - Summary
[TUM23] 04 – 66
Visual Odometry
Strategies Overview
Visual Odometry
04 – 68
[Link]
Visual Odometry
Direct Visual Odometry
Pixel Tracking
[TUM23] 04 – 71
Visual Odometry
Direct Visual Odometry - Summary
[TUM23] 04 – 72
Autonomous Vehicle Perception – Odometry Strategies (Leitenstern)
Prof. Dr.-Ing. Markus Lienkamp | Felix Fent, [Link].
1 Introduction
2 Odometry Fundamentals
3 Scan Registration
4 Visual Odometry
04 – 74
Summary
Odometry for Sensor Fusion
» Odometry Definition:
» Odometry defines the change in position of a robot between two points in time using
various sensors
» Odometry Methods:
» IMU odometry (2x Integration)
» Wheelspeed odometry (1x Integration)
Measurement/Observation Model
» Scan Registration (LiDAR/RaDAR)
» Visual Odometry (Camera)
Fusion within a Bayesian Filter (KF, PF)
04 – 75
Summary
Classification of Perception Sensors
04 – 76
Summary
Classification of Perception Sensors
04 – 77
Summary
Classification of Perception Sensors
04 – 78
Summary
Classification of Perception Sensors
04 – 79
Summary
Classification of Perception Sensors
04 – 80
Outlook
Loop Closure & SLAM
04 – 81
References
SIC B. Siciliano and O. Khatib, Springer Handbook of Robotics, Second Edition. Springer, 2016, pp. 1–6.
16
CHE N. Chebrolu, T. Läbe, O. Vysotska, J. Behley, and C. Stachniss, “Adaptive Robust Kernels for Non-Linear Least Squares Problems,” IEEE Robotics and Automation Letters, vol. 6,
20 pp. 2240–2247, 2020.
YAN M. Yang et al., “Sensors and Sensor Fusion Methodologies for Indoor Odometry: A Review,” Polymers, vol. 14, no. 10, 2022, doi: 10.3390/polym14102019.
22
THU S. Thrun, W. Burgard, and D. Fox, Probabilistic Robotics. Cambridge, Massachusetts ; London, England: MIT Press, 2006.
06
UME S. Umeyama, “Least-squares estimation of transformation parameters between two point patterns,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 13, no. 4,
91 pp. 376–380, 1991, doi: 10.1109/34.88573.
BES P. J. Besl and N. D. McKay, “A method for registration of 3-D shapes,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 14, no. 2, pp. 239–256, 1992, doi:
92 10.1109/34.121791.
VIZ I. Vizzo, T. Guadagnino, B. Mersch, L. Wiesmann, J. Behley, and C. Stachniss, “KISS-ICP: In Defense of Point-to-Point ICP Simple, Accurate, and Robust Registration If Done the
23 Right Way,” IEEE Robotics and Automation Letters, vol. 8, no. 2, pp. 1029–1036, Feb. 2023, doi: 10.1109/lra.2023.3236571.
TUM TUM Computer Vision Group, “Computer Vision II: Multiple View Geometry - Lecture Material,” Summer 2023. Accessed: May 19, 2025. [Online]. Available:
23 [Link]
04 – 82