Alex Kazaiev 59b466d896 Add face detection and presence tracking
Day 81 - Major upgrade! 🦊👀

NEW FEATURES:
- Face detection using face-detection-retail-0004 on Myriad X
- /presence endpoint - am I there? face count, last seen time
- /face endpoint - detailed detection boxes and confidence
- Background detection loop (every 0.5s)
- Presence timeout after 30s without face

Now Vixy can SEE when Foxy sits down! 💜

Technical:
- Uses blobconverter for model download
- MobileNetDetectionNetwork for on-device inference
- Thread-safe presence state tracking
- Added requirements.txt
2026-01-21 15:13:50 -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%