R. Kümmerle, G. Grisetti, H. Strasdat, K. Konolige, and W. Burgard.
g2o: A General Framework for Graph Optimization.
In Proc. of the IEEE Int. Conf. on Robotics and Automation (ICRA). Shanghai, China, May 2011.


Many popular problems in robotics and computer vision including various types of simultaneous localization and mapping (SLAM) or bundle adjustment (BA) can be phrased as least squares optimization of an error function that can be represented by a graph. This paper describes the general structure of such problems and presents g2o, an open-source C++ framework for optimizing graph-based nonlinear error functions. Our system has been designed to be easily extensible to a wide range of problems and a new problem typically can be specified in a few lines of code. The current implementation provides solutions to several variants of SLAM and BA. We provide evaluations on a wide range of real-world and simulated datasets. The results demonstrate that while being general g2o offers a performance comparable to implementations of state-of-the-art approaches for the specific problems.

Download: Open source implementation (stable) Open source implementation (devel)

BibTeX entry:

  author = {K{\"u}mmerle, R. and Grisetti, G. and Strasdat, H. and Konolige, K. and
     Burgard, W.},
  title = {g2o: A General Framework for Graph Optimization},
  booktitle = {Proc.~of the IEEE Int.~Conf.~on Robotics and Automation (ICRA)},
  year = {2011},
  month = {May},
  address = {Shanghai, China}