PlateScribe is an advanced license plate detection model that identifies and extracts license plate numbers from images. The model uses the InceptionResNetV2 architecture for feature extraction and Optical Character Recognition (OCR) for text extraction. This README provides a comprehensive guide on how to set up and use the PlateScribe project.
PlateScribe leverages state-of-the-art object detection techniques to locate license plates in images and employs OCR to extract text from the detected plates. The model is designed for high accuracy and efficiency in real-world scenarios.
To quickly get started with PlateScribe, visit the GitHub repository at PlateScribe App.
-
Clone the Repository
git clone https://github.com/Asifdotexe/PlateScribe.git cd PlateScribe
-
Create a Virtual Environment
python -m venv venv source venv/bin/activate # On Windows, use `venv\Scripts\activate`
-
Install Required Packages
pip install -r requirements.txt
-
Download Pre-trained Model Make sure to download the pre-trained model file and place it in the
./output/ directory.
The model file is namedobject_detection_e10.keras.
-
Run the Application
streamlit run app.py
For detailed descriptions of each module, functions, and their purposes, please visit the PlateScribe Wiki.
+---------------------------+
| XML Parser |
|---------------------------|
| parse_xml_files() |
| save_labels_to_csv() |
| get_image_filename() |
| extract_image_filenames() |
+---------------------------+
|
v
+---------------------------+
| Bounding Box |
| Verifier |
|---------------------------|
| verify_bounding_box() |
+---------------------------+
|
v
+---------------------------+
| Data Processor |
|---------------------------|
| process_data() |
+---------------------------+
|
v
+---------------------------+
| Model Trainer |
|---------------------------|
| build_and_train_model() |
+---------------------------+
|
v
+---------------------------+
| App |
|---------------------------|
| detect_objects_in_image() |
+---------------------------+
|
v
+---------------------------+
| Streamlit Interface |
|---------------------------|
| User Uploads Image |
| Model Processes Image |
| Bounding Boxes Displayed |
| Extracted Text Displayed |
+---------------------------+
Start
|
v
XML Parser
|
v
Bounding Box Verifier
|
v
Data Processor
|
v
Model Trainer
|
v
App
|
v
Streamlit Interface
The PlateScribe project provides a full pipeline for detecting and reading license plates from images. It integrates multiple modules for parsing, verification, data processing, model training, and user interface to deliver a seamless experience for license plate detection and OCR.