Metrics

class evaldet.MOTMetrics(clearmot_dist_threshold=0.5, id_dist_threshold=0.5)

The class for computing MOT metrics.

To compute the metrics, use the compute method of this class, it will compute all the required MOT metrics.

The reason for a single entrypoint for MOT computation is so that metrics can efficiently share pre-computed IoU distances.

Parameters
  • clearmot_dist_threshold (float) –

  • id_dist_threshold (float) –

Return type

None

compute(ground_truth, hypotheses, clearmot_metrics=False, id_metrics=False, hota_metrics=True)

Compute multi-object tracking (MOT) metrics.

Right now, the following metrics can be computed

  • CLEARMOT metrics

    • MOTA (MOT Accuracy)

    • MOTP (MOT Precision)

    • FP (false positives)

    • FN (false negatives)

    • IDS (identity switches/mismatches)

  • ID metrics

    • IDP (ID Precision)

    • IDR (ID Recall)

    • IDF1 (ID F1)

    • IDFP (ID false positives)

    • IDFN (ID false negatives)

    • IDTP (ID true positives)

  • HOTA metrics (both average and individual alpha values). Note that I use

the matching algorithm from the paper, which differs from what the official repository (TrackEval) is using - see this issue for more details

  • HOTA

  • AssA

  • DetA

  • LocA

Parameters
  • ground_truth (Tracks) – Ground truth tracks.

  • hypotheses (Tracks) – Hypotheses tracks.

  • clearmot_metrics (bool) – Whether to compute the CLEARMOT metrics.

  • id_metrics (bool) – Whether to compute the ID metrics.

  • hota_metrics (bool) – Whether to compute the HOTA metrics.

Return type

MOTMetricsResults

Returns

A dictionary of computed metrics. Metrics are saved under the key of their metric family ("clearmot", "id", "hota").

class metrics.MOTMetricsResults(*args, **kwargs)

The result of the MOT metric computtion.