Davide Scaramuzza 
 
University of Zurich 
 
Robotics and Perception Group 
 
http://rpg.ifi.uzh.ch/ 
 
Copyright of Davide Scaramuzza - davide.scaramuzza@ieee.org - https://sites.google.com/site/scarabotix/ 
 Scaramuzza, D., Fraundorfer, F., Visual Odometry: Part I - The First 30 Years and 
Fundamentals, IEEE Robotics and Automation Magazine, Volume 18, issue 4, 2011. 
 
 Fraundorfer, F., Scaramuzza, D., Visual Odometry: Part II - Matching, Robustness, and 
Applications, IEEE Robotics and Automation Magazine, Volume 19, issue 1, 2012.  
Copyright of Davide Scaramuzza - davide.scaramuzza@ieee.org - https://sites.google.com/site/scarabotix/ 
VO is the process of incrementally estimating the pose of the vehicle by 
examining the changes that motion induces on the images of its onboard 
cameras 
input 
output 
Image sequence (or video stream) 
from one or more cameras attached to a moving vehicle 
Copyright of Davide Scaramuzza - davide.scaramuzza@ieee.org - https://sites.google.com/site/scarabotix/ 
Camera trajectory (3D structure is a plus): 
 Sufficient illumination in the environment  
 
 Dominance of static scene over moving objects 
 
 Enough texture to allow apparent motion to be extracted 
 
 Sufficient scene overlap between consecutive frames 
Copyright of Davide Scaramuzza - davide.scaramuzza@ieee.org - https://sites.google.com/site/scarabotix/ 
Is any of these scenes good for VO? Why? 
 Contrary to wheel odometry, VO is not affected by wheel slip in 
uneven terrain or other adverse conditions.  
 
 More accurate trajectory estimates compared  
to wheel odometry  
(relative position error 0.1% − 2%) 
 
 VO can be used as a complement to  
 wheel odometry  
 GPS 
 inertial measurement units (IMUs) 
 laser odometry  
 
 In GPS-denied environments,  
such as underwater and aerial,  
VO has utmost importance 
Copyright of Davide Scaramuzza - davide.scaramuzza@ieee.org - https://sites.google.com/site/scarabotix/ 
Image 1 
Image 2 
Copyright of Davide Scaramuzza - davide.scaramuzza@ieee.org - https://sites.google.com/site/scarabotix/ 
 VO computes the camera path incrementally (pose after pose) 
Image sequence 
Feature detection 
Feature matching (tracking) 
Motion estimation 
2D-2D 
3D-3D 
3D-2D 
Tk+1,k 
Local optimization 
SIFT features tracks 
Ck+1 
Ck 
Ck-1 
Copyright of Davide Scaramuzza - davide.scaramuzza@ieee.org - https://sites.google.com/site/scarabotix/ 
Tk,k-1 
Ck+1 
Ck 
Tk+1,k 
Tk,k-1 
Ck-1 
Copyright of Davide Scaramuzza - davide.scaramuzza@ieee.org - https://sites.google.com/site/scarabotix/