evo
- Software
- Navigation and mapping
- Tool
A Python package with command-line tools and a small library for evaluating and comparing trajectory output from odometry and SLAM algorithms.
Source on GitHub: github.com/MichaelGrupp/evo (opens in a new tab). Facts read at commit dec58c0 (opens in a new tab).
Licenses
- Code
- GPL-3.0-only (opens in a new tab)
Read by Robotheca from LICENSE (opens in a new tab) (GPL-3.0-only) at commit dec58c0 (opens in a new tab), on 16 Oct 2026.
- Commercial use
- Yes
Copyleft: Modified source must be published.
What it does
- Computes absolute pose error (evo_ape) and relative pose error (evo_rpe) metrics on trajectories.
- Reads TUM, KITTI and EuRoC MAV trajectory files, plus ROS and ROS2 bag topics with pose and odometry messages.
- Compares result files from the metrics with evo_res, printing statistics, plotting, and saving tables.
- Plots and analyzes trajectories with evo_traj, with options for association, alignment and scale adjustment.
- Offers optional visualization through the Rerun viewer and map tiles for geo-referenced plots.
- Installs via pip and provides a Jupyter notebook and IPython shell for interactive use.
Written by Robotheca from the project's README (opens in a new tab) at commit dec58c0.
Getting started
- Difficulty
- Intermediate
- Hardware it needs, as the project states it
- Requires Python 3.11+. ROS installation is optional for some ROS-related features; PyQt6, contextily and Rerun are optional extras.
- How to start
- The project's website (opens in a new tab)
Maintenance
- Status
- Active: a commit in the last 90 days
- Newest commit
- 16 Oct 2026 on master
- Latest release
- None published on GitHub
Checked on GitHub on 16 Oct 2026.
Links
Robots on Robotheca that use it
No robot on Robotheca is linked to it yet. Links come from a robot's robot.yaml, from its dependency files read as text, or from Robotheca's editors.
Robotheca lists software as a reference: nothing is hosted or run here, and every fact links to where it was read.