Add TFLite object detection to reduce false positives

Motion detection now optionally runs MobileNet V2 SSD (COCO, quantized)
on frames that trigger motion, identifying objects like people, cats, and
cars. Events without detected objects are suppressed by default. Snapshots
include bounding box annotations. New MCP tool vision_get_detections()
enables label-based queries.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Alex
2026-02-08 17:04:10 -06:00
parent 68c7e9772f
commit e1171e8ff8
11 changed files with 687 additions and 50 deletions

View File

@@ -46,6 +46,20 @@ MOTION_COOLDOWN=5.0
# Seconds between frame checks
MOTION_INTERVAL=0.5
# ============ Object Detection ============
# Enable AI object detection (requires tflite-runtime and model download)
# When enabled, motion triggers object detection to identify what moved.
# Events with no detected objects are suppressed (configurable).
DETECTION_ENABLED=false
# Minimum confidence for a detection (0.0-1.0, lower = more detections)
DETECTION_CONFIDENCE=0.5
# Suppress events where motion is detected but no objects found
# Set to false to keep reporting all motion events
DETECTION_SUPPRESS_EMPTY=true
# ============ Event Collector ============
# URL to POST motion events to (collector on Mac mini)