Research archive / RFS_Filters

Multitarget tracking
on nuScenes

From probabilistic filters to real driving scenes: keeping object identities consistent through missed detections, crossings, and changing class labels.

Bai Liping · Random finite sets · Tracking by detection

Animated bird’s-eye visualization of crossing nuScenes tracks, playing at twice the original speed
Original crossing sequence · 2× speed · continuous loop.
0.761AMOTAHigher is better
0.562 mAMOTPLower is better
6,019Validation samplesv1.0-trainval / val
7Tracking classesBicycle through truck

Recorded in the 0.761 evaluation log, October 12, 2022. These are archived validation results; the experiment has not been rerun for this page.

01 / The approach

Estimate the objects.
Preserve their identities.

A detector produces boxes for each frame. A tracker must decide which boxes belong to existing objects, which indicate new arrivals, and which observations to reject. RFS models also represent uncertainty in how many objects exist.

UNDETECTED OBJECTS

The Poisson component

Represents objects that may exist but have not yet been detected. The birth model introduces the possibility of new objects.

DETECTED OBJECTS

Bernoulli tracks

Each candidate track carries a probability of existence and a distribution over its state. A missing detection reduces confidence without necessarily ending the track.

ASSOCIATION UNCERTAINTY

Competing explanations

A PMBM filter retains a mixture of association hypotheses. The repository’s PMBMGNN variant propagates the highest-weight global hypothesis to reduce that branching.

  1. 01Load detections

    Boxes, class labels, scores, and velocity estimates in the nuScenes format.

  2. 02Predict tracks

    Propagate position, velocity, survival, and possible object births.

  3. 03Associate & update

    Gate candidate matches, update tracks, and manage alternative assignments.

  4. 04Evaluate & inspect

    Export identities and boxes, calculate metrics, and examine scene-level errors.

Implementation references: nuScenes runner and PMBMGNN procedure.

What this work covers. The repository collects classical and RFS tracking implementations, simulation experiments, and a nuScenes application. The main contribution presented here is the experimental workflow and visual diagnosis. The filter families and their underlying theory have established prior implementations.

02 / Recorded results

One run, with its context.

The attached log explicitly identifies the validation split and 6,019 samples. It does not establish the exact detector checkpoint or tracker configuration, so this result is presented as an archived run rather than a controlled comparison.

Per-class results · saved 0.761 run
ClassAMOTA ↑AMOTP ↓
(m)
ID switches
Bicycle0.6740.6632
Bus0.8730.5239
Car0.8610.339420
Motorcycle0.8230.53210
Pedestrian0.8310.414131
Trailer0.5290.9362
Truck0.7390.52828

Read accuracy and identity together.

The log reports 602 identity switches and 286 track fragmentations. Those counts motivate a closer look at individual trajectories even when the average accuracy is strong.

Class differences matter. Bus AMOTA is 0.873, while trailer AMOTA is 0.529. The aggregate score hides substantial variation across object classes.

AMOTA averages recall-normalized tracking accuracy over recall thresholds. AMOTP summarizes position error over recall thresholds. Consult the nuScenes metric definitions for the exact evaluation protocol.

The log’s ID-switch and fragmentation counts are the evaluator’s reported operating-point statistics; they are not averaged in the same way as AMOTA.

Read the extracted evaluation summary ·

03 / Visual diagnosis

Where identity breaks.

The observations are organized below by failure mechanism. Each example distinguishes the recorded observation from the interpretation or improvement it suggests.

01 · Missed detection

Occlusion creates a gap in the evidence.

The example marks 13 frames of missed pedestrian detection. With no matching measurement, the tracker must balance survival against the chance that the object has left.

Implication: examine existence decay and track management across the gap, as well as the quality of the detections.

The source annotates 13 frames of missed detection for a pedestrian.
The source annotates 13 frames of missed detection for a pedestrian.
02 · Birth versus continuation

A new identity can win over an existing track.

The analysis associates high birth rates with premature termination and restart. Lowering the rate to 0.001 fixes several selected examples, including this pair.

Trade-off: making new tracks less likely can also encourage incorrect associations to old tracks.

Before. Premature termination in the original experiment.
Before. Premature termination in the original experiment.
After. The source reports improvement with birth rate 0.001.
After. The source reports improvement with birth rate 0.001.
03 · Motion mismatch

Turning remains difficult after tuning.

Several examples terminate during a curved trajectory. One caption explicitly notes that the problem remains after radar velocity is added.

Hypothesis to test: a motion model that better represents turns may help where changing only the birth rate does not.

The source reports termination while turning, even with radar velocity added.
The source reports termination while turning, even with radar velocity added.
04 · Unstable class labels

The object persists.
Its detection label changes.

A car may be detected as a truck, or alternate between other categories. The repository’s class-specific runner makes these errors relevant to association and track continuity.

Direction in the analysis: use classification information over time. The nuScenes output still requires a consistent class label within a track.

An original example labeled “Alternating Classification” in the analysis.
An original example labeled “Alternating Classification” in the analysis.
05 · Ambiguous association

Crossings put identities under pressure.

The analysis documents identity changes when tracks intersect, including an example of two bus tracks that terminate and restart.

Implication: inspect the competing associations around the intersection, including tracks that temporarily have no detection.

Two intersecting bus tracks; the original caption records termination and restart.
Two intersecting bus tracks; the original caption records termination and restart.
A local repair can hurt the overall score. The analysis reports a drop from 0.707 to 0.69 after lowering the birth rate: some broken tracks improve, but incorrect associations become more common. This is an earlier tuning observation, separate from the 0.761 validation run above.
0.707Earlier reported score
0.690After reducing birth rate

These two values are reported in the archived analysis; the corresponding complete configurations are not supplied there.

Inspect the original sequences

Select an example to play its archived animation at 2× speed in a continuous loop.

04 / Method comparison

Different approximations,
different failure modes.

The source compares outputs labeled MHT and TO-PMB (track-oriented Poisson multi-Bernoulli). These paired visual examples describe individual behavior; they do not establish an overall ranking.

MHT, as labeled in the analysis. The source identifies a preference for terminating the track.
MHT, as labeled in the analysis. The source identifies a preference for terminating the track.
TO-PMB. The corresponding output for the same source track.
TO-PMB. The corresponding output for the same source track.

Hypothesis selection

The analysis identifies early termination and sudden position changes in selected MHT outputs. Inspect which association history is retained when several explanations compete.

Coalescence and long links

A separate group records track coalescence and associations made over large distances. Preserving a track is useful only when the identity and trajectory remain credible.

Method labels are preserved from the archived observations. Exact code-to-figure configurations are not available for every pair. Browse all comparison figures.

05 / Lessons and next experiments

Turn observations into
specific tests.

The archive suggests several directions. They are presented as research questions, not as demonstrated improvements.

  1. Adapt birth behavior to the scene.The analysis proposes stronger birth intensity in crowded regions and lower intensity in sparse regions. Compare against fixed rates using identical detections and evaluation settings.
  2. Accumulate class evidence over time.Test whether a temporal class model reduces the documented label-change failures without introducing incorrect identities.
  3. Revisit motion and survival through gaps.Separate turning errors from occlusion errors; measure continuity and incorrect associations as well as the average score.
  4. Preserve experiment provenance.Save the detector checkpoint, tracker settings, split, code revision, and per-class metrics with every new run so that visual examples and scores can be compared reliably.

06 / Evidence library

The original figure archive.

73 image entries from the research archive, including 5 animations. Original captions are retained. GIFs play at 2× speed and loop continuously; repeated figures remain separate entries.

Open a category to inspect its figures. Select any image to view it at full resolution. Some source captions contain only a track token; these are retained without adding an unsupported diagnosis.

Occlusion and missed detections2 figures
13_frames_of_occlusion.gif
FIGURE 01 · ANIMATION · 2× SPEED13_frames_of_occlusion.gif
13framesoccclusion.png
FIGURE 0213framesoccclusion.png
Crossings and overlapping tracks5 figures
3ada261efee347cba2e7557794f1aec8, two bus tracks intersected, resulting in early termination and restarting of tracks.
FIGURE 033ada261efee347cba2e7557794f1aec8, two bus tracks intersected, resulting in early termination and restarting of tracks.
3ada261efee347cba2e7557794f1aec8.gif
FIGURE 04 · ANIMATION · 2× SPEED3ada261efee347cba2e7557794f1aec8.gif
crossing caused ID switches e60ef590e3614187b7800db3e5284e1a
FIGURE 05crossing caused ID switches e60ef590e3614187b7800db3e5284e1a
crossing.gif
FIGURE 06 · ANIMATION · 2× SPEEDcrossing.gif
track overlapping caused premature termination of the track 07aed9dae37340a997535ad99138e243
FIGURE 31track overlapping caused premature termination of the track 07aed9dae37340a997535ad99138e243
Classification changes12 figures
19d97841d6f64eba9f6eb9b6e8c257dc Alternating classification caused early termination of the track
FIGURE 0719d97841d6f64eba9f6eb9b6e8c257dc Alternating classification caused early termination of the track
26a6b03c8e2f4e6692f174a7074e54ff classification caused premature termination
FIGURE 0826a6b03c8e2f4e6692f174a7074e54ff classification caused premature termination
f2541977a00a448db9b46a32187d9059
FIGURE 19f2541977a00a448db9b46a32187d9059
change birth rate from 0.1 to 0.001 did not resolve the issue, because the missed frame is detected as truck
FIGURE 20change birth rate from 0.1 to 0.001 did not resolve the issue, because the missed frame is detected as truck
alternating_classification.gif
FIGURE 21 · ANIMATION · 2× SPEEDalternating_classification.gif
Alternating Classification afd73f70ff7d46d6b772d341c08e31a5
FIGURE 22Alternating Classification afd73f70ff7d46d6b772d341c08e31a5
Alternating Classifications c65c4acf86954f8cbd53a3541a3bfa3a
FIGURE 23Alternating Classifications c65c4acf86954f8cbd53a3541a3bfa3a
Alternating Classifications d7bacba9119840f78f3c804134ceece0
FIGURE 25Alternating Classifications d7bacba9119840f78f3c804134ceece0
change of classification lead to premature track termination 4efbf4c0b77f467385fc2e19da45c989
FIGURE 28change of classification lead to premature track termination 4efbf4c0b77f467385fc2e19da45c989
30a1a4ccd60047b4a22ee3bf0645f3ad entire track with wrong classification
FIGURE 3230a1a4ccd60047b4a22ee3bf0645f3ad entire track with wrong classification
classification error caused termination
FIGURE 35classification error caused termination
classification caused early termination 0e247ba64b9d4a34a7256b6c173b1b5d
FIGURE 40classification caused early termination 0e247ba64b9d4a34a7256b6c173b1b5d
Birth-rate tuning and track restarts13 figures
premature termination of track for bus e005041f659c47e194cd5b18ea6fc346
FIGURE 09premature termination of track for bus e005041f659c47e194cd5b18ea6fc346
Premature Termination e7ef871f77f44331aefdebc24ec034b7
FIGURE 11Premature Termination e7ef871f77f44331aefdebc24ec034b7
Problem Resolved by Change birth rate to 0.001
FIGURE 12Problem Resolved by Change birth rate to 0.001
Premature Termination of the Pedestrian Track 2ca15f59d656489a8b1a0be4d9bead4e
FIGURE 13Premature Termination of the Pedestrian Track 2ca15f59d656489a8b1a0be4d9bead4e
resolved by changing birth rate to 0.001
FIGURE 14resolved by changing birth rate to 0.001
Premature Termination of the Car Track 3b2ee26cb8484f77895bc336663df502
FIGURE 15Premature Termination of the Car Track 3b2ee26cb8484f77895bc336663df502
resolved by setting birth rate to 0.001
FIGURE 16resolved by setting birth rate to 0.001
Premature Termination of Car Track acc29386502047339e1ec6b9c7e512d2
FIGURE 17Premature Termination of Car Track acc29386502047339e1ec6b9c7e512d2
did not get resolved by changing birth rate from 0.1 to 0.001. The reason this happen is because this part of the track has a curvature.
FIGURE 18did not get resolved by changing birth rate from 0.1 to 0.001. The reason this happen is because this part of the track has a curvature.
Problem Solved by changing birth rate from 0.1 to 0.001
FIGURE 26Problem Solved by changing birth rate from 0.1 to 0.001
termination of the bicycle track due to small birth rate. 1a819a84e3494177b47bea8c7f0770ec
FIGURE 34termination of the bicycle track due to small birth rate. 1a819a84e3494177b47bea8c7f0770ec
Wrong initiation of new track 8edbc31083ab4fb187626e5b3c0411f7
FIGURE 38Wrong initiation of new track 8edbc31083ab4fb187626e5b3c0411f7
Problem Solved by changing the birth rate from 0.1 to 0.001
FIGURE 39Problem Solved by changing the birth rate from 0.1 to 0.001
Turning motion4 figures
turning caused termination of track. This is the second time this appears. but this is already with radar velocity added. 6d872d1448814fd189e631b1187c3771
FIGURE 29turning caused termination of track. This is the second time this appears. but this is already with radar velocity added. 6d872d1448814fd189e631b1187c3771
turning caused track termination 6f83169d067343658251f72e1dd17dbc
FIGURE 30turning caused track termination 6f83169d067343658251f72e1dd17dbc
turning caused premature termination of track
FIGURE 33turning caused premature termination of track
f2541977a00a448db9b46a32187d9059 Turning caused premature track termination
FIGURE 41f2541977a00a448db9b46a32187d9059 Turning caused premature track termination
TO-PMB and MHT comparisons21 figures
9f1f69646d644e35be4fe0122a8b91ef MHT favors the hypothesis for track termination.
FIGURE 439f1f69646d644e35be4fe0122a8b91ef MHT favors the hypothesis for track termination.
TO-PMB tracking result for the same track
FIGURE 44TO-PMB tracking result for the same track
080a52cb8f59489b9cddc7b721808088 MHT
FIGURE 45080a52cb8f59489b9cddc7b721808088 MHT
PMB
FIGURE 46PMB
e7ef871f77f44331aefdebc24ec034b7 MHT sudden jump of track position
FIGURE 47e7ef871f77f44331aefdebc24ec034b7 MHT sudden jump of track position
PMB
FIGURE 48PMB
6f83169d067343658251f72e1dd17dbc MHT sudden change of track position
FIGURE 496f83169d067343658251f72e1dd17dbc MHT sudden change of track position
PMB
FIGURE 50PMB
d1e57234fd6a463d963670938f9f556e MHT
FIGURE 51d1e57234fd6a463d963670938f9f556e MHT
PMB
FIGURE 52PMB
b51869782c0e464b8021eb798609f35f MHT
FIGURE 53b51869782c0e464b8021eb798609f35f MHT
PMB
FIGURE 54PMB
2eb4d7f00e584a548aa0b899638bfb0a MHT
FIGURE 552eb4d7f00e584a548aa0b899638bfb0a MHT
PMB
FIGURE 56PMB
7365495b74464629813b41eacdb711af MHT
FIGURE 577365495b74464629813b41eacdb711af MHT
PMB
FIGURE 58PMB
696a45dbd11346b794fdce43fa0a1770 MHT
FIGURE 59696a45dbd11346b794fdce43fa0a1770 MHT
Original figure; no descriptive caption in the source.
FIGURE 60Original figure; no descriptive caption in the source.
PMB
FIGURE 61PMB
b07358651c604e2d83da7c4d4755de73 MHT
FIGURE 64b07358651c604e2d83da7c4d4755de73 MHT
PMB
FIGURE 65PMB
Coalescence and long associations8 figures
2eb4d7f00e584a548aa0b899638bfb0a
FIGURE 662eb4d7f00e584a548aa0b899638bfb0a
Original figure; no descriptive caption in the source.
FIGURE 67Original figure; no descriptive caption in the source.
Original figure; no descriptive caption in the source.
FIGURE 68Original figure; no descriptive caption in the source.
Original figure; no descriptive caption in the source.
FIGURE 69Original figure; no descriptive caption in the source.
Original figure; no descriptive caption in the source.
FIGURE 70Original figure; no descriptive caption in the source.
Original figure; no descriptive caption in the source.
FIGURE 71Original figure; no descriptive caption in the source.
connection was made from too far away.
FIGURE 72connection was made from too far away.
connection was made from too far away
FIGURE 73connection was made from too far away
Additional source figures and sequence8 figures
01452fbfbf4543af8acdfd3e8a1ee806
FIGURE 1001452fbfbf4543af8acdfd3e8a1ee806
9d1307e95c524ca4a51e03087bd57c29
FIGURE 249d1307e95c524ca4a51e03087bd57c29
0ac05652a4c44374998be876ba5cd6fd
FIGURE 270ac05652a4c44374998be876ba5cd6fd
91c071bcc1ad4fa1b555399e1cfbab79
FIGURE 3691c071bcc1ad4fa1b555399e1cfbab79
c525507ee2ef4c6d8bb64b0e0cf0dd32
FIGURE 37c525507ee2ef4c6d8bb64b0e0cf0dd32
0-ANIMATION.gif
FIGURE 42 · ANIMATION · 2× SPEED0-ANIMATION.gif
Original figure; no descriptive caption in the source.
FIGURE 62Original figure; no descriptive caption in the source.
Original figure; no descriptive caption in the source.
FIGURE 63Original figure; no descriptive caption in the source.

07 / Code and provenance

A map back to the work.

The code spans simulation, nuScenes runners, tracker implementations, and evaluation. Start with the part that matches the question you want to investigate.

Reading and reproduction notes

  • The repository README identifies known implementation errors and credits prior MATLAB implementations.
  • Runners reference machine-specific dataset paths and configuration JSON files. The exact configuration for the featured log is not bundled with that attachment.
  • Detector examples in the code include BEVFusion, CenterPoint, Megvii, and PointPillars. Their presence does not identify which checkpoint produced every archived figure.
  • The 0.761 score comes from the archived evaluation log. Mini-split metrics elsewhere in the repository are separate experiments.

Repository README · Runner examples

Sources and attribution. Research figures and evaluation results: Bai Liping. Implementations and provenance: RFS_Filters, including the README’s credit to Ángel García-Fernández’s MTT code and the PMBMGNN procedure attribution. Dataset and metrics: nuScenes tracking documentation.