Skip to content

PitchTracker v2.0.0 - Stereo Foundation Rebuild

Latest

Choose a tag to compare

@berginj berginj released this 27 Jun 02:32

Current repository status (2026-07-22): This tag remains the latest published release identity, but it has no installer asset and main contains substantial evidence, replay, setup, CI, and documentation hardening beyond this tag. Physical speed and plate-location accuracy are not yet validated for public claims. See Current Status and Installation.

PitchTracker v2.0.0 — Stereo Foundation Rebuild

This release rebuilds the stereo camera foundation so the system can genuinely
receive, pair, compare, and calibrate left/right camera images before any
pitch-tracking logic runs.

Highlights

  • Genuine 9-step stereo setup wizard — a real StereoSetupWindow driven by a
    setup state machine: detect/select cameras → live paired preview → timestamp &
    sync check → manual fixed-focus + exposure lock → left/right overlap & feature
    match → targetless coarse rectification → optional ChArUco fine-tuning →
    persist calibration profile → calibration quality report. Wired into the
    launcher via a dedicated Stereo Setup role button.
  • Camera catalog service — persistent catalog of known/supported cameras
    (Arducam global-shutter fixed-focus) with side assignment and model matching,
    so device state carries across sessions.
  • Capture-sync foundation — paired stereo capture, timestamping, and
    left/right synchronization checks.
  • Stereo calibration hardening — overlap/feature-match validation,
    targetless coarse rectification, and a calibration quality report widget.
  • ChArUco repositioned as optional fine-tuning (intrinsics, distortion,
    scale/baseline validation) after the stereo pair is already operational.
  • ArduCam detection diagnosticstools/diagnose_camera_detection.py plus
    capability-probe tooling to debug inconsistent device enumeration.

Engineering

  • Live provider injection (build_live_stereo_step_widgets) keeps the wizard
    fully testable without hardware.
  • launcher.py refactored under the 500-line guard; file-length CI gate
    restored to green.
  • Full test suite: 1054 passed / 32 skipped.

Version

  • APP_VERSION = 2.0.0 (contracts/versioning.py), SCHEMA_VERSION = 1.2.0.
  • Installer label: PitchTracker-Setup-v2.0.0-stereo.exe.

Status

Core stereo software foundation is complete and validated in simulation. The
remaining work is hardware-bound: on-rig validation with the Arducam cameras
and end-to-end calibration producing report.json.