To get started, install DeepStack AI for your platform (Docker). Use the GPU version if possible (you'll need an nvidia card for GPU acceleration). Make sure it's running in Vision Detection mode. To do that via the command line pass in "-e VISION-DETECTION=True".

When you have the deepstack server up and running and in object detection mode, switch back to Agent and go to Settings and select the Intelligent Filter settings tab:

Put in the URL of the deepstack server here. Then edit a camera and go to the Alerts tab and click to configure the Intelligent Filter option:

Agent will generate motion events as normal (according to the motion detection tab) and when it does it will use DeepStack to look for relevant objects in the scene and decide if this is a real alert or not.

For Agent to apply the AI filter to new recordings, make sure Mode on the Recording tab when you edit the camera is set to Alert and not Detect.

Note: The first request into DeepStack can take a while to complete whilst it is initializing. You may see an error message about it not responding. Usually the second request will complete OK.

Configure the options on the screen. In this example we're blocking out the office using the Mask option but looking for people in the corridor. If a person is detected an alert will be generated.

When you are done click OK and then toggle the Enabled switch to start using intelligent filtering.

DeepStack Troubleshooting

If DeepStack isn't filtering your recordings:

  • Check that the recording mode on the recording tab when you edit the camera is set to Alert not Detect. DeepStack filtering only filters alert events.
  • Check that DeepStack filtering is enabled on the Alerts tab.
  • Check the logs at /logs.html for error messages from DeepStack. Possibly the DeepStack service is running on a different port or a firewall or antivirus is blocking access to it. If Agent can't contact DeepStack it will record the event.
  • Check the alert condition. If, for example you have it set to Alert when objects detected is less than 2 then it will alert when nothing is detected.
  • Check that DeepStack isn't overloading your computer. If DeepStack can't process the images quickly then it will time-out and Agent will give up waiting for a result and start recording. If DeepStack is timing out you will see errors in the logs. You may need to move the DeepStack service to another computer with more resources or a compatible GPU.