Tooling

Camera AI / Object Detection

CodeProject AI, DOODS, Compreface — bolt-on object & face detection for cameras.

The "spot a person, ignore the cat" layer. Frigate has its own detector pipeline; these are alternatives or complements when you need face recognition, license-plate reading, or a centralized detector that several NVRs share. For Frigate itself see Cameras & NVR; for other AI / LLMs see AI / LLM.

Detector services (HTTP API for "is this a person?")

  • CodeProject AI Server — successor to DeepStack (which is sunset). Self-host detector with HTTP API; Blue Iris and others integrate directly. Modules for object detection, face recognition, license plate, sentiment.
  • DeepStacksunset / no maintenance since DeepQuestAI pivoted in 2023. Don't pick for new deployments; CodeProject AI is the replacement.
  • DOODS (Dedicated Open Object Detection Service) — Go-based; gRPC + HTTP; runs TFLite, TensorFlow, EdgeTPU models; the "tiny detector microservice" of choice.
  • Frigate built-in detector — the default if you're on Frigate; rarely need a separate detector unless you want face/plate recognition.

Face recognition

  • CompreFace (Exadel) — open-source face recognition; web UI; REST API; ~95 % accuracy with default models; HA integrations. Self-host.
  • Double Take — middleware that takes Frigate clips, runs them through CompreFace / DeepStack / CodeProject AI for face recognition, then publishes results to MQTT. The glue between Frigate and a face engine.
  • face_recognition (ageitgey) — Python lib on dlib; classic; great for one-off scripts.

License plate (ALPR)

  • OpenALPR — open-source ALPR; reasonable accuracy; mostly maintained by Plate Recognizer (commercial fork).
  • Plate Recognizer — commercial; very accurate; free tier (2,500 lookups/mo). Frigate has a Plate Recognizer integration.
  • CodeProject AI ALPR module — bundled with the server; free; lower accuracy than Plate Recognizer.

Frigate Plus (paid, custom-trained)

  • Frigate Plus — submit clips from your specific cameras; receive a fine-tuned YOLO model that recognizes your mailman, your delivery van, your squirrel. ~$50/year. Funds Frigate's open-source development.
  • Self-train YOLOv8/9 — Ultralytics; free; possible if you have GPU and a few thousand labelled frames. Significant time investment.

Image embeddings / semantic search (the 2026 trick)

  • Frigate Search — (Frigate 0.14+) — semantic search over your detected events using CLIP embeddings. "show me the white delivery van from yesterday."
  • CLIP-as-service / Embed4 / openCLIP — host a CLIP embedding endpoint; index Frigate's event thumbnails into a vector DB (see Vector Databases).
  • Local LLM vision (LLaVA, Qwen2-VL, Llama 3.2 Vision via Ollama) — pass a still image and ask "describe this." HA's LLM integrations chain it for "tell me what's at the door."

Practical guidance

  • Run the detector on the same box as the NVR if possible. Network latency dwarfs detector latency once you cross hosts.
  • Don't face-recognize every frame. Run face recognition only on Frigate's person events — orders of magnitude less compute.
  • GPU helps for face / large YOLO; CPU is fine for "is this a car or a person."
  • Privacy posture: all of these run locally; no images leave the network. CodeProject AI and Compreface both have a "no telemetry" config; verify.
  • License plates are only useful if you actually need them. OCR is fragile; angles matter; consider whether a contact sensor or ANPR ALPR camera makes more sense.

Pick this if…

  • Default detector beyond Frigate's built-in: CodeProject AI Server.
  • Face recognition for HA: CompreFace + Double Take.
  • License plate recognition: Plate Recognizer free tier (cloud) or CodeProject AI's ALPR (local, weaker).
  • Custom-trained model for your scenes: Frigate Plus.
  • "Search my camera footage by description": Frigate's built-in CLIP search (0.14+).

On this page