AI product Open source
VisionState is a self-hosted Home Assistant app that turns camera images into sensors for user-defined states, object presence and counts, and numeric readings. Users select a camera region and label examples such as open, closed, or halfway; a DINOv2 ONNX vision model converts the region into a feature vector, and a small per-sensor classifier learns from the labelled images. Object sensors use the D-FINE detector, while reading sensors use PaddleOCR or a dedicated mechanical-meter wheel reader. Results are published through MQTT discovery as normal Home Assistant entities, with options for region selection, event-based triggers, debouncing, confidence thresholds, review queues, history, and last-frame images.
The application runs locally on CPUs, including Raspberry Pi 4 and 5, without cloud services, telemetry, a GPU, or a subscription. It is distributed as a Home Assistant app for Home Assistant OS or Supervised, and its source repository also documents local development with FastAPI, ONNX Runtime, scikit-learn, Svelte, Vite, and TypeScript. VisionState and its bundled models are licensed under Apache-2.0.
1 use taken from transcripts — each links to the moment in the video.
Turns what a camera sees into a Home Assistant sensor you can act on: pick part of the image, label a few examples, and it learns states like open, closed, or halfway. It can also count cars or people and read meter digits, and everything runs locally on a CPU, including a Raspberry Pi, so camera images stay at home.
1 in the library.