Blue Iris and CodeProject.AI ALPR

MikeLud1

IPCT Contributor
Joined
Apr 5, 2017
Messages
2,223
Reaction score
4,275
Location
Brooklyn, NY
I'll do that, but TBH the red X in analysis doesn't bother me much. I was just worried about plate make times going from 250 to 500msec because OCR is reading the static plates... and about sending BI the motion leading image when I told it not to. I'm thinking since static vehicles are marked as such, BI can use that info to skip sending associated "static plates". That way when I have a parked plate in frame, my make times won't get doubled.
Blue Iris is sending the full image to the ALPR module and the module does not keep track of static plates so I do not think anything can be done without major program changes to BI and the ALPR module
 

truglo

Pulling my weight
Joined
Jun 28, 2017
Messages
275
Reaction score
103
@MikeLud1, not sure if you caught my second post just before yours. That's unfortunate to hear it may require big changes, but you won't be pressured to hurry them along by me. I already appreciate you and the other devs going over the top to make this even work the way it does now. I have faith you guys will succeed in due time.
 

MikeLud1

IPCT Contributor
Joined
Apr 5, 2017
Messages
2,223
Reaction score
4,275
Location
Brooklyn, NY
@MikeLud1, not sure if you caught my second post just before yours. That's unfortunate to hear it may require big changes, but you won't be pressured to hurry them along by me. I already appreciate you and the other devs going over the top to make this even work the way it does now. I have faith you guys will succeed in due time.
Try adding alpr,Plates

The static image is working for me
1675733909295.png
 

truglo

Pulling my weight
Joined
Jun 28, 2017
Messages
275
Reaction score
103
Very interesting... done, jeep still parked... fingers crossed something drives by before it leaves.
 

MikeLud1

IPCT Contributor
Joined
Apr 5, 2017
Messages
2,223
Reaction score
4,275
Location
Brooklyn, NY
Very interesting... done, jeep still parked... fingers crossed something drives by before it leaves.
One more added ,** to the To Confirm:
I have just started play around with these settings, so still learning what BI's logic is.
 

truglo

Pulling my weight
Joined
Jun 28, 2017
Messages
275
Reaction score
103
I just tested a manual trigger with ,** added to confirm, and got no models, all red X's. I triggered it twice just to be sure.

Untitled.jpg
Untitled2.jpg
 

105437

BIT Beta Team
Joined
Jun 8, 2015
Messages
2,062
Reaction score
957
@MikeLud1, I just replaced the paddleocr folders you linked.

1675737599012.png

GPU ALPR did not work
21:54:15:License Plate Reader: Retrieved ALPR_queue command
21:54:15:Client request 'custom' in the queue (...d3adad)
21:54:15:Request 'custom' dequeued for processing (...d3adad)
21:54:15:Object Detection (YOLOv5 6.2): Retrieved objectdetection_queue command
21:54:15:Object Detection (YOLOv5 6.2): Detecting using license-plate
21:54:15:Object Detection (YOLOv5 6.2): Queue and Processing Object Detection (YOLOv5 6.2) command 'custom' (...d3adad) took 273ms
21:54:15:Response received (...d3adad)
21:54:15:ALPR_adapter.py: [2023/02/06 21:54:15] ppocr WARNING: Since the angle classifier is not initialized, the angle classifier will not be uesd during the forward process
21:54:15:License Plate Reader: [Exception] : Traceback (most recent call last):
21:54:15:Response received (...c10a35)
21:54:15:License Plate Reader: Queue and Processing License Plate Reader command 'alpr' (...c10a35) took 1197ms

CPU ALPR worked
21:56:13:License Plate Reader: Retrieved ALPR_queue command
21:56:13:Client request 'custom' in the queue (...45554e)
21:56:13:Request 'custom' dequeued for processing (...45554e)
21:56:13:Object Detection (YOLOv5 6.2): Retrieved objectdetection_queue command
21:56:13:Object Detection (YOLOv5 6.2): Detecting using license-plate
21:56:13:Object Detection (YOLOv5 6.2): Queue and Processing Object Detection (YOLOv5 6.2) command 'custom' (...45554e) took 213ms
21:56:13:Response received (...45554e)
21:56:13:ALPR_adapter.py: [2023/02/06 21:56:13] ppocr WARNING: Since the angle classifier is not initialized, the angle classifier will not be uesd during the forward process
21:56:14:ALPR_adapter.py: [2023/02/06 21:56:14] ppocr DEBUG: dt_boxes num : 1, elapse : 0.04397249221801758
21:56:14:ALPR_adapter.py: [2023/02/06 21:56:14] ppocr DEBUG: rec_res num : 1, elapse : 0.22486090660095215
21:56:14:Response received (...498c88)
21:56:14:License Plate Reader: Queue and Processing License Plate Reader command 'alpr' (...498c88) took 548ms
 

truglo

Pulling my weight
Joined
Jun 28, 2017
Messages
275
Reaction score
103
@MikeLud1, I changed to those exact settings, and it appears to work, although I still have a problem with that static plate. So I'm not even sure it'll work until that parked car moves. Here is an example where BI cancels based on that same static plate at 91% (and no ocr data returned), and ignores the real target that did return plate data twice.

Untitled3.jpg
Untitled4.jpg

I recall earlier I advocated for BI to use object %, instead of "plate closest to center"... here is perhaps a case for the latter. Problem is... when the parked car is centered. Now what? I think use the moving plate. That doesn't seem like it would take any more processing to do... license-plate marked as vehicle... use those and alert with the highest ocr return (with hopes of state filtering etc later on).

edit... We can give the OCR a pass on accuracy with this one. It's hard for my human eyes to read, so not expecting ai to do much better.
 
Last edited:

MikeLud1

IPCT Contributor
Joined
Apr 5, 2017
Messages
2,223
Reaction score
4,275
Location
Brooklyn, NY
@MikeLud1, I just replaced the paddleocr folders you linked.

View attachment 153462

GPU ALPR did not work
21:54:15:License Plate Reader: Retrieved ALPR_queue command
21:54:15:Client request 'custom' in the queue (...d3adad)
21:54:15:Request 'custom' dequeued for processing (...d3adad)
21:54:15:Object Detection (YOLOv5 6.2): Retrieved objectdetection_queue command
21:54:15:Object Detection (YOLOv5 6.2): Detecting using license-plate
21:54:15:Object Detection (YOLOv5 6.2): Queue and Processing Object Detection (YOLOv5 6.2) command 'custom' (...d3adad) took 273ms
21:54:15:Response received (...d3adad)
21:54:15:ALPR_adapter.py: [2023/02/06 21:54:15] ppocr WARNING: Since the angle classifier is not initialized, the angle classifier will not be uesd during the forward process
21:54:15:License Plate Reader: [Exception] : Traceback (most recent call last):
21:54:15:Response received (...c10a35)
21:54:15:License Plate Reader: Queue and Processing License Plate Reader command 'alpr' (...c10a35) took 1197ms

CPU ALPR worked
21:56:13:License Plate Reader: Retrieved ALPR_queue command
21:56:13:Client request 'custom' in the queue (...45554e)
21:56:13:Request 'custom' dequeued for processing (...45554e)
21:56:13:Object Detection (YOLOv5 6.2): Retrieved objectdetection_queue command
21:56:13:Object Detection (YOLOv5 6.2): Detecting using license-plate
21:56:13:Object Detection (YOLOv5 6.2): Queue and Processing Object Detection (YOLOv5 6.2) command 'custom' (...45554e) took 213ms
21:56:13:Response received (...45554e)
21:56:13:ALPR_adapter.py: [2023/02/06 21:56:13] ppocr WARNING: Since the angle classifier is not initialized, the angle classifier will not be uesd during the forward process
21:56:14:ALPR_adapter.py: [2023/02/06 21:56:14] ppocr DEBUG: dt_boxes num : 1, elapse : 0.04397249221801758
21:56:14:ALPR_adapter.py: [2023/02/06 21:56:14] ppocr DEBUG: rec_res num : 1, elapse : 0.22486090660095215
21:56:14:Response received (...498c88)
21:56:14:License Plate Reader: Queue and Processing License Plate Reader command 'alpr' (...498c88) took 548ms
Thanks for testing, back to the drawing board.

Can you post a screenshot of the below folder, I want to see what all the versions of paddle are

1675740041242.png
 
Last edited:

MikeLud1

IPCT Contributor
Joined
Apr 5, 2017
Messages
2,223
Reaction score
4,275
Location
Brooklyn, NY
@MikeLud1, I changed to those exact settings, and it appears to work, although I still have a problem with that static plate. So I'm not even sure it'll work until that parked car moves. Here is an example where BI cancels based on that same static plate at 91% (and no ocr data returned), and ignores the real target that did return plate data twice.

View attachment 153476
View attachment 153477

I recall earlier I advocated for BI to use object %, instead of "plate closest to center"... here is perhaps a case for the latter. Problem is... when the parked car is centered. Now what? I think use the moving plate. That doesn't seem like it would take any more processing to do... license-plate marked as vehicle... use those and alert with the highest ocr return (with hopes of state filtering etc later on).

edit... We can give the OCR a pass on accuracy with this one. It's hard for my human eyes to read, so not expecting ai to do much better.
Let me see if I can workout better static object logic and ALPR logic with BI (Ken).
I did send him the below, which I think should solve the issue you are having
1675740625749.png
 

truglo

Pulling my weight
Joined
Jun 28, 2017
Messages
275
Reaction score
103
I'm not one to critique how people manage their PC's, but I happened to notice the Dell directory in Program Files. That reminded me of some experiences I've had running dell auto driver updates and support tools. I wonder if there's something else lurking under the hood outside of BI/cpai that is causing this?
 

105437

BIT Beta Team
Joined
Jun 8, 2015
Messages
2,062
Reaction score
957
I'm not one to critique how people manage their PC's, but I happened to notice the Dell directory in Program Files. That reminded me of some experiences I've had running dell auto driver updates and support tools. I wonder if there's something else lurking under the hood outside of BI/cpai that is causing this?
Could certainly be, I don't install any updates beyond Windows. If Dell updates are installed without notification, then I have no idea.
 

truglo

Pulling my weight
Joined
Jun 28, 2017
Messages
275
Reaction score
103
Do you recall ever installing a dell driver on it? If it still has windows that came from Dell, then it definitely could have dell drivers on it. Not that Dell doesn't make good drivers, but usually WHQL drivers are more stable and appropriate for a BI system. I personally have never setup a BI system without first wiping the drives and installing a fresh DL of windows. These days with SSD and broadband, it's not such a horrible task to undertake (although... some servers that cpai gits from are very slow). I should also note I usually use older hardware (3yo or more). So there's rarely a missing driver from windows update, which may not be the case for brand new or unusually obscure hardare.
 

105437

BIT Beta Team
Joined
Jun 8, 2015
Messages
2,062
Reaction score
957
Do you recall ever installing a dell driver on it? If it still has windows that came from Dell, then it definitely could have dell drivers on it. Not that Dell doesn't make good drivers, but usually WHQL drivers are more stable and appropriate for a BI system. I personally have never setup a BI system without first wiping the drives and installing a fresh DL of windows. These days with SSD and broadband, it's not such a horrible task to undertake.
A year ago this PC was wiped and restored using Windows Media Creation Tool. I probably did install a Dell driver at some point after that.
 
Joined
Nov 29, 2017
Messages
2
Reaction score
0
Hi, just setting up ALPR on my BI install, have Codeproject running already which works great.
Is the ALPR module compatible with UK car number plates?
 

wittaj

IPCT Contributor
Joined
Apr 28, 2019
Messages
25,259
Reaction score
49,192
Location
USA
Hi, just setting up ALPR on my BI install, have Codeproject running already which works great.
Is the ALPR module compatible with UK car number plates?
Yes many from the UK are using it. But this is just a character reader so it may mistake a 1 for an I or a 0 for a O.
 
Top