New CodeProject.AI License Plate Recognition (YOLO11) Module

Hey Mike,

So nothing was working, I decided to reinstall the original appsettings.json file so I could reinstall the original ALPR module.

Once I installed and started the original ALPR module the new ALPR module you made started working all of a sudden.

Wild shot in the dark, the original module creates an alpr_queue that the new one is looking for but can't find if the other is uninstalled?

ipcamwalt, I just did what you posted above and mine started working too! Thank you very much! I've been working on this for two days! LOL​

 
  • Like
Reactions: ipcamwalt
Happy to help and reduce the burden on Mike, looking forward to that ipcam-combined, this new license plate reader is amazing.

Edit: Not to derail things because this is working perfectly for me, but the number of inference report counts is wonky. I restarted CPAI so I could use Mike's new appsettings (working) but instead of starting at 0 it started in the 7000's which is where it was when I shut it down, and it didn't resume counting from there, it flips back and forth between low and mid 7000's until I triggered a plate reading and then it took 15 images and scanned them all and started flipping between three numbers, the actual count and the old counts.
 
Last edited:
I just did a fresh install of windows server 2025 and windows 11 pro. Just installed geforce drivers and runtime and SDK drivers also blueiris and codeproject ai. Still getting the same problem with the new 1.0.4 yolo11. Maybe I am missing something?
 
I just released Version 1.0.4, this version uses the original v1.0.0 way of initializing the models using default GPU Device ID 0. One addition is now you can also manually select the GPU Device ID as before v1.0.0 was fixed to GPU Device ID 0.
If the GPU does not initialize due to incorrect GPU Device ID it should automatically fallback to CPU. Check Task Manager and lookup you GPU ID and then go to CodeProject.AI Dashboard and under GPU Device Selection select the correct GPU Device ID

GPU initialized correctly and is using the GPU
1761001323597.png
1761001454498.png

GPU did not initialized correctly and is using the CPU
1761001670840.png
1761001769823.png
 
Last edited:
I just did a fresh install of windows server 2025 and windows 11 pro. Just installed geforce drivers and runtime and SDK drivers also blueiris and codeproject ai. Still getting the same problem with the new 1.0.4 yolo11. Maybe I am missing something?
Post a screenshot of Task Manager Performance GPU like the below Also your System Info

1761002188306.png
1761002299656.png
 
I just released Version 1.0.4, this version uses the original v1.0.0 way of initializing the models using default GPU Device ID 0. One addition is now you can also manually select the GPU Device ID as before v1.0.0 was fixed to GPU Device ID 0.
If the GPU does not initialize due to incorrect GPU Device ID it should automatically fallback to CPU. Check Task Manager and lookup you GPU ID and then go to CodeProject.AI Dashboard and under GPU Device Selection select the correct GPU Device ID

GPU initialized correctly and is using the GPU
View attachment 230593
View attachment 230594

GPU did not initialized correctly and is using the CPU
View attachment 230595
View attachment 230596

OK, I tried starting from scratch again. I completed these steps in this order (as best I can remember):
1. Uninstalled all CodeProject AI modules.
2. Stopped CP.AI service.
3. Uninstalled CodeProject AI v 2.9.5 from control panel Programs and Features.
4. Deleted CodeProject AI folders in Program Files and Program Data.
5. Removed two CodeProject AI keys I found in Windows Registry.
6. Rebooted machine.
7. Installed CodeProject AI v 2.9.5 selecting only License Plate Reader v 3.3.4 and Object Detection (YOLOv5 .NET) v 1.14.0
At this point License Plate Reader v 3.3.4 was capturing license plate numbers
8. Replaced appsettings.json with new version.
9. Restarted CP.AI service and hit ctrl-F5.
10. Installed License Plate Reader (YOLO11-ONNX) v 1.0.4.
11. Stopped License Plate Reader v 3.3.4
12. Tried starting License Plate Reader (YOLO11-ONNX) v 1.0.4. Will not run.
13. Started License Plate Reader v 3.3.4
License Plate Reader v 3.3.4 is capturing license plate numbers
 
Can you post your CP.AI log file, sometimes iGPUs take some time to initialize
I rolled back to 3.3.4 and then updated to 1.0.4 and it started working again.

Screen Shot 2025-10-20 at 6.31.13 PM.png

Edit: Here's the log entry right before it failed.

2025-10-20 17:32:12: ** Module 'License Plate Recognition (YOLO11)' 1.0.4 (ID: ALPRYOLO11)
2025-10-20 17:32:12: ** Valid: True
2025-10-20 17:32:12: ** Module Path: <root>\modules\ALPRYOLO11
2025-10-20 17:32:12: ** Module Location: Internal
2025-10-20 17:32:12: ** AutoStart: True
2025-10-20 17:32:12: ** Queue: alpr_queue
2025-10-20 17:32:12: ** Runtime: python3.10
2025-10-20 17:32:12: ** Runtime Location: Local
2025-10-20 17:32:12: ** FilePath: alpr_adapter.py
2025-10-20 17:32:12: ** Start pause: 0 sec
2025-10-20 17:32:12: ** Parallelism: 0
2025-10-20 17:32:12: ** LogVerbosity:
2025-10-20 17:32:12: ** Platforms: windows
2025-10-20 17:32:12: ** GPU Libraries: installed if available
2025-10-20 17:32:12: ** GPU: use if supported
2025-10-20 17:32:12: ** Accelerator:
2025-10-20 17:32:12: ** Half Precision: enable
2025-10-20 17:32:12: ** Environment Variables
2025-10-20 17:32:12: ** CHAR_BOX_DILATION_HEIGHT = 3
2025-10-20 17:32:12: ** CHAR_BOX_DILATION_WIDTH = 0
2025-10-20 17:32:12: ** CHAR_CLASSIFIER_CONFIDENCE = 0.40
2025-10-20 17:32:12: ** CHAR_DETECTOR_CONFIDENCE = 0.40
2025-10-20 17:32:12: ** CORNER_DILATION_PIXELS = 5
2025-10-20 17:32:12: ** DEBUG_IMAGES_DIR = <root>\modules\ALPRYOLO11\debug_images
2025-10-20 17:32:12: ** DEVICE_ID = 0
2025-10-20 17:32:12: ** ENABLE_SPEED_DETECTION = True
2025-10-20 17:32:12: ** ENABLE_STATE_DETECTION = False
2025-10-20 17:32:12: ** ENABLE_VEHICLE_DETECTION = False
2025-10-20 17:32:12: ** MODELS_DIR = <root>\modules\ALPRYOLO11\models
2025-10-20 17:32:12: ** ONNX_MODELS_DIR = <root>\modules\ALPRYOLO11\models
2025-10-20 17:32:12: ** PLATE_ASPECT_RATIO = 2.5
2025-10-20 17:32:12: ** PLATE_DETECTOR_CONFIDENCE = 0.45
2025-10-20 17:32:12: ** SAVE_DEBUG_IMAGES = False
2025-10-20 17:32:12: ** SPEED_CENTROID_THRESHOLD = 5.0
2025-10-20 17:32:12: ** SPEED_IOU_THRESHOLD = 0.15
2025-10-20 17:32:12: ** STATE_CLASSIFIER_CONFIDENCE = 0.45
2025-10-20 17:32:12: ** USE_CUDA = False
2025-10-20 17:32:12: ** USE_DIRECTML = True
2025-10-20 17:32:12: ** USE_ONNX = True
2025-10-20 17:32:12: ** VEHICLE_CLASSIFIER_CONFIDENCE = 0.45
2025-10-20 17:32:12: ** VEHICLE_DETECTOR_CONFIDENCE = 0.45
2025-10-20 17:32:12:
2025-10-20 17:32:12: Started License Plate Recognition (YOLO11) module
2025-10-20 17:32:12: Running module using: launcher
 
Last edited:
it says installed but now i get this error...

19:42:46:Started License Plate Recognition (YOLO11) module
19:42:47:alpr_adapter.py: Traceback (most recent call last):
19:42:47:alpr_adapter.py: File "C:\Program Files\CodeProject\AI\modules\ALPRYOLO11\alpr_adapter.py", line 7, in
19:42:47:alpr_adapter.py: import cv2
19:42:47:alpr_adapter.py: ModuleNotFoundError: No module named 'cv2'
19:42:47:Module ALPRYOLO11 has shutdown
 
it says installed but now i get this error...

19:42:46:Started License Plate Recognition (YOLO11) module
19:42:47:alpr_adapter.py: Traceback (most recent call last):
19:42:47:alpr_adapter.py: File "C:\Program Files\CodeProject\AI\modules\ALPRYOLO11\alpr_adapter.py", line 7, in
19:42:47:alpr_adapter.py: import cv2
19:42:47:alpr_adapter.py: ModuleNotFoundError: No module named 'cv2'
19:42:47:Module ALPRYOLO11 has shutdown
Try uninstalling then reinstall Do not use download cache
1761007953760.png
 
Hey Mike,

I'm on 1.0.3, and I am seeing some issues with high confidence but the characters are in the wrong position. This sometimes happens with the previous code, but usually by plates where there is a space between the characters, and it happened very infrequently. This seems to happen a lot more frequent. I'm seeing it happen about 3% of the time.

Thanks

Screenshot from 2025-10-21 09-52-18.pngScreenshot from 2025-10-21 09-49-56.png