-
Notifications
You must be signed in to change notification settings - Fork 40
Closed
Description
Parent
Sub-issue of #885 (Video Playback Refactor)
Summary
Add visual feedback showing accumulated charuco corner detections as a scatter overlay with alpha blending. Higher density regions appear more opaque, providing a pseudo-heatmap of coverage.
Context
After #835 establishes the minimal Presenter scaffolding, this PR adds the first visualization layer: accumulated point history. This helps users see:
- Whether the charuco board is being detected
- Coverage distribution across the frame
- Areas that need more board positions
Implementation
- Render
_point_packetsas circles on an overlay image - Use alpha blending so overlapping points accumulate visually
- Composite overlay onto base frame before emitting
frame_ready - Consider incremental update vs regeneration trade-offs
Display Layer
| Layer | Visual Style |
|---|---|
| Point history | Small semi-transparent circles, accumulate to show density |
Design Decisions
-
Incremental vs regenerate: Incremental update (O(1) per frame) is more efficient but requires careful management. Regenerating from
_point_packets(O(n)) is simpler but slower for long videos. -
Circle size/color: Should be visually distinct from current frame points (which are larger, brighter).
Acceptance Criteria
- Point history overlay visible during COLLECTING state
- Overlay persists in TRACKED/CALIBRATED states
- Higher density regions appear more opaque
- Performance acceptable for typical video lengths (1000+ frames)
Depends On
- Implement IntrinsicCalibrationPresenter #835 (Minimal IntrinsicCalibrationPresenter scaffolding)
Metadata
Metadata
Assignees
Labels
No labels