Skip to content

feat(vision): NCNN pose models + live keypoint rendering#34

Merged
gbradham merged 1 commit into
mainfrom
feature/ncnn-live-keypoints
Jul 13, 2026
Merged

feat(vision): NCNN pose models + live keypoint rendering#34
gbradham merged 1 commit into
mainfrom
feature/ncnn-live-keypoints

Conversation

@gbradham

Copy link
Copy Markdown
Member

Add support for NCNN-exported YOLO models in the live camera CV path and draw pose keypoints as dots on the preview.

  • cv_processor: detect NCNN models (dir / .param), read task from the export's metadata.yaml so pose models load as task=pose (Ultralytics otherwise guesses detect and misreads keypoint channels), and skip the torch .to() move for the CPU-only NCNN backend.
  • cv_processor: normalize Ultralytics keypoints to a flat (K, C) array (fixes a latent shape bug that also affected vision cones) and render them via new _draw_keypoints, gated on keypoint_min_confidence.
  • CVSettings: add show_keypoints / keypoint_radius / keypoint_color / keypoint_min_confidence (+ serialization).
  • camera settings dialog: model picker accepts .param; add Keypoints overlay toggle.
  • docs: NCNN export/selection guide for faster inference on the Pi.
  • tests: 20 new unit tests (settings round-trip, keypoint drawing across shapes, NCNN path/task resolution, device-move skip).

Add support for NCNN-exported YOLO models in the live camera CV path and
draw pose keypoints as dots on the preview.

- cv_processor: detect NCNN models (dir / .param), read task from the
  export's metadata.yaml so pose models load as task=pose (Ultralytics
  otherwise guesses detect and misreads keypoint channels), and skip the
  torch .to() move for the CPU-only NCNN backend.
- cv_processor: normalize Ultralytics keypoints to a flat (K, C) array
  (fixes a latent shape bug that also affected vision cones) and render
  them via new _draw_keypoints, gated on keypoint_min_confidence.
- CVSettings: add show_keypoints / keypoint_radius / keypoint_color /
  keypoint_min_confidence (+ serialization).
- camera settings dialog: model picker accepts .param; add Keypoints
  overlay toggle.
- docs: NCNN export/selection guide for faster inference on the Pi.
- tests: 20 new unit tests (settings round-trip, keypoint drawing across
  shapes, NCNN path/task resolution, device-move skip).
@gbradham gbradham merged commit 6a23efe into main Jul 13, 2026
4 checks passed
@gbradham gbradham deleted the feature/ncnn-live-keypoints branch July 13, 2026 15:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant