Radar Calibration Evidence¶
Calibrex evaluates a supplied radar extrinsic before attempting native radar calibration. The current velocity-consistency path compares measured Doppler against the line-of-sight projection of ego velocity from an external pose track. Dataset decoding remains an adapter concern; the residual API is typed, ROS-independent, and does not depend on nuScenes types.
Evidence Contract¶
- Split support by radar frame, never by individual return.
- Reuse one deterministic train/holdout manifest for the candidate and every known-bad control.
- Evaluate mandatory yaw controls at -10, -5, +5, and +10 degrees.
- Compute detectability only on holdout support.
- Report
INCONCLUSIVE, rather thanFAIL, when holdout support or motion excitation cannot falsify a bad candidate. - Treat translation as unobservable from the current constant-velocity Doppler residual unless angular motion supplies lever-arm information.
Current diagnostics record the fraction of range-eligible returns classified
as static, including frames with zero static returns in the denominator. Yaw
observability uses the residual Jacobian
j = u^T R^T (z × v) in metres per second per radian. This combines ego speed,
velocity direction, line-of-sight geometry, and the candidate rotation in one
direct sensitivity measure. A one-degree-of-freedom yaw condition number would
always be one, so Calibrex reports the physical sensitivity instead.
The provisional yaw policy is deliberately fail-closed. It checks holdout
support, per-sensor yaw sensitivity, and all four known-bad controls before it
interprets the candidate residual. Missing support or falsification power is
INCONCLUSIVE; only a sufficiently supported candidate above a declared
residual limit is FAIL. Residual limits default to unset until a real-data
protocol freezes them, so the development policy cannot emit an accidental
PASS. In result metrics these statuses map to pass, fail, and warn
grades respectively, while the three-valued status remains explicit in
provenance.
The report materializer publishes this contract as
radar_lidar_seeded_holdout_doppler_yaw/v0.1: three evidence summaries,
four signed yaw-control cases, and the embedded policy decision are written to
the standard evidence, protocol, assessment, and policy sidecars. The core
assessment preserves the native three-valued decision as one
radar_policy_decision rule so a subordinate residual failure cannot override
missing observability and turn an INCONCLUSIVE result into FAIL.
For multi-Radar rigs, every configured sensor receives its own frame split, static-return summary, yaw sensitivity, four controls, residual summary, and three-valued assessment. Evidence is never pooled to make a weak sensor appear supported. The aggregate rule is:
any conclusive sensor FAIL → FAIL
otherwise any required sensor INCONCLUSIVE → INCONCLUSIVE
otherwise all required sensors PASS → PASS
A conclusive failure from one sensor is not hidden by another sensor's missing
support. Conversely, quorum passing is not allowed: every required Radar must
pass before the rig receives a yaw-only PASS.
The fixed split and mandatory controls are Calibrex evaluation safeguards. They are not claims that the calibration literature conventionally uses a machine learning-style train/holdout protocol.
Paper-to-Design Mapping¶
| Paper | Design consequence for Calibrex |
|---|---|
| Wise et al., continuous-time radar-camera calibration | Use signed line-of-sight Doppler residuals, evaluate motion excitation, and sample trajectory velocity at each Radar measurement time. |
| Wise, Cheng, and Kelly, spatiotemporal calibration | Jointly refine the six-DoF extrinsic and bounded clock offset against one fixed reference trajectory; retain staged comparisons, rank, holdout, and compensation probes instead of accepting a low residual alone. |
| Cheng, Wise, and Kelly, radar-pair calibration | Report identifiable components and motion requirements. Yaw probes are justified; unconditional translation probes are not. |
| RAVE radar ego-velocity estimation | Add robust static-return selection, inlier ratio, direction coverage, and uncertainty before promoting the metric to a policy gate. |
| Joint radar-camera-LiDAR calibration | Keep target-based tools behind adapters and use loop-closure residuals as independent validation evidence. |
| LiRaCo | Consider cylindrical occupancy as a separate geometric evidence family for cases where Doppler excitation is weak. |
Planned Promotion to a Policy Gate¶
- Record train and holdout residual summaries and the shared frame manifest.
- Require all four yaw controls to have sufficient holdout support before computing a detectable fraction.
- Validate the implemented static-return ratio and yaw-Jacobian sensitivity thresholds on real data; add angular-rate excitation before evaluating a translation lever arm.
- Define
PASS,FAIL, andINCONCLUSIVEthresholds in a schema-validated radar evaluation config. - Validate the unchanged policy on nuScenes mini, including a known-bad candidate.
- Add capture-time convention and time-offset probes before claiming absolute temporal accuracy.
External implementations remain adapters unless their licenses and dependency
boundaries are compatible. No ROS or license-uncertain calibration code should
be copied into src/calibrex.