EXPERIENCE → EXPERIMENT

Interactive ADAS engineering laboratory.

Start with a driving scenario. Explore the scene, then investigate how sensors, perception and control affect the response.

EXPERIENCE / EXPERIMENT

3D ADAS Lab

Inspect the scene. Switch systems. Connect what you see to the vehicle response.

Scenario Builder Create, edit and run your own ADAS experiment

Build a scenario without code. The editor changes a draft JSON document, never a Three.js object. Positions use meters (+X forward, +Y left); speeds use m/s. Headings are displayed in degrees and stored in radians. Start times and events use the 20 ms simulation grid.

Valid drafts are saved in this browser. Export JSON to share or back them up.

Scenario metadataDocument ID: my-scenario · Schema v1
EnvironmentStraight road uses one lane; parking uses a 20 m wide area. Intersection has a crossing road, without traffic priority logic.
PLAN PREVIEW · x: −20…147 m · y: ±53 mego starts at 0 segolead-car starts at 0 s1pedestrian-1 starts at 0 s2Click an actor to edit it. The preview shows initial positions; all actors remain selectable in the list when outside this map.
Ego vehicle properties
Brake applies −2 m/s² until stopped. Stationary forces zero speed. Signs and obstacles require stationary behavior and speed zero. ADAS can override ego motion after its start time.
Sensor configuration
Radar settings
Camera settings
ADAS configurationSimple calculated models: ACC gap control; AEB checks all closing tracks and uses stopping distance or TTC below 2 s, braking with −6 m/s²; LKA steers toward the nearest lane center. AEB holds a completed stop until reset. No path planning, collision solver or production calibration.
Timed events

Events act at their simulation time. A speed event also selects constant-speed behavior. Sensor events remove or restore sensor evidence. Events at the same time follow document order.

No builder scenario runningVersion 1 JSON SchemaExample scenario JSON
ADAS / SCENE EXPLORERSIMULATED ENVIRONMENT
Ground truth object Radar measurement Tracked object

Step inside the scenario.

A shared road environment with tracked vehicles, sensor coverage and interactive camera views.

3D loads on demand. Matching tutorials include lightweight 2D explanations.
0.00 / 60 s
SENSOR EVIDENCE → ADAS CAPABILITY

Educational radar–camera fusion

Turn a sensor off to remove its evidence immediately. Physical objects remain. Switches and camera settings are recorded on the simulation timeline and replay deterministically.

  1. GROUND TRUTH7 physical objectsObjects exist independently of detection.
  2. SENSOR2 / 2 enabledRadar range/rate + synthetic camera labels.
  3. DETECTION1 radar · 4 cameraA missing return is not a missing object.
  4. TRACK4 estimatesAssociate IDs and combine sensor evidence.
  5. ADASACC AVAILABLECapability depends on available sensing.

ACCAVAILABLE

Radar ranging is enabled. Camera classification is enabled. Radar ranging and camera classification support the fused tracks.

Live control: fused vehicle/unknown tracks feed ACC. Unavailable sensing removes ACC acceleration; motion coasts.

AEBAVAILABLE

Radar ranging is enabled. Camera classification is enabled. Radar ranging and camera classification support the fused tracks. AEB needs obstacle evidence; availability does not guarantee detection or stopping.

Capability indicator for the sensing lesson. This scenario retains its scripted motion and intervention timing.

LKAAVAILABLE

Two camera lane boundaries are available. Radar is not required for this lane model.

Capability indicator for the sensing lesson. This scenario retains its scripted motion and intervention timing.
Fused tracks at 0.00 s · signed relative velocity along ego heading (negative = closing)
Track IDObject classDistance (m)Relative velocity (m/s)ConfidenceSensor sources
track:pedestrian-roadsidepedestrian29.96Pending second camera sample87%camera
track:sign-0-30traffic sign30.40Pending second camera sample87%camera
track:sign-1-50traffic sign74.04Pending second camera sample72%camera
track:targetvehicle70.00-5.0076%radarcamera
The fusion rules, step by step

1. Match radar tracks and synthetic camera detections by simulation object ID. This deliberately avoids real-world association complexity. Track IDs stay stable while evidence is present; no sensor evidence means no fused track.

2. Convert the camera vehicle center to a rear reference using the synthetic detection?s known dimensions, aligned with ego heading (4.4 m for the standard car). Radar already measures a rear reflector. Average the two positions using each source confidence as its weight. The distance column is the planar range to this combined reference, not an average of mismatched center and bumper ranges.

3. Use camera classification. Radar alone reports “unknown”. Use radar track velocity when present; otherwise estimate velocity from consecutive camera positions and subtract ego motion. The first camera-only sample has no velocity yet.

4. Confidence is the confidence-weighted average of the source scores. It is a teaching score, not a probability of correctness. A missed radar return may leave a short-lived predicted radar track; switching radar off removes it immediately.

Availability is an educational policy, not a production safety assessment. Both healthy sensors support ACC/AEB; one usable source means degraded capability; neither means unavailable. LKA requires two camera lane boundaries and cannot fall back to radar. Empty object detections alone do not imply sensor failure. Built-in radar lessons detect vehicles; builder scenarios also supply their additional actor types. Camera perception uses geometry, not a neural network. Fusion samples a fixed 16:9 camera, independent of browser size.

PHYSICAL SCENE → STRUCTURED INFORMATION

Educational front camera

SIMULATED PERCEPTION — boxes and lane boundaries come directly from simulation geometry. No real computer vision neural network or image recognition runs here.

Settings update immediately, including while paused. Ground Truth bypasses range and confidence filtering; both modes share the same camera field of view. Visibility degradation lowers illustrative confidence and adds a visual haze in Perception mode.

How to interpret the synthetic output

The level camera sits at the ego front bumper, 1.5 m above the road. Distances are exact geometric distances to object centers, presented as synthetic estimates; confidence is a distance/visibility heuristic, not a calibrated probability. Boxes describe projected object envelopes. IDs use perfect ground-truth association. Occlusion, lens distortion, image processing, classification errors and neural networks are not modeled. Objects can therefore be annotated through one another. Lane lines follow known road geometry. Synthetic detections feed the educational fusion module. The fused tracks inform ACC; AEB and LKA retain their scripted lessons.

OBJECT → MEASUREMENT → ESTIMATE

Educational front radar

Geometry-based measurements, not electromagnetic propagation. Objects can be present without a radar return. Radar tracks feed radar?camera fusion; ACC uses the fused estimate. Other lessons retain their existing decisions.

Changing radar settings restarts the current experiment with the same random seed. Accuracy means Gaussian standard deviation: larger values produce more spread. Noise off preserves detection probability.

Ground truth object Radar measurement Tracked object
Latest scan at 0.00 s · age 0.00 s
Object IDRange (m)Range rate (m/s)Azimuth (°)ConfidenceTimestamp (s)
target70.00-5.000.080%0.00
What the sensor and tracker simplify

Range is measured from the front radar to a point at each vehicle’s rear bumper. Range rate is the relative velocity projected onto the line of sight: negative means approaching. Azimuth is measured left-positive from the radar heading; it has no added noise in this model.

Each eligible object has an independent detection chance per scan. Confidence is an illustrative quality score, not a calibrated probability. There are no false returns, occlusion, multipath or electromagnetic effects.

Teal tracks use perfect object-ID association, radial velocity and a simple prediction/smoothing filter. One hit is tentative; a second confirms the track. Missing returns coast for up to max(0.5 s, two scan periods). Tangential motion is not measured. Measurement timestamps stay fixed between scans; predictions advance with simulation time.

The translucent world-view volume has an illustrative height. Only range and horizontal field of view govern detection. Scans run on the 20 ms simulation grid, so non-divisor frequencies are sampled at the next available tick.

CHANGE AN INPUT. OBSERVE THE RESPONSE.

ACC experiment

TARGET DETECTED

Educational model — not representative of any specific production ACC calibration. The controller uses the nearest same-lane fused vehicle or unknown-object track. Compare estimated measurements with ground-truth signals below.

Live changes are replayed when you scrub. Editing after scrubbing replaces future changes. Reset starts a new run with the current settings.

Actual distance
70.0 m
Relative velocity (lead − ego)
-5.00 m/s
Closing speed
5.00 m/s
Actual time headway
2.80 s
Time to collision
14.00 s
Desired following distance
55.0 m
Acceleration command
-1.20 m/s²
Target estimate
Fused sensor track

Live signals

Ground truth and controller command · sampled every 0.1 s. Charts rebuild on replay.

Ego speed90.0 km/h
050990 s10 skm/h · simulation time (s)
Lead vehicle speed72.0 km/h
040790 s10 skm/h · simulation time (s)
Gap70.0 m
039770 s10 sm · simulation time (s)
Target gap55.0 m
030610 s10 sm · simulation time (s)
Acceleration command-1.2 m/s²
-1.2-0.11.10 s10 sm/s² · simulation time (s)
TTC14.0 s
030600 s10 sTTC above 60 s is capped on the plot; gaps mean no finite TTC.
How this teaching controller works

Desired gap = minimum distance + target time headway × ego speed. The controller takes the smaller of a target-speed request and a following request based on gap error and relative velocity. Acceleration is limited to −4 to +2 m/s².

Relative velocity is lead speed minus ego speed. Closing speed is the positive part of ego speed minus lead speed. Time headway divides gap by ego speed; TTC divides gap by closing speed and assumes unchanged motion. No finite TTC is shown when the vehicles are not closing.

CRUISE seeks the selected speed. TARGET DETECTED marks acquisition. CLOSING means the estimated gap is shrinking. DECELERATING means braking is requested. FOLLOWING means estimated speed and gap are close to their targets. TARGET LOST briefly marks loss of the track before cruise control resumes if sensing remains usable. UNAVAILABLE removes ACC acceleration and lets the model coast.

Lead speed changes immediately when adjusted; radar learns about the change on subsequent scans, while synthetic camera updates occur each simulation step. Sensor switches, camera quality, radar noise, missed detections and fusion can affect control. There is no cut-in prediction, AEB override, or production calibration. Some initial conditions cannot avoid contact with the available braking.

Educational geometry and simplified models, not production sensor output or a validated driving simulator. Playback pauses while the lab is off screen or the browser tab is hidden.