/rerun

Log images, point clouds, etc, and visualize them effortlessly. Built in Rust using egui

Primary LanguageRustApache License 2.0Apache-2.0

Rerun: Visualization infrastructure for computer vision.

Use one of our logging APIs (Python or Rust) to log rich data, such as images and point clouds, to the Rerun Viewer, where it is visualized live or after the fact.

import rerun as rr

rr.init("my_app", spawn = True) # Spawn a Rerun Viewer and stream log events to it

rr.log_image("rgb_image", image)
rr.log_points("points", positions)
rr.log_rect("car", bbox)
…

Rerun Viewer

Getting started

  • Python: pip install rerun-sdk or on conda
  • Rust: cargo add rerun
  • C / C++: Coming soon

Rerun Viewer binary

Both the Python and Rust library can start the Rerun Viewer, but to stream log data over the network or load our .rrd data files you also need the rerun binary.

It can be installed with pip install rerun-sdk or with cargo install rerun-cli.

You should now be able to run rerun --help in any terminal.

Documentation

Status

We are in early beta. There are many features we want to add, and the API is still evolving. Expect breaking changes!

Some shortcomings:

  • Big points clouds (1M+) are slow (#1136)
  • The data you want to visualize must fit in RAM.
  • The Rust library takes a long time to compile
    • We have way too many big dependencies, and we are planning on improving the situation (#1316)

Business model

Rerun uses an open-core model. Everything in this repository will stay open source and free (both as in beer and as in freedom). In the future, Rerun will offer a commercial product that builds on top of the core free project.

The Rerun open source project targets the needs of individual developers. The commercial product targets the needs specific to teams that build and run computer vision and robotics products.

Development

Installing a pre-release Python SDK

  1. Download the correct .whl from GitHub Releases
  2. Run pip install rerun_sdk<…>.whl (replace <…> with the actual filename)
  3. Test it: rerun --version