Acoustic Localisation of Road Vehicles

Real recordings and simulated drives, with the detections of each model. Drag a panel to rotate the view and scroll to zoom.

About the data
  • Real recordings: six scenes of the AcousticScenes test set test_easy_together, with LiDAR, annotated vehicles and the microphone audio.
  • Simulated drives: test drives of the synthetic dataset of 12 October 2026.
  • Scoring: a detection counts when it lies within ±5° in bearing and ±5 m in range of a labelled vehicle, measured from the rear axle.

Real Recordings

LiDAR, annotated vehicles and microphone audio recorded on the test car, at the 5 Hz frame rate of the test set. Sound: microphone 1 left, microphone 24 right.

LiDAR ground LiDAR above ground, 0.3 → 4 m LiDAR on an annotated vehicle annotated box and its ±5° / ±5 m gate AcousticBEV heatmap (low → high) detection inside a gate detection outside every gate vehicle missed

Right panel: AcousticBEV (checkpoint good_weight_2) on these recordings. The coloured ground shows its output map; the markers are its detections (threshold 0.2). On test_easy_together it scores F1 0.555 at 5° / 5 m. Boxes: the annotated vehicles within 30 m.

Simulated Drives

Test drives of the final synthetic dataset. Models are trained on traffic to the left of the ego car; the other test sets put the traffic on the right. Sound: microphone 1 left, microphone 24 right.

±5° / ±5 m around each labelled vehicle detection inside detection outside labelled vehicle missed

Test sets. Left: as in training. Right mirror: the left drives mirrored to the right. Right: new drives on the right with the same road conditions. Right realistic: the ego car in the right lane of right-hand traffic, with a cycle path and parking. Labelled vehicles are moving vehicles within 30 m; parked cars are never labelled.

Models

The models shown in the panels above (at most three).

    How to add a model
    1. Run the model on viewer/model_input_<test set>.pkl in the dataset folder. These hold every window shown on this page, in the AcousticBEV input format; each window's id is <drive_id>@<start time>, for example left_test_d0004@12.4.
    2. Save the detections as JSON: {"left_test_d0004@12.4": [[bearing_deg, range_m], ...], ...}, with bearing and range from the rear axle (base_link).
    3. Either load that file here (it stays in your browser), or add {"key": "...", "name": "...", "predictions": "path/to/file.json"} to models.json and run export_sim.py to make it permanent.