Software
g2o (General Graph Optimization)
From github.com/RainerKuemmerle/g2o (opens in a new tab)
- Navigation and mapping
- Library
- BSD-2-Clause
g2o is a C++ framework for optimizing nonlinear error functions represented as graphs, used for problems like SLAM and bundle adjustment. It is designed to be easily extended to new problems.
Facts
- GitHub stars
- 3,478read on 6 Nov 2026
- Last update
- 26 Sept 2026Newest commit on master
- Maintenance
- Activea commit in the last 90 days
- Difficulty
- Advanced
- Hardware it needs, as the project states it
- Requires a C++17 compiler, cmake and Eigen3; optional dependencies include spdlog, suitesparse, Qt5 and libQGLViewer. Compilation is developed mainly on Linux, with experimental support for Mac OS X, Android and Windows.
Checked on GitHub on 6 Nov 2026.
Licenses
- Code
- BSD-2-Clause (opens in a new tab)
A person at Robotheca set it on 9 Nov 2026.
- Commercial use
- Yes
Overview
What it does: Robotheca's summary
- Optimizes graph-based nonlinear least squares problems, such as simultaneous localization and mapping and bundle adjustment.
- Designed so that a new problem can typically be specified in a few lines of code.
- Provides solutions to several variants of SLAM and bundle adjustment.
- Optional components include a Python wrapper on a experimental branch and third-party Python bindings.
Written by Robotheca from the project's README (opens in a new tab) at commit fd65627, not by its creator.
The README
Files and versions
- Repository on GitHubgithub.com/RainerKuemmerle/g2o (opens in a new tab)
- The version Robotheca readfd65627 (opens in a new tab)
- Latest release20241228_git (28 Dec 2024)
Robotheca never hosts the code: each link goes to the creator's own page.
Use it
How to install it, in the creator's words: The project's README (opens in a new tab)
Robotheca doesn't review code. Read it before running it.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.