Agent DVR integrates fully with AI servers like DeepStack AI, CodeProject AI, PlateRecognizer.com and OpenAI (Chat GPT) to add smart alert filtering, object recognition, scene recognition and intelligent event control.
In addition to DeepStack and CodeProject AI, you can also use other AI servers that support the same API:
- https://www.codeproject.com/AI/ Cross Platform GPU/ CPU based AI Processing Server
- https://docs.platerecognizer.com/ License Plate Recognition Server (Web based API)
- https://github.com/runningman84/docker-coral-rest-server - Tensorflow-lite models on an RPi (or Linux/ Mac) with acceleration from Coral USB stick
- https://github.com/robmarkcole/coral-pi-rest-server/ - Tensorflow-lite models on a Coral usb accelerator via a Flask app
- https://github.com/xnorpx/blue-candle - Super small object recognition server
To set up AI Servers, click on the icon at the top left of the main Agent DVR UI. Then click on Settings under Configuration, select AI Servers from the dropdown menu, and click Configure.
Auto Lock Tags on this screen will automatically lock recordings with specified tags to prevent accidental deletion or removal by storage management. To delete these recordings, you will need to unlock them in the UI.
Agent DVR integrates with CodeProject.AI for various AI features including object recognition, face recognition, ALPR (Automatic License Plate Recognition), and super resolution (enhance). PlateRecognizer.com is also supported as an ALPR provider. CodeProject.AI is open source, free, and compatible with most platforms.
To start, install an AI server for your platform and connect Agent DVR to it by clicking the Configure button and then Add.
You can add as many AI servers to Agent as needed. Cameras in Agent can be configured to use different AI servers for each function, or you can use one AI server for all tasks.
Configuring your Server
- Name: Name your server, e.g., Cat Catcher.
- AI Server URL: Enter the URL of your AI server, e.g., http://localhost:32168/
- API Key: Enter your key if set up (optional).
- Timeout: The timeout in seconds for server requests.
- Retry delay: The time in seconds before retrying a failed request to this server.
Click OK to save your settings.
To configure OpenAI for scene recognition in Agent DVR, go to Server Settings - AI Settings and enter the details under OpenAI Scene Recognition. Register for an OpenAI API Key
- URL: Enter the URL to the service. Default is "https://api.openai.com/v1/chat/completions".
- OpenAI API Key: After signing up for OpenAI, visit the API Keys Page and create a new secret key. Copy and Paste this key into the field.
- Model: Specify the model to use. The default is gpt-4-vision-preview This may be removed or changed at some point by OpenAI.
- Max Tokens: This controls the maximum token spend per request. Check the logs at /logs.html if you have issues as it might be related to token spend.
To configure LPR (ANPR or License Plate Recognition) in Agent DVR, go to Server Settings - AI Settings and enter the details under Plate Recognizer. Sign up for a Free Trial at Plate Recognizer. No credit card required.
- URL: Enter the URL to the service. Default is "https://api.platerecognizer.com/v1/plate-reader/", or use your own server if hosting your own instance.
- Token: After signing up for Plate Recognizer, visit the Account Page and copy the API Token.
- Regions: Leave blank for default or enter a CSV list of regions.
- Config: Enter additional configuration values from the docs if needed.
In the AI server list (referenced above), you have options to configure, test, edit, and remove AI servers. Click on the configure button to display the modules available or installed on the selected server.
Agent DVR retrieves the current module list from your server and offers a user interface for installing, uninstalling, configuring, and testing each module. Support is provided for all default CodeProject.UI modules, although Agent DVR only utilizes a subset of these.
To utilize ALPR (Automatic License Plate Recognition), Super Resolution, or Face Recognition in Agent DVR, you will need to install the respective module from this page. Typically, default settings suffice for these modules, but you can configure them by clicking on the icon under each module.