Skip to content

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.

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.

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.