Expand description
The sim.toml scenario schema: the single source of truth for a simulated
run (arena, cameras, insects, blob rendering, frame rate).
Structs§
- Arena
- Axis-aligned bounding box of the tracking volume, in meters.
- Blob
Params - Parameters for rendering an insect as a Gaussian blob (used by the
ci2-simbackend). Defaults are values the real detector reliably localizes. - Calibration
Perturbation - Calibration perturbation: the generation calibration (used to project ground truth into 2D — i.e. “what was imaged”) stays perfect, while the tracking calibration (what Braid reconstructs with) is perturbed by these magnitudes. A nonzero perturbation makes triangulation slightly inconsistent with the detections, so reprojection error is realistic rather than zero — exercising robustness and reprojection-error-driven behavior.
- Camera
Calib Offsets - Deterministic per-camera offsets applied to the tracking calibration by a
CalibrationPerturbation. Each component is signed, uniform in[-magnitude, +magnitude], and reproducible from(seed, camera index). - Camera
Rig - How the synthetic cameras are arranged: an evenly-spaced horizontal ring around the arena center, all looking inward. Intrinsics are an ideal pinhole (no distortion) for the perfect-world baseline.
- Insect
Spec - One simulated insect.
- Lissajous
- A smooth, bounded, deterministic 3D motion: a per-axis sinusoid (Lissajous figure) confined to a fraction of the arena half-extent.
- Observation
Model - Observation-model imperfections applied to the 2D detections. All default to zero, so the perfect-world baseline is unchanged.
- Occlusion
Model - Temporally-correlated occlusion: an insect is hidden from a camera for contiguous spans of frames — modeling it passing behind another insect or an arena feature.
- Scenario
- A complete simulated scenario, deserialized from
sim.toml. - Timing
Model - Per-camera frame-arrival timing perturbation.