OpenALPR (Rekor Scout) compared to Platerecognizer

TVille

Getting comfortable
Joined
Apr 26, 2014
Messages
672
Reaction score
1,639
Location
Virginia
About 4-5 have DS. Most cameras are running AI/DS. Three are running BI motion. Two cameras are 640 or something, ancient indoor Hikvision & Amcrest running on wifi. Six are 4 MP, the rest 2 MP. I have a GT-730 that I've had for years. I removed it from my old BI machine when it was having lockup issues - randomly shut down. Removing it didn't help and I ended up replacing the old i7-3700, which is now running Linux Mint and doesn't lock up, although it is basically a browser machine now.

One ALPR camera is the 5241-Z12E, the other is a 5442 6 mm that just happens to be close enough to the road to work for ALPR during the day. I have done ALL the recommended optimizations in the wiki that I can with my hardware. OpenALPR warned me when I installed the 5241 as a LPR that it would take extra resources due to it being a 4 MP camera. But, at the distance I'm trying to pull plates, it really needs it with that lens.
 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
About 4-5 have DS. Most cameras are running AI/DS. Three are running BI motion. Two cameras are 640 or something, ancient indoor Hikvision & Amcrest running on wifi. Six are 4 MP, the rest 2 MP. I have a GT-730 that I've had for years. I removed it from my old BI machine when it was having lockup issues - randomly shut down. Removing it didn't help and I ended up replacing the old i7-3700, which is now running Linux Mint and doesn't lock up, although it is basically a browser machine now.

One ALPR camera is the 5241-Z12E, the other is a 5442 6 mm that just happens to be close enough to the road to work for ALPR during the day. I have done ALL the recommended optimizations in the wiki that I can with my hardware. OpenALPR warned me when I installed the 5241 as a LPR that it would take extra resources due to it being a 4 MP camera. But, at the distance I'm trying to pull plates, it really needs it with that lens.
Interesting thanks, Deepstack Ai is hurting my CPU quite a lot, with it turned off the CPU drops to 10%. Rekor Agent running on a D1 sub stream only takes around 5-10% CPU but on a 2MP stream it will use around 20-25%. I have another 4 cameras to add which are all 4MP and one 2MP, hence why I am hoping the GPU will take some pressure off the CPU.

Shame about your GT-730, it has enough cuda cores to take some reasonable load I would imagine but it seems like you are doing fine without it. I understand the GPU will be more useful if Ai is being pushed quite hard although it seems some have reported better accuracy on the CPU so :idk:
 

TVille

Getting comfortable
Joined
Apr 26, 2014
Messages
672
Reaction score
1,639
Location
Virginia
Interesting thanks, Deepstack Ai is hurting my CPU quite a lot, turned off the CPU drops to 10%. Rekor Agent running on a D1 sub stream only takes around 5-10% CPU but on a 2MP stream it will use around 20-25%. I have another 4 cameras to add which are all 4MP and one 2MP, hence why I am hoping the GPU will take some pressure off the CPU.
DS and OpenALPR take about 10% or so. Without them, it runs just under 10%.

About 3 months ago I bought the i7-6700 off eBay for $330 or so, Dell tower with a 1 TB hard drive. I added a SSD as it was sloooww with the included HD, and a pair of WD Purple drives for video storage. My total investment, in todays pricing would be $600, with $200 for the WD drives/
 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
DS and OpenALPR take about 10% or so. Without them, it runs just under 10%.

About 3 months ago I bought the i7-6700 off eBay for $330 or so, Dell tower with a 1 TB hard drive. I added a SSD as it was sloooww with the included HD, and a pair of WD Purple drives for video storage. My total investment, in todays pricing would be $600, with $200 for the WD drives/
Blue Iris/DS takes around 13% CPU but Rekor is ticking over at 23% average so quite high, on a D1 stream that drops to 13% or similar, shows you the difference running the older i5 vs your i7. Maybe time for me to pickup a cheap i7-4790 from eBay! SSD will make a huge difference, no going back once you have switched over :thumb:

I should note the Rekor feed is 20fps and half of my cameras run at either 15-20fps so a bit on the high side.
 

TVille

Getting comfortable
Joined
Apr 26, 2014
Messages
672
Reaction score
1,639
Location
Virginia
I'm running most cameras at 15 fps. There is no need for 20, or even 15 fps for a LPR. Shutter speed is they key, not fps. Lower fps saves a lot on storage!

Sent from my Pixel 4a using Tapatalk
 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
I'm running most cameras at 15 fps. There is no need for 20, or even 15 fps for a LPR. Shutter speed is they key, not fps. Lower fps saves a lot on storage!

Sent from my Pixel 4a using Tapatalk
Indeed, I agree to a point but after many years experimenting I still find that having below 20fps on critical cameras results in less than optimum quality, even when using CBR - I am very picky and we are also talking about vehicles moving 30-50mph. I always optimise shutter speed for freeze frame, critical to have that set correctly. Some of my cameras run 10fps but the two critical ones are running 15 and 20. Also I find with Deepstack that 15 or 20 helps with accuracy, this might just be my old Intel i5 processor but even so it helps.

I have no doubt on LPR for lower speeds, ie 20-30mph that 10fps would be fine, a lot depends on the direction and how long they are in the frame of course. I've dropped my sub stream down to 15 on the LPR feed, see how that goes.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
24,438
Reaction score
47,562
Location
USA
@CamCrazy - I suspect you are not using the substreams or maybe not enough optimizations.

Do EVERY optimization in the wiki and you will see a major drop in the CPU. Substreams are a must, especially once you get over 4MP cameras.

A member here runs 50 cameras on a 4th generation CPU at 30%, so I am sure for 6 cameras you can do better.

And by EVERY, I mean EVERY. Too many people come here complaining of high CPU usage and claim they have done every optimization in the wiki and once they post screenshots, we see they are not using the substreams and that is probably one of the biggest CPU savers. Do not skip one because you think it isn't important or won't make that big of a deal. Even dropping frame rate a few FPS can make a big difference. No reason to run more than 15FPS, and many us have cams running at 10 to 12 FPS.

If you do not understand what something does in BI, then ask. Too many people also change a setting not realizing what it does and actually makes their performance worse.

Please post a screenshot of your BI camera status page that shows FPS, MP/s, etc.

I am on a 4th generation running way more cameras than you with BI and OpenALPR and Plate Recognizer and DS and I sip along around 10% CPU. That is sending two 2MP streams to OpenALPR at 10FPS and catch everything with vehicles going by around 45mph.

My CPU does go up when there is a lot of motion, so I recently installed a GPU to help take just enough load off the CPU.

Also which cameras do you have that you are using DS for? I only use DS on my dumb cameras that do not have AI built into them. So my Dahua cams with AI, I let that trigger BI motion instead of DS.


 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
@CamCrazy - I suspect you are not using the substreams or maybe not enough optimizations.

Do EVERY optimization in the wiki and you will see a major drop in the CPU. Substreams are a must, especially once you get over 4MP cameras.

A member here runs 50 cameras on a 4th generation CPU at 30%, so I am sure for 6 cameras you can do better.

And by EVERY, I mean EVERY. Too many people come here complaining of high CPU usage and claim they have done every optimization in the wiki and once they post screenshots, we see they are not using the substreams and that is probably one of the biggest CPU savers. Do not skip one because you think it isn't important or won't make that big of a deal. Even dropping frame rate a few FPS can make a big difference. No reason to run more than 15FPS, and many us have cams running at 10 to 12 FPS.

If you do not understand what something does in BI, then ask. Too many people also change a setting not realizing what it does and actually makes their performance worse.

Please post a screenshot of your BI camera status page that shows FPS, MP/s, etc.

I am on a 4th generation running way more cameras than you with BI and OpenALPR and Plate Recognizer and DS and I sip along around 10% CPU. That is sending two 2MP streams to OpenALPR at 10FPS and catch everything with vehicles going by around 45mph.

My CPU does go up when there is a lot of motion, so I recently installed a GPU to help take just enough load off the CPU.

Also which cameras do you have that you are using DS for? I only use DS on my dumb cameras that do not have AI built into them. So my Dahua cams with AI, I let that trigger BI motion instead of DS.


Thanks it is appreciated, I am in theory fully optimised, sub streams on all but I like my cameras on CBR and maximum bit rate for quality which I know is probably overkill. If I dropped fps down then no doubt my CPU will fall.

I am only using Deepstack/Ai within Blue Iris so that will also be pushing CPU up. This kind of work is part of my day job so all good on the knowledge front, in theory :thumb: - I am also somewhat of an analyst, slight understatement :rofl:

I've got a good GPU which will get installed in due course. No doubt if I wanted to get my CPU down to 10% I probably could but in my experience I'll take quality footage/results all day long. Horses for courses, so long as my CPU is not struggling then I'm happy ;)
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
24,438
Reaction score
47,562
Location
USA
My cams are CBR and higher bitrates than most for the mainstream.

Once you have multi cameras on the screen though, the substream bitrate can go down quite a bit and that is where the savings is at.

I have seen people run 2MP substreams and that defeats the purpose LOL. Almost all of mine are D1 and 256 bitrate and with all the cameras showing, one can't tell the difference.
 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
My cams are CBR and higher bitrates than most for the mainstream.

Once you have multi cameras on the screen though, the substream bitrate can go down quite a bit and that is where the savings is at.

I have seen people run 2MP substreams and that defeats the purpose LOL. Almost all of mine are D1 and 256 bitrate and with all the cameras showing, one can't tell the difference.
I suspected bit rates for D1 would be pretty low to get minimal CPU like that. I keep mine pretty high even on D1, that's just me, I like to go all in if I can on the quality front. Sub streams on the Bi console are a game changer for CPU no doubt. I will do some pretty extensive testing once I get the 1660 card installed and report back. Quadro probably would have done the job but I can't help myself, always good to have more power than you need - plus I can push the Ai fully to see what it can do.

After all that is said and done I will probably end up using Ai on the new Dahua's waiting to go up :rofl: :lmao:
 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
This topic crosses over a bit, I am already discussing it in the other thread below:

Hell Yeah! Direct Deepstack Integration - 5.4.0 - March 31, 2021

Just had some more feedback from Rekor support as follows:

"So it's possible that if you're just processing a single camera, the GPU would be overkill and the CPU could process the data with lower overhead. However, if you have multiple cameras, the GPU will become significantly more efficient.

The main benefit of going to a GPU is increasing the total number of frames capable of being processed on a single machine. For light workloads that don't push the GPU near 100% utilization, there's not much benefit in switching if the CPU can already handle the load. However, if you wanted 200+ fps on a single machine, a GPU will be much better suited.

a lot of the compute pipeline still happens on the CPU (pulling video from the network, decoding H264, saving/recording images/video, etc). The main task on the GPU is executing the actual AI models, but it still needs to have low latency communication with the rest of the auxiliary tasks."

I don't buy into this personally, part of it makes sense but loading the CPU three times more when GPU is enabled is madness :wtf:
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
24,438
Reaction score
47,562
Location
USA
Yep LOL. I run two streams and in the middle of the night it is sipping 2% CPU without GPU, and jumps to 30% CPU using GPU.

During the daytime, Rekor can spike 70% CPU, but with the GPU it will stay in the 30ish% range, but the GPU keeps timing out despite the GPU not going above 60%.

Frustrating.
 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
Yep LOL. I run two streams and in the middle of the night it is sipping 2% CPU without GPU, and jumps to 30% CPU using GPU.

During the daytime, Rekor can spike 70% CPU, but with the GPU it will stay in the 30ish% range, but the GPU keeps timing out despite the GPU not going above 60%.

Frustrating.
That backs up my theory that Rekor are making it up a bit as they go along...maybe :facepalm:

Would be worth you emailing them about the issue, a few people knocking on the door might get them to do something about it :thumb: - it is very frustrating when the opposite should be occurring.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
24,438
Reaction score
47,562
Location
USA
Yes, I already did when I got the card and was experiencing issues. Their response was get a faster machine and more powerful GPU....
 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
Yes, I already did when I got the card and was experiencing issues. Their response was get a faster machine and more powerful GPU....
Oh nice :wtf: can see I'm probably wasting my time responding to them then! - shame really. Wonder what the suggestion would be if you have an i9 accompanied by an RTX 3090, add more cameras running Rekor to take up the slack :lmao::lmao:

There wasn't any mention of my 1660 not being powerful enough but I was half expecting my i5 to get bad mouthed a bit :lol: - and all this time I thought video editing machines were the ones requiring high end builds.
 

biggen

Known around here
Joined
May 6, 2018
Messages
2,539
Reaction score
2,765
So do you have motion in the scene without cars going by like shade/leaves/branches/etc.. blowing in the wind?? I run my OpenALPR Rekor agent in an Ubuntu VM. I only assign 4 cores from my Ryzen 1600AF host. My average CPU usage is 28% for daytime and 13% at night. If its raining out, CPU usage is harder hit because of all the motion in the scene.

If you can, adjust your FOV of the camera so there is no motion in the scene except when a car pulls through. My FOV is dead calm even in a hurricane. No shadows or branches. Just cars driving through.
 

CamCrazy

Pulling my weight
Joined
Aug 23, 2017
Messages
416
Reaction score
194
Location
UK
So do you have motion in the scene without cars going by like shade/leaves/branches/etc.. blowing in the wind?? I run my OpenALPR Rekor agent in an Ubuntu VM. I only assign 4 cores from my Ryzen 1600AF host. My average CPU usage is 28% for daytime and 13% at night. If its raining out, CPU usage is harder hit because of all the motion in the scene.

If you can, adjust your FOV of the camera so there is no motion in the scene except when a car pulls through. My FOV is dead calm even in a hurricane. No shadows or branches. Just cars driving through.
Thanks, appreciate the tips, I am testing it a bit currently as pulling plates from a PTZ which isn't fully zoomed, I will switch to a fixed camera which is waiting to be installed. Aiming to get just the width of the road and nothing else, should reduce activity from shadows etc. At night it is running 2-4% CPU and daytime 10-15%, we had some strong winds and rain last week and the system was having fun!! Deepstack was going mad and so was Rekor, in fairness the new GPU handled it very well with just some spikes as Blue Iris dealt with motion and handing between Deepstack, Rekor was the CPU hog again which is a annoying.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
24,438
Reaction score
47,562
Location
USA
Yeah without motion it idles really low. At night I am low single digits idle and jumps stays single digits with motion.

The FOV of the one camera is such that I cannot get the leaves/branches etc. out of the FOV. I have masked zones to the extent I can, but they are still there. That one usually isn't a problem unless it is really windy.

The other FOV basically only sees the pavement, but the issue I get a couple hours in the day is all the little nooks and crannies of the asphalt "dance" and Rekor sees it as 100% motion and drives the CPU up. Dropping sharpness really low and upping NR high doesn't knock it out. You really don't notice it until you see that Rekor sees something as motion so then your force yourself to find out what it is seeing as motion.

The only time it is a real problem is if it is windy and these few hours where Rekor sees 100% motion according to it's algorithms.

View attachment LPR.mp4
 
Joined
Nov 25, 2016
Messages
839
Reaction score
2,280
That backs up my theory that Rekor are making it up a bit as they go along...maybe :facepalm:
Rekor's biggest problem is that they want to be perceived as a "smart city / smart highway" company, rather than a company that sells top-tier LPR / vehicle recognition software. They bought OpenALPR and hired Matt Hill, but it's almost as if they consider Rekor Scout as a side product in the grand scheme of their corporate ambitions.

Fortunately Matt Hill continues to improve the OpenALPR client, but there is so much more Rekor could do with it. Case in point: I messaged him on the OpenALPR forum about the possibility of creating hidden police hotlists that could be integrated with the web server. Rekor Scout already has a non-editable hidden hotlist feature such that every camera running the client will flag an Amber Alert vehicle plate. It's a nationwide hotlist built into the software. My question to him: why doesn't Rekor create a web portal so that local police departments can generate daily license plate hotlists that a Rekor user could subscribe to? That way every Rekor Scout client becomes part of their local law enforcement's LPR network, even in cities where no municipal camera system is in place. It would motivate more people to run the Rekor Scout client on their cameras, and give Rekor a leg up on Flock Safety's products.

The response from Rekor? Total silence. I assume it doesn't fit into their corporate plans. It's frustrating, because I would love for my cameras to provide "hits" from an NCIC hotlist to the police in my city. Door checkers in stolen cars travel down my street a couple of times every month, but they are long gone by the time I forward the plate info to the local police precinct the next day.
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
24,438
Reaction score
47,562
Location
USA
I guess as long as they keep the price affordable for the home user, we can't complain too much LOL.

I do know there are some others out there trying to do what you suggested about hotlists, so maybe they are waiting for someone to nail that down and then just buy it from them?
 
Top