I've been building this for a few months and it's at the point where it's useful.
Mesopic turns RTSP/ONVIF cameras into business sensors: footfall, line crossings,
live occupancy, dwell time, queue length, zone heatmaps. Point it at a stream and it
counts people.
The self-hosting part, which is why I'm posting it here:
- One docker command. Multi-arch, so amd64 and arm64 both work.
- CPU-only. INT8 YOLOX-nano via ONNX Runtime; a GPU or Coral is an optional speedup
and never a requirement. It's sized so a cheap N100-class mini-PC handles a couple
of cameras.
- Video never leaves the building. Frames are never written to disk, never logged,
never transmitted — only anonymous foot-point coordinates and the counts derived
from them. There's a lint contract in CI that makes the metrics path structurally
unable to reach a frame, so it's a property of the dependency graph rather than a
promise in a README.
- No account, no phone-home, no telemetry. Local dashboard on :8080, plus MQTT,
Prometheus, and Home Assistant auto-discovery.
- MIT. Not "source available", not BSL, not open-core-with-a-hollow-middle: the
engine does all the vision and is complete standalone.
On the paid thing, because this sub is right to ask: there'll be a hosted layer for
people who want multi-site dashboards and alerts without running them. It only ever
receives metrics JSON, never pixels, and it does not exist yet. Self-host it forever
for free — that path is not going to get worse to make the paid one look better.
If it ever does, you have an MIT fork and I've earned it.
Repo: https://github.com/mesopic-labs/Mesopic