I've been developing an Automatic License Plate Recognition (ALPR) system. I've successfully implemented the license plate detection using YOLOv8 and am now moving onto the recognition part.
My challenge lies with the preprocessing and binarization of license plate images, particularly under different conditions such as various lighting situations, weather conditions, and transitions from day to night.
Preprocessing: What strategies might be effective for preprocessing these images under such varying conditions before they're fed into an OCR system like Tesseract?
Binarization: Are there any specific techniques or best practices to binarize these images, considering the diversity of their capturing conditions?
Post-processing: After the OCR process, how can potential errors or inconsistencies in the output be best handled?
Any insights, best practices, or references to tackle these issues would be greatly appreciated.
Here are some of the license plate images I am trying to preprocess:
Thanks.
What I have tried:
I attempted basic image preprocessing techniques like grayscale conversion and global thresholding for binarization. However, the results are subpar, especially for images taken under poor lighting conditions or at night.
What I expected:
I was expecting the OCR output to be relatively accurate after preprocessing and binarization. However, due to the varying image conditions, the performance of the OCR is not up to the mark.
-
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer.Community– Community Bot2023年07月23日 18:09:16 +00:00Commented Jul 23, 2023 at 18:09
-
OCR is done with AI. AI prefers to do its own filtering. do not preprocess.Christoph Rackwitz– Christoph Rackwitz2023年07月24日 08:55:58 +00:00Commented Jul 24, 2023 at 8:55
-
thanks for reply @ChristophRackwitz, but what ocr should i use?, i have tried EasyOCR and Tesseract , without preprocessing images they wouldn't be able to recognize the text , even with preprocessing it couldn't do it accuratelyAhmed Lhony– Ahmed Lhony2023年07月24日 19:43:56 +00:00Commented Jul 24, 2023 at 19:43
-
some of your examples are near impossible to read for a human. the rest are terribly low resolution and require serious cognition to decipher. why do you expect superhuman abilities of a machine? you need to get pictures with better resolution. no, do not upscale. that is not resolution. also, those technologies are mostly trained on roman letters, not arabic (is this arabic?). you should expect to put effort into training some OCR, or at least finding OCR that is specific to that script.Christoph Rackwitz– Christoph Rackwitz2023年07月24日 20:46:10 +00:00Commented Jul 24, 2023 at 20:46