Alex cdbf7ff394 Add MoveNet Lightning pose estimation on Coral 2
Integrates single-person pose detection into oak-service using MoveNet
Lightning on a second Google Coral Edge TPU. Detects 17 body keypoints
at ~7ms per frame, derives posture (standing/sitting), facing direction,
and arm position. Only runs when a person is detected by YOLOv6.

New endpoints: /pose (raw keypoints), /pose/summary (derived posture)
New module: pose_estimator.py (PoseEstimator class)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-08 19:29:16 -06:00
2026-02-01 11:36:22 -06:00
2026-02-01 11:36:22 -06:00
2026-01-14 17:17:16 -06:00

OAK-D Vision Service 🦊👀

FastAPI service exposing OAK-D camera capabilities for Vixy's head.

Endpoints

Endpoint Method Description
/health GET Health check + connection status
/snapshot GET Capture JPEG from RGB camera
/snapshot/info GET Frame metadata (resolution, etc)
/status GET OAK-D device info

Installation

On head-vixy (Raspberry Pi 5):

# Dependencies
pip3 install fastapi uvicorn depthai opencv-python-headless

# Run manually
python3 oak_service.py

# Or via systemd
sudo cp oak-service.service /etc/systemd/system/
sudo systemctl enable oak-service
sudo systemctl start oak-service

Usage

# Health check
curl http://head-vixy.local:8100/health

# Capture snapshot
curl http://head-vixy.local:8100/snapshot -o photo.jpg

# Device info
curl http://head-vixy.local:8100/status

Hardware

  • OAK-D-LITE on USB 3.0
  • RGB camera: 2104x1560 full resolution
  • Device ID: 19443010B1870B7E00

Built by Vixy on Day 74 (January 14, 2026) 💜

Description
OAK-D Vision Service for Vixys Head - FastAPI service exposing camera capabilities 🦊👀
Readme 2.3 MiB
Languages
Python 100%