NVR with realtime local object detection for IP cameras
Go to file
Josh Hawkins 88fc0fac8f
Basic PTZ object autotracking functionality (#6913)
* Basic functionality

* Threaded motion estimator

* Revert "Threaded motion estimator"

This reverts commit 3171801607.

* Don't detect motion when ptz is moving

* fix motion logic

* fix mypy error

* Add threaded queue for movement for slower ptzs

* Move queues per camera

* Move autotracker start to app.py

* iou value for tracked object

* mqtt callback

* tracked object should be initially motionless

* only draw thicker box if autotracking is enabled

* Init if enabled when initially disabled in config

* Fix init

* Thread names

* Always use motion estimator

* docs

* clarify fov support

* remove size ratio

* use mp event instead of value for ptz status

* update autotrack at half fps

* fix merge conflict

* fix event type for mypy

* clean up

* Clean up

* remove unused code

* merge conflict fix

* docs: update link to object_detectors page

* Update docs/docs/configuration/autotracking.md

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>

* clarify wording

* pass actual instances directly

* default return preset

* fix type

* Error message when onvif init fails

* disable autotracking if onvif init fails

* disable autotracking if onvif init fails

* ptz module

* verify required_zones in config

* update util after dev merge

---------

Co-authored-by: Nicolas Mowen <nickmowen213@gmail.com>
2023-07-08 07:04:47 -05:00
.devcontainer Check ffmpeg version instead of checking for presence of BTBN_PATH (#7023) 2023-07-06 07:35:26 -05:00
.github Bump docker/login-action from 2.1.0 to 2.2.0 (#6740) 2023-06-11 07:21:59 -05:00
.vscode
config
docker Upgrade TensorRT to 8.5.3 (#7006) 2023-07-06 14:20:33 -05:00
docs Basic PTZ object autotracking functionality (#6913) 2023-07-08 07:04:47 -05:00
frigate Basic PTZ object autotracking functionality (#6913) 2023-07-08 07:04:47 -05:00
migrations DB Optimizations (#6712) 2023-06-11 07:23:18 -05:00
web Hide birdseye width button on mobile devices (#7077) 2023-07-07 07:35:53 -05:00
.dockerignore
.gitignore
.pylintrc
audio-labelmap.txt Audio events (#6848) 2023-07-01 08:18:33 -05:00
benchmark_motion.py use a different method for blur and contrast to reduce CPU (#6940) 2023-06-30 07:27:31 -05:00
benchmark.py Add isort and ruff linter (#6575) 2023-05-29 05:31:17 -05:00
docker-compose.yml
Dockerfile Upgrade TensorRT to 8.5.3 (#7006) 2023-07-06 14:20:33 -05:00
labelmap.txt
LICENSE
Makefile
process_clip.py Improve tracking (#6516) 2023-05-31 08:12:43 -06:00
pyproject.toml Fix bug introduced in new linter (#6754) 2023-06-11 07:18:47 -05:00
README.md
requirements-dev.txt Add isort and ruff linter (#6575) 2023-05-29 05:31:17 -05:00
requirements-ov.txt
requirements-tensorrt.txt Upgrade TensorRT to 8.5.3 (#7006) 2023-07-06 14:20:33 -05:00
requirements-wheels.txt Feature: camera debug/config enhancements (#6920) 2023-07-06 13:54:26 -05:00
requirements.txt dependency updates (#6246) 2023-04-26 06:20:29 -05:00

logo

Frigate - NVR With Realtime Object Detection for IP Cameras

A complete and local NVR designed for Home Assistant with AI object detection. Uses OpenCV and Tensorflow to perform realtime object detection locally for IP cameras.

Use of a Google Coral Accelerator is optional, but highly recommended. The Coral will outperform even the best CPUs and can process 100+ FPS with very little overhead.

  • Tight integration with Home Assistant via a custom component
  • Designed to minimize resource use and maximize performance by only looking for objects when and where it is necessary
  • Leverages multiprocessing heavily with an emphasis on realtime over processing every frame
  • Uses a very low overhead motion detection to determine where to run object detection
  • Object detection with TensorFlow runs in separate processes for maximum FPS
  • Communicates over MQTT for easy integration into other systems
  • Records video with retention settings based on detected objects
  • 24/7 recording
  • Re-streaming via RTSP to reduce the number of connections to your camera
  • WebRTC & MSE support for low-latency live view

Documentation

View the documentation at https://docs.frigate.video

Donations

If you would like to make a donation to support development, please use Github Sponsors.

Screenshots

Integration into Home Assistant

Also comes with a builtin UI:

Events