The Real-Time Car License Plate Recognition System is designed to automatically detect and recognize vehicle license plates in real-time. This project leverages YOLOv5 and YOLOv11 for fast and efficient license plate detection and EasyOCR for accurate character recognition. Our system aims to perform robustly under various conditions, including different lighting, angles, and plate designs, making it suitable for use in traffic management, toll collection, law enforcement, and more.
- Real-time License Plate Detection: Utilizing YOLOv5 and YOLOv11, the system can detect license plates from live video streams or images with low latency.
- Accurate Character Recognition: EasyOCR enables high-accuracy recognition of text characters, supporting multiple languages and plate formats.
- Robust to Variations: Works well under various challenging conditions like occlusions, different lighting environments, and distorted plate positions.
- Lexicon-Based Filtering: Validates recognized text against known license plate formats to enhance recognition accuracy.
The system is composed of two main components:
- License Plate Detection using YOLOv5 and YOLOv11.
- Character Recognition using EasyOCR.
After detecting the plate, post-processing steps such as lexicon-based filtering and confidence thresholding ensure accurate and reliable output.
We use publicly available datasets for training and evaluation:
- Kaggle’s Car License Plate Detection Dataset: A dataset containing 433 images with annotated license plates.
- Roboflow’s Vehicle Registration Plates Dataset: Over 8,800 images with diverse license plate annotations for robust training.
-
Clone the repository:
git clone https://github.com/yourusername/Real-Time-Car-License-Plate-Recognition.git cd Real-Time-Car-License-Plate-Recognition
-
Install the required dependencies:
pip install -r requirements.txt
-
Training YOLOv5 and YOLOv11:
- Use the provided notebooks in the
notebooks
directory to train the models. - Example:
notebooks/yolo_v11_training.ipynb
- Use the provided notebooks in the
-
Running the Pipeline:
- Use the
PipelineV5.ipynb
andPipelineV11.ipynb
notebooks to run the license plate detection and character recognition pipeline.
- Use the
-
Comparing YOLOv5 and YOLOv11:
- Use the
yolo_comparison.ipynb
notebook to look at comparison the performance of YOLOv5 and YOLOv11.
- Use the
This project is licensed under the MIT License. See the LICENSE file for more details.
- YOLOv5 by Ultralytics
- YOLOv11 by [Your YOLOv11 Source]
- EasyOCR by JaidedAI
- Kaggle and Roboflow for providing datasets