Skip to main content
Version: dev-latest

Display Mode

Rerun Required

This is the only mode that expects an active Rerun server. Make sure to have Rerun running before using this mode. Read about configuring Rerun here.

Purpose

  • Display the applied results of a calibration in Rerun.

Usage

metrical display [OPTIONS] $INPUT_DATA_PATH $PLEX_OR_RESULTS_PATH

Concepts

MetriCal's Display mode is a simple mode that takes the results of a calibration, applies them to a dataset, and displays the applied data in Rerun. This is useful for a quick gut check of the calibration quality; the classic "ocular validation", if you will.

That being said, there's no reason you can't apply a calibration to a test dataset, i.e. one that wasn't used to derive a calibration. Just make sure that the dataset shares the same topics as the plex. If this is not the case, you can use the --topic-to-component flag to map topics to components.

Watch the video below for a quick primer on Display mode:

Examples

Start a Display session immediately after a calibration run

metrical calibrate -o $RESULTS $DATA $PLEX $OBJ_SPC
metrical display $DATA $RESULTS

Arguments

[INPUT_DATA_PATH]

Input data path for this calibration.

MetriCal accepts a few data formats:

  • Ros1 bags, in the form of a .bag file.
  • MCAP files, with an .mcap extension.
  • Folders, as a flat directory of data. The folder passed to MetriCal should itself hold one folder of data for every component.

In all cases, the topic/folder name must match a named component in the plex in order to be matched correctly. If this is not the case, there's no need to edit the plex directly; instead, one may use the --topic_to_component flag.

[PLEX_OR_RESULTS_PATH]

The path to the input plex. This can be a MetriCal results JSON or a plex JSON.

Options

Universal Options

As with every mode, all universal options are supported (though not all may be used).

-m, --topic-to-component [TOPIC_TO_COMPONENT]

A mapping of ROS topic/folder names to component names/UUIDs in the input plex.

MetriCal only parses data that has a topic-component mapping. Ideally, topics and components share the same name. However, if this is not the case, use this flag to map topic names from the dataset to component names in the plex.

--render-socket [RENDER_SOCKET]

The web socket address on which Rerun is listening. This should be an IP address and port number separated by a colon, e.g. --render-socket="127.0.0.1:3030". By default, Rerun will listen on socket host.docker.internal:9876. If running locally (not via Docker), Rerun's default port is 127.0.0.1:9876

When running Rerun from its CLI, the IP would correspond to its --bind option and the port would correspond to its --port option.