u/BennoBaer_dev

Almost done with my Frigate face/person recognition  companion (suslik), just short of 1.0. What do you think?

Almost done with my Frigate face/person recognition companion (suslik), just short of 1.0. What do you think?

Two weeks ago I posted here that I wanted to build a companion for Frigate. It's nearly done now, just short of a 1.0, and I'd be happy about some feedback.

What's in: four ways it recognizes people.

  1. After the event, from the full recording. Slowest but most thorough, this one gives the final verdict.
  2. By the person itself: build, outline, clothing. Works when there's no usable face at all.
  3. Through a vision model. You choose whether that runs locally or against a cloud endpoint.
  4. And a live watcher: it spots a face on the camera stream itself and then names the person as fast as it can, so an MQTT message can go out within about a second.

For learning there's no photo uploading. You can run through all your past events and it tells you who was on your property and when, groups the recurring people, picks the faces worth learning by itself, and you can export them too.

Have a look if that sounds useful. I'd really appreciate feedback, good or bad, via GitHub or mail: suslik_dev@posteo.de. (The rocm and gpu-legacy variants I can't test myself, I don't even have the hardware, so reports there help twice.)

github.com/BennoBaer-dev/suslik

https://preview.redd.it/owe08ucds6jh1.png?width=1402&format=png&auto=webp&s=a7fd0cb447d8480e8db461d4b35fcd5305d4cb69

reddit.com
u/BennoBaer_dev — 7 days ago

suslik update: person recognition without a visible face — learned from your own footage, fully local

First of all, thank you to everyone who gave feedback on suslik here. Face recognition works quite well by now.

What bothered me for a long time: sometimes an event showed up as "unknown" although it clearly was a known person — just without a visible face, from behind or too far away. I thought about this for quite a while, and I had also asked here in the forum what you think about a cloud solution. After that I tested a lot, cloud models and local ones. My conclusion: this only works cleanly with big models. The small ones that fit on home hardware sometimes recognize people, but they never reliably say "that's a stranger".

So I went a different way: DINOv2 translates every person image into a kind of numerical fingerprint of the whole appearance. Behind that I put a small model that learns from your own, hand-approved images which fingerprint belongs to whom — with a threshold that strangers stay below. It learns step by step from your own camera material and gets better over time. Everything runs locally, nothing leaves your machine.

This is now in the current version as a preview, under "Learn". If you feel like it, give it a try. The same approach could also learn objects, cars or dogs for example — for that I'd need testers with some time and patience. I'd be happy about any feedback.

https://github.com/BennoBaer-dev/suslik

tanks Benrd

u/BennoBaer_dev — 16 days ago

Built a Frigate companion that treats a walk across several cameras as one scenario

Hey everyone,

this is my first Reddit post ever, I hope I am doing this right and apologize if not.

I have been running Frigate for years and I am a big fan, it just works and I would not want to change a thing about it. The one thing I always wished for was face recognition that looks across all my cameras at once, instead of deciding per camera and per event, often from a single frame. So I built that on the outside: a small separate service next to Frigate that takes its events and recordings and looks at them as one scenario.

The core idea is the "pass". When someone walks across my property they show up on several cameras one after another. To Frigate that is three events, to my service it is one scenario. It takes the best viewing angle across all cameras together and never trusts a single frame: someone only counts as recognized once several frames within a short window agree. That is where the false matches went away for me. When it is not sure, it says unknown.

When I first wrote about this it was a prototype. By now it is a Docker container that a handful of testers run on their own hardware (Intel, NVIDIA, plain CPU, with older Intel iGPUs and AMD as testing variants), source is MIT: https://github.com/BennoBaer-dev/suslik

The part that just got finished is my favorite: learning. A guided run over as many past recordings as you choose harvests faces and groups recurring people. You review the recommended shots, name the whole cluster once and adopt it into recognition. No photo uploads, it learns from your own recordings.

One thing I want to be upfront about: I am a retired software architect and I build this together with Claude Code, so a good part of the code is AI-written. The measurements, the decisions and the daily testing on my own six cameras are mine, but I do not want to dress myself in borrowed feathers. (This post is translated too, English is not my first language.)

Honest status: alpha. It runs daily at my place, but expect rough edges.

And that is why I am posting: I would love honest feedback. Ideas on what to build next are just as welcome as a plain "no need for this", that helps me too.

Two things I am weighing right now: rebuilding the recognition so it reacts to the live stream instead of waiting for the finished clip. And adding a vision model that ties clear faces to bodies, so the body can carry the recognition through the moments when the face is hard to see.

My own reason for all this is simple: I mainly want to know when a stranger is on my property, so my Home Assistant can fire. But it could just as well fire on known people, if that is what you would need.

Thanks Bernd

https://preview.redd.it/bbfgrjjvixgh1.png?width=1442&format=png&auto=webp&s=8d8df8a54b12789efa753b8c9a0a06bf49b9adb2

reddit.com
u/BennoBaer_dev — 18 days ago