evo icon indicating copy to clipboard operation
evo copied to clipboard

Add a rerun integration

Open MichaelGrupp opened this issue 5 months ago • 1 comments

rerun could be a nice visualization option as an alternative to the matplotlib-based plotting features of evo. They seem to complement each other quite well:

  • matplotlib: static, focus on high-quality plots suitable for print, terrible 3D view
  • rerun: dynamic timeline replay, focus on live visualization/interaction, nice 3D view

bridge

The rerun archetypes should allow to log most of the things that are also added to plots right now:

  • trajectory visualization (pose axes, lines, correspondences, color-mapped trajectories...)
  • scalar visualization (errors, speeds, XYZ, orientations...)

Missing / unclear:

  • Support for map images (ROS map): https://github.com/rerun-io/rerun/issues/1531
  • Map tiles? Seems to exist only for 2D?

Probably useless:

  • PosePath3D support: probably makes no sense without timestamps, only support PoseTrajectory3D
  • 2D view support: doesn't seem to be worth the effort, evo data is 3D and matplotlib is fine for 2D

CLI

CLI integration into the existing commands would be nice. E.g. something like evo_traj bag ... --rerun to cover common use cases without scripting.


Dependency

rerun should be only an optional dependency in pyproject.toml.

MichaelGrupp avatar Jun 08 '25 12:06 MichaelGrupp

A demo script can be found here: https://github.com/MichaelGrupp/evo/tree/master/contrib/rerun_example

MichaelGrupp avatar Jun 08 '25 12:06 MichaelGrupp

First support comes with new v1.32.0 version of evo. See also: https://github.com/MichaelGrupp/evo/wiki/Rerun-integration

MichaelGrupp avatar Oct 04 '25 13:10 MichaelGrupp