Deepstack - Soo many motion detections are being marked as "nothing found".. othertimes it works?

joshwah

Pulling my weight
Apr 25, 2019
306
147
australia
Hey everyone,

Hoping to get a bit of help/direction on this.

I am currently running the latest version of blue iris, 5.4.9.16

I am having some really annoying and inconsistent issues with deepstack and motion detections.

For example, BI will correctly trigger motion, and I am happy with how i've tweaked it. However, 50-60% of the time, it comes up as "nothing found". What is interesting about it is, if I playback the motion alert which has the label "nothing found" and enable "deepstack".. as the person walks it clearly identifies them as a person multiple times.. yet not on the "Alerts tab" which maintains "nothing found".

I've tried multiple things, such as:
1. Changing the pre-trigger video buffer to 10-15 seconds.
2. Under the AI tab of the camera, changing the min confidence to 1% + real time images to "10" and analyze one ach 250-500ms

Here is a screenshot of how my AI tab looks like for my camera:

1627974772804.png1627974823128.png1627974857955.png1627975208381.png
 
First thing to do is cut the pre-trigger time down to three seconds. With long pre-trigger times BI sends images to DS to process that don't contain objects you're interested in.
 
I've seen that same behavior when using "analyze" with DS since I started using DS. My take on it is that "analyze" is using something slightly different, be it the images, themselves, or a variation is introduced in DS. Something is definitely different though so taking that as an absolute isn't a good idea. The behavior is the same with both the CPU and GPU versions in my testing anyway.
 
It has been reported to BI support but I haven't heard from anyone if there was a reply or explanation.
 
As of right now, tuning and live DS analysis are two separate things at the moment. Tuning will always find more because it is after the fact analysis and not real time needing to process quickly.

In tuning, DS has the ability to slow the frames down to check it (and the help file does mention the AI boxes may be delayed); whereas live it doesn't give it that much time. So it is neat to see, but not yet there on correlation.
 
I would assume so. BI is making updates and improvements constantly.

DeepStack with BI has come a long way since it's initial debut, so I am sure that this whole iteration process is leading to that path.
 
  • Like
Reactions: sebastiantombs
@YrbkMgr - what camera do you have there? Many of us have found the Dahua AI to be superior at the moment to DS and would probably accomplish what you are looking for.

 
You said your hotspot wasn't firing as intended and "DS doesn't respect it and fires only based on object ID ", so a clone would take that DS component out of it and the hotspot would fire for ANY trigger.
 
It would trigger for the hotspot for any motion, which is the original intent of the hotspot was to fire regardless of any other settings.
 
If you can, consider using a GPU, NVidia required by DS, for DS. I switched from CPU to GPU and rarely have a miss from DS. Those misses are related to lack of contrast or headlight bloom only and let me set motion detection in BI way lower than I would normally.
 
Last edited:
  • Like
Reactions: kklee
If you can, consider using a GPU, NVidia required by DS, for DS. I switched from CPU to GPU and rarely have a miss from DS. Those misses are related to lack of contrast or headlight bloom only and let me set motion detection in BI way lower than I would normally.
Unfortunately, I am using a PC without a GPU :(
 
Unfortunately, I am using a PC without a GPU :(
You may want to consider adding a GPU for DS, it makes a big difference. Quadro P400's are readily available (new!) at a reasonable price, unlike mainstream video cards. It's pretty easy to switch the DS configuration over to GPU.

WIthout the GPU, CPU would hit 98%+ during detections, which was enough to bog down DS without triggering an error and causing missed detections. Like you, when running those nothing detected events through the analyzer, DS would show detections. I'm guessing that during a realtime detection with all the activity going on with BI, there's isn't enough CPU available for reliable DS detection.

After switching DS to running on a GPU, the CPU idles around 35%, but will jump to 85% during DS detection events.
 
  • Like
Reactions: sebastiantombs
I only see jumps of about 10-15% on the CPU when DS is detecting. I've also looked at the GPU and see, maybe, a 5% jump there. The GPU is far more efficient at processing or is processing so fast the tools I use don't see the real spike and average it instead. If you're serious about using DeepStack a Quadro P400, or better, is well worth the money. Brings a whole new dimension to BI.
 
I only see jumps of about 10-15% on the CPU when DS is detecting. I've also looked at the GPU and see, maybe, a 5% jump there. The GPU is far more efficient at processing or is processing so fast the tools I use don't see the real spike and average it instead. If you're serious about using DeepStack a Quadro P400, or better, is well worth the money. Brings a whole new dimension to BI.
I'm still trying to figure out why my CPU jumps so much during triggered events, definitely something my system config. I may just do a clean rebuild of the entire system due to upgrade baggage (Windows and BI). BI also had some major crashes during some previous versions, so there may be some BI registry corruption as well.
 
  • Like
Reactions: sebastiantombs
If you are using Deepstack on a lot of cameras, CPU will jump. Maybe back down the number of cameras using DS or further define the areas of interest for it.

Make sure you have done EVERY optimization in the wiki, including the substreams.

 
  • Like
Reactions: sebastiantombs
I can only report my own, admittedly anecdotal, results. Using the CPU version on an i7-6700K with six cameras set for DS I was getting mostly "nothing found" and "100" errors. Running the clips through "analyze" showed detection but that wasn't the case for real time detection. Switched to the GPU version and it's very rare for detection to fail. As with everything, YMMV. The problem is in the detection times. DS times out, period, end of story, and that's why you're not seeing detections.