mrzaizai2k / VIETNAMESE_LICENSE_PLATE

The program for recognizing license plates in the parking lot, which was utilized for both 1 and 2 rows of Vietnamese license plates. Using the KNN algorithm and the OpenCV image processing library. Details Later, I'll provide an updated YouTube video.
MIT License
15 stars 6 forks source link

Enhancing License Plate Recognition Accuracy in Varied Lighting Conditions #5

Open yihong1120 opened 7 months ago

yihong1120 commented 7 months ago

Dear Mrzaizai2k,

I have been following your work on Vietnamese license plate recognition using KNN and OpenCV with great interest. Your project demonstrates a practical application of image processing techniques and machine learning to solve a real-world problem. The detailed breakdown of the process in your README.md is particularly insightful, and the results you've achieved are commendable.

However, I would like to address a challenge that seems to be affecting the accuracy of your system, particularly in diverse lighting conditions. As you've mentioned, the recognition capability of the KNN algorithm is somewhat limited when dealing with reflections, glare, and low-visibility scenarios. These issues are especially prevalent in environments with strong or inconsistent lighting, such as direct sunlight, nighttime, or foggy conditions.

To enhance the robustness of your license plate recognition system, I propose exploring the following avenues:

  1. Algorithmic Enhancement:

    • Transitioning from KNN to more sophisticated algorithms like Convolutional Neural Networks (CNN) or Support Vector Machines (SVM) could significantly improve recognition accuracy. These algorithms have proven to be more effective in handling complex patterns and variations in image data.
    • Incorporating pre-trained models such as YOLO or YOLOv3 for object detection could streamline the process of license plate detection, allowing for a more focused and accurate character recognition phase.
  2. Image Preprocessing Improvements:

    • Implementing adaptive histogram equalisation techniques like CLAHE (Contrast Limited Adaptive Histogram Equalisation) could improve the contrast of license plate images under varying lighting conditions.
    • Exploring advanced noise reduction and image enhancement filters that are specifically designed to counteract the effects of glare and reflection.
  3. Hardware Adjustments:

    • Utilising specialised cameras equipped with High Dynamic Range (HDR) capabilities and better low-light performance can provide higher quality input images for the recognition system.
    • Implementing polarising filters to reduce glare and reflections from shiny surfaces, which is a common issue with vehicle license plates.
  4. Post-Processing Techniques:

    • Applying morphological operations to refine the binary images obtained during thresholding, which could help in maintaining the integrity of characters on the license plates.
    • Experimenting with edge detection algorithms that are less sensitive to lighting variations, such as the Scharr or Sobel operators, which may provide more consistent results in edge-based contour detection.

I believe that addressing these aspects could significantly enhance the performance of your license plate recognition system, especially under challenging lighting conditions. I would be interested to hear your thoughts on these suggestions and whether you have considered similar improvements in your future work.

Thank you for sharing your project with the community, and I look forward to your continued innovations in this field.

Best regards, yihong1120

mrzaizai2k commented 7 months ago

Great, what a thoughtful comment I have applied yolov7 and cnn in another repo which u can find here https://github.com/mrzaizai2k/License-Plate-Recognition-YOLOv7-and-CNN