Running DeepStack on a separate computer

8trek

Getting the hang of it
Joined
Dec 19, 2021
Messages
75
Reaction score
29
Location
66213
Backstory, I have tried the following and all have been failed attempts:
1. Run SenseAI in GPU mode, GPU appeared to be working a lot more however BI was not working with it, would not show squares around anything when analyzing nor would trigger anything
2. Run DeepStack on a separate computer, both computers appeared to be talking to one another but like above would not show anything was being analyzed inside BI
3. Tried above options using older versions of BI, same result

What has worked:
1. Run SenseAI in CPU mode on same computer as BI
2. Run DeepStack on same computer as BI

I have done all of this with no firewall or antivirus just to rule out. I have probably spent a total of 24 hours searching in all forums and elsewhere hearing how "this is how I did it".
I'm done, give up, this is ridiculous. My ultimate goal is to offload CPU usage. I'm not interested in other changes to reduce CPU usage.
Can someone out there lend a hand that's actually successfully done something like this?
The only other thing I haven't attempted is using AI in a docker but at this point feel like I'll just be wasting more time.

Appreciate anyone out there that could provide any real value to this inquiry. Thanks.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,144
Reaction score
49,014
Location
USA
Too many variables and the obvious needs to be asked - did you check the burn-in box? If not, it won't draw the boxes.

We need more about your setup - i number and CPU and CPU% are good starters.

With your comment "I'm not interested in other changes to reduce CPU usage" it sounds to be like you are not running substreams or other optimizations in the wiki.

If your system is overloaded, all the suggestions in the world won't help.

Screenshots of your settings would be a good start for us to troubleshoot.

And you do not need to make a new thread about basically the same thing....

 

8trek

Getting the hang of it
Joined
Dec 19, 2021
Messages
75
Reaction score
29
Location
66213
Thanks for the quick response. Rig specs: i7 10700k @3.8ghz, 16gb ram, gtx 1650 video card, SSD os drive

Yes, it's set to burn in. Sorry about creating a new thread, was just trying to keep it in the proper context, one being for SenseAI and the other deepstack.

This computer is dedicated just for BI and is connected to a matrix switch that supplies the live video from all 9 cameras to all the TV's in my home which works great. Initially setup this winter. Prior to this spring before the trees leaved out I had false triggers down to almost nothing but once the trees bloomed is when i started looking at AI. Prior to this CPU usage was not a problem despite NOT using sub streams for the live feed cause it just looks better on the TV's and i had the horse power to do it. That's all changed now since AI is zapping the CPU usage. Recently put in the GTX 1650 and assigned all the cameras to use it... this has helped but not enough. I assume if i could get the GPU to handle the AI then should fix my problem.
 

8trek

Getting the hang of it
Joined
Dec 19, 2021
Messages
75
Reaction score
29
Location
66213
More details about what i've tried with no success:

I have deepstack latest windows cpu version running on another computer. I run the command deepstack -VISION-SCENE=False -VISION-DETECTION=True -VISION-FACE=True -ADMIN-KEY= -API-KEY= -PORT=80 (or any other port) in a powershell and it starts doing it's thing. Side note, the powershell window remains running, is that normal or is there a better way to do this? Then I go to the BI computer and verify using a browser that i can see it and it does. I then change the global AI settings to point to the ip address of the 2nd computer along with the correct port, nothing else checked like auto start, custom folder, or default object detection... presumably because this is being set on the 2nd computer based on the deepstack command run mentioned earlier. All seems fine, the powershell window on 2nd computer starts showing lines of activity. However, nothing gets alerted and when i try to analyze I get no boxes showing any objects detected.

I've seen several different variations of the command to use to start deepstack... seems to be a lot of inconsistency.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,144
Reaction score
49,014
Location
USA
Yeah that should be more than capable. Is it Win10 or Win11? If it is Win11 that could be the problem. Many here have had trouble with Win11 and BI and/or Deepstack.

Are you using hardware acceleration? If so, turn that off as you are probably overloading the GPU doing that and Deepstack.

You can use substreams and up the bitrate a lot and it will improve the image while keeping the CPU down.

If a third party plate reader can be used with D1, I think we can stream higher bitrate D1 to our monitor to save CPU!

 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,144
Reaction score
49,014
Location
USA
More details about what i've tried with no success:

I have deepstack latest windows cpu version running on another computer. I run the command deepstack -VISION-SCENE=False -VISION-DETECTION=True -VISION-FACE=True -ADMIN-KEY= -API-KEY= -PORT=80 (or any other port) in a powershell and it starts doing it's thing. Side note, the powershell window remains running, is that normal or is there a better way to do this? Then I go to the BI computer and verify using a browser that i can see it and it does. I then change the global AI settings to point to the ip address of the 2nd computer along with the correct port, nothing else checked like auto start, custom folder, or default object detection... presumably because this is being set on the 2nd computer based on the deepstack command run mentioned earlier. All seems fine, the powershell window on 2nd computer starts showing lines of activity. However, nothing gets alerted and when i try to analyze I get no boxes showing any objects detected.

I've seen several different variations of the command to use to start deepstack... seems to be a lot of inconsistency.
You shouldn't have to be running the command lines when they were all on the same computer. Would it work then, just the CPU was maxing out?

It is literally download the deepstack .exe file, run it, check the box in BI and it starts working.
 

8trek

Getting the hang of it
Joined
Dec 19, 2021
Messages
75
Reaction score
29
Location
66213
Yeah that should be more than capable. Is it Win10 or Win11? If it is Win11 that could be the problem. Many here have had trouble with Win11 and BI and/or Deepstack.

Are you using hardware acceleration? If so, turn that off as you are probably overloading the GPU doing that and Deepstack.

You can use substreams and up the bitrate a lot and it will improve the image while keeping the CPU down.

If a third party plate reader can be used with D1, I think we can stream higher bitrate D1 to our monitor to save CPU!

WIN10, GPU is not being maxed out so that's not a problem, running around 50%, I don't care about reading license plates and am not using that function.
 

8trek

Getting the hang of it
Joined
Dec 19, 2021
Messages
75
Reaction score
29
Location
66213
You shouldn't have to be running the command lines when they were all on the same computer. Would it work then, just the CPU was maxing out?

It is literally download the deepstack .exe file, run it, check the box in BI and it starts working.
Please re-read my post, maybe i'm not being clear enough... I was referring to running deepstack on a 2nd computer without BI. Yes as stated earlier, I was successful at running deepstack with BI on the same computer in which case i don't need to run the commands... I get it. That's the way i have it running now but would like to run deepstack on another computer to free up CPU on the first computer.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,144
Reaction score
49,014
Location
USA
WIN10, GPU is not being maxed out so that's not a problem, running around 50%, I don't care about reading license plates and am not using that function.
You obviously missed the point - where did I say about you reading plates - I was pointing out that if D1 resolution is good enough for a freaking computer program to read plates at D1 resolution with a higher bitrate, then it is good enough for your eyes on a mutli-camera view on your monitor and you could then run it all on one computer and not two....

I recognized you were trying 2 computers and asked if you even got it working when they were on 1 computer because if you couldn't get it burning in and working properly then, trying to move another computer won't help as something else was wrong in your system.

You do realize that Deepstack also downrezes mainstream to below substream resolution, so you have added additional computing time and processing by not using substreams....

Being hardheaded about not using substreams will only compound your problem at some point...
 

8trek

Getting the hang of it
Joined
Dec 19, 2021
Messages
75
Reaction score
29
Location
66213
You obviously missed the point - where did I say about you reading plates - I was pointing out that if D1 resolution is good enough for a freaking computer program to read plates at D1 resolution with a higher bitrate, then it is good enough for your eyes on a mutli-camera view on your monitor and you could then run it all on one computer and not two....

I recognized you were trying 2 computers and asked if you even got it working when they were on 1 computer because if you couldn't get it burning in and working properly then, trying to move another computer won't help as something else was wrong in your system.

You do realize that Deepstack also downrezes mainstream to below substream resolution, so you have added additional computing time and processing by not using substreams....

Being hardheaded about not using substreams will only compound your problem at some point...
When I add substreams into the camera setup I get that it does reduce cpu usage, however, it lowers the quality of the live feed when viewing all 9 cameras in a layout. I've tried as you've suggested to increase the bit rate for the substream via the camera http but not seeing any major improvements to the quality of the image while viewing the substream. Is there a way to show the cameras in main stream on a layout but still use sub streams?
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,144
Reaction score
49,014
Location
USA
Even with an NVR, showing more than 1 camera on the screen will be showing the substream, so yes in BI showing 9 cameras, it will be showing substream. Then it is just a simple click to solo one camera to get the mainstream.

It is displaying and processing motion/etc. the mainstream that kills the CPU.

If D1 doesn't work for your eyes at 2048 bitrate, you could try the next up substream...just keep in mind the closer you get to the mainstream resolution, the more the impact on the CPU.

I'd suggest running it for a day or so and see if you get used to it. Of course going from mainstream to substream will initially look worse, but after a day or so, are you really missing anything critical to justify the additional CPU%, especially in 9 camera layout mode?
 

8trek

Getting the hang of it
Joined
Dec 19, 2021
Messages
75
Reaction score
29
Location
66213
While I appreciate your thoughts I would still like someone who has successfully implemented AI on a 2nd computer to share their steps. After all, this is what the subject of this thread is all about.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,144
Reaction score
49,014
Location
USA
Using the checkboxes in BI is meant to be the simpler solution for those that want DS/SenseAI and all on one computer without the use of Docker or another server, etc.

Usually those that are running it on another computer have gone the route of using one of the third party add-ons for the more granular functionality and not using the "baked in" Deepstack in BI.

I do not recall anyone using the BI baked in checkbox with DS on another computer. I think it appears that the ability is there to do so, but I do not think anyone has been successful with it. And now that BI has deprecated DS, if it hasn't worked by now, it won't work in the future.
 

Flintstone61

Known around here
Joined
Feb 4, 2020
Messages
6,650
Reaction score
11,019
Location
Minnesota USA
Wasn't there a post about the GTX 1650 variants being a problem sometimes, because they used different Dram modules than Nvidia OEM's on some cards, and created some Deepstack issues.
 

Flintstone61

Known around here
Joined
Feb 4, 2020
Messages
6,650
Reaction score
11,019
Location
Minnesota USA
I'm trying to dig down to the post somebody had about a 1030 a k620 and a 1650 and something about a Ms deepstack lag that wasn't happening on the k620 Quadro, but happening on one f the GTX cards. and somebody hit a known memory issue....
 

8trek

Getting the hang of it
Joined
Dec 19, 2021
Messages
75
Reaction score
29
Location
66213
I'm trying to dig down to the post somebody had about a 1030 a k620 and a 1650 and something about a Ms deepstack lag that wasn't happening on the k620 Quadro, but happening on one f the GTX cards. and somebody hit a known memory issue....
Sounds like you're referring to someone trying to run the gpu version cause i seem to recall something similar but in any event I don't think it was preventing it from functioning, just had problems... can't remember i've looked at so much.
 
Top