A quick overview of Frigate and Zoneminder
Frigate NVR web interface in debug mode showing tracked objects - screen taken from Frigate docs
TLDR: ZoneMinder < Frigate, also AI Object detections is the future on CCTV, in case you need a Frigate notification tool at the bottom there is the script which i quickly wrote
So this is my journey of testing various NVR opensource softwares, a few years ago i decided that the traditional CCTVs software was not enought for me this is why i started scouting for the best NVR software
Here below you can find my requirements and expectations i had at that time:
- Has motion detect
- Support ONVIF cameras with rtsp streams
- Can be fine tuned on a per area basis
- Can send notifications (email/chat etc..)
Those requirements at that time were fulfilled correctly by ZoneMinder which is a nice tool and served well for years in my case
ZoneMinder web ui, pretty old school but does the job, screen taken from docs
But ZoneMinder has some cons, over time the areas cannot be tuned anymore and some false positives started to grow such as rain, snow, sun/night transitions and so on
Another tricky part of this tool is that the setup cannot be automated completely (as of today), for example using an Helm chart as there are many moving parts and the container will mostlikely be a "VM" (plus the effort of splitting the various services processes will take a lot of time)
This triggered in me the need to leverage CCTV fotage in combination with a motion plus object detection combination in a software with low maintenance
After the re-evaluation of the criterias i decided that is the time to scout for a new tool (thanks to a colleague for the suggestion of Frigate)
Those were the new matching criterias to have a successful setup:
- Does motion detect + object detection
- Deployable on Kubernetes (Helm or Dockerfile ready to use)
- No more false positives
So i discovered Frigate , which is a great NVR opensource tool which has an integrated object detection mechanism to allow CCTV footage events to be processed near real time
The processed objects/events (e.g. person, cat, car...) can be computed by CPUs or external devices such as Google Coral TPUs which makes the processing less CPU intensive
All the above criterias were filled by this new tool this is why i proceeded to decommission my ZoneMinder VM with a dedicated Frigate deployment in order to have it inside a Terraform IaC
The results were amazing, as soon as i implemented a notification script called Kondor i was able to have no more false positives and instant notifications for the events with the integrated AI object detection
The key lesson here is that any AI model with object detection is far superior than just simple motion detect events
Bonus points is that with Frigate you could train your own model and use with the already customizable options to mask and filter out zones
They also have premium plans in order to have access to models on their platform
Comments
Post a Comment