SLAM Summer School 2006
Practical 2: SLAM using Monocular Vision
Javier Civera, University of Zaragoza
Andrew J. Davison, Imperial College London
J.M.M Montiel, University of Zaragoza.
josemari@unizar.es, jcivera@unizar.es, ajd@doc.ic.ac.uk
1 Objectives
1. Understanding the characteristics of efficient (potentially real-time) SLAM using a monocular
camera as the only sensor.
(a) Map management.
(b) Feature initialization.
(c) Near and far features.
2. Understanding the inverse depth parametrization of map features in monocular SLAM.
3. Understanding the performance limits of a constant velocity motion model for a camera when no
odometry is available.
2 Exercise 1. Feature selection and matching.
One of the characteristics of vision-based SLAM is that there is too much information in an image
sequence for current computers to process in real-time. We therefore use heuristics to select which
features to include in the map. The desirable properties of map features are:
1. Saliency: features have to be identified by distinct texture patches.
2. A minimum number (e.g. 14) should be visible in the image at all times — when this is not the
case, new map features are initialized.
3. The features should be spread over the whole image.
The goal of this exercise is to manually initialize features in order to meet the above criteria, and to
understand better how an automatic initialization algorithm should work. Run mono slam.m. With
the user interface, you can add features and perform step by step EKF SLAM:
1. In the first image add about ten salient features spread over the image. You can watch the movie
juslibol SLAM.mpg (using for instance mpeg play on a Unix workstation) as an example
of how to select suitable features (but you can of course select other ones). This movie shows the
results of applying automatic feature selection.
2. As the camera moves, some features will leave the field of view, and you will have to add new
ones in order to maintain around 14 visible map features.
1