Frigate: Open-source network video recorder with real-time AI object detection

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • frigate

    NVR with realtime local object detection for IP cameras

  • I believe you can trigger recording with mqtt, so you could make an automation for it. You could try to bump this https://github.com/blakeblackshear/frigate/issues/2590#issue.... You could even try to use ai to write the feature.

    There's only been one incident where I would have liked continuous, I've tweaked events to be more than enough.

  • iot_devices.nvr

    Network video recorder for iot_devices compatible apps

  • I found motion detection to be the easy part when building my NVR. I just used trial and error and scipy filters and eventually found something I'm happy with.

    Handwriting a GST pipeline is pretty much what I did. I start with frame differences(I only decode the keyframes that happen every few seconds, so motion detection has to work in a single frame to have good response time).

    Then I do a greyscale erosion to suppress small bits of noise and prioritize connected regions.

    After that I take the average value of all pixels, and I subtract it, to suppress the noise floor, and also possibly some global uniform illumination changes.

    Then I square every pixel, to further suppress large low intensity background noise stuff, and take the average of those squares.

    NVR device code(In theory this can be imported and run from a few like python script), but it needs some cleanup and I've never tried it outside the web server.

    https://github.com/EternityForest/iot_devices.nvr/blob/main/...

    GST wrapper utilities it uses, motion detection algorithms at top:

    https://github.com/EternityForest/scullery/blob/master/scull...

    My CPU object detection is OK, but the public, fast, easy to run models and my limited understanding of them is the weak point. I wound up doing a bunch of sanity check post filters and I'm sure it could be done much better with better models and better pre/post filtering.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • scullery

    Python library for things like media playback, thread pools, and a message bus.

  • I found motion detection to be the easy part when building my NVR. I just used trial and error and scipy filters and eventually found something I'm happy with.

    Handwriting a GST pipeline is pretty much what I did. I start with frame differences(I only decode the keyframes that happen every few seconds, so motion detection has to work in a single frame to have good response time).

    Then I do a greyscale erosion to suppress small bits of noise and prioritize connected regions.

    After that I take the average value of all pixels, and I subtract it, to suppress the noise floor, and also possibly some global uniform illumination changes.

    Then I square every pixel, to further suppress large low intensity background noise stuff, and take the average of those squares.

    NVR device code(In theory this can be imported and run from a few like python script), but it needs some cleanup and I've never tried it outside the web server.

    https://github.com/EternityForest/iot_devices.nvr/blob/main/...

    GST wrapper utilities it uses, motion detection algorithms at top:

    https://github.com/EternityForest/scullery/blob/master/scull...

    My CPU object detection is OK, but the public, fast, easy to run models and my limited understanding of them is the weak point. I wound up doing a bunch of sanity check post filters and I'm sure it could be done much better with better models and better pre/post filtering.

  • sbts-install

    Discontinued Installs StalkedByTheState over the sbts-base system to build a home and business security appliance on NVIDIA Jetson series computers.

  • I use StalkedByTheState (https://github.com/hcfman/sbts-install) with 15 cameras all being evaluated with an NVIDIA GPU with large model yolov6 and matches double checked with large yolov7. Practically never get a false positive in a complex environment and never get a miss. The port to the Orin series still needs to be completed though.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts