Andreas Geiger

LIBVISO2: C++ Library for Visual Odometry 2

LIBVISO2 (Library for Visual Odometry 2) is a very fast cross-platfrom (Linux, Windows) C++ library with MATLAB wrappers for computing the 6 DOF motion of a moving mono/stereo camera. The stereo version is based on minimizing the reprojection error of sparse feature matches and is rather general (no motion model or setup restrictions except that the input images must be rectified and calibration parameters are known). The monocular version is still very experimental and uses the 8-point algorithm for fundamental matrix estimation. It further assumes that the camera is moving at a known and fixed height over ground (for estimating the scale). Due to the 8 correspondences needed for the 8-point algorithm, many more RANSAC samples need to be drawn, which makes the monocular algorithm slower than the stereo algorithm, for which 3 correspondences are sufficent to estimate parameters. The most significant differences to LIBVISO1 are as follows:
More details can be found in our related publications. 3D reconstruction videos are available in the supplementary material.

Coordinate System Definition




This code is published under the GNU General Public License.

Datasets from the Paper

The datasets used in our paper are available for download here.


  author = {Andreas Geiger and Julius Ziegler and Christoph Stiller},
  title = {StereoScan: Dense 3D Reconstruction in Real-time},
  booktitle = {Intelligent Vehicles Symposium (IV)},
  year = {2011}

  author = {Bernd Kitt and Andreas Geiger and Henning Lategahn},
  title = {Visual Odometry based on Stereo Image Sequences with RANSAC-based Outlier Rejection Scheme},
  booktitle = {Intelligent Vehicles Symposium (IV)},
  year = {2010}

eXTReMe Tracker