https://github.com/piyush-poddar/platextract
Extract any vehicle's number plate text with over 98% accuracy.
https://github.com/piyush-poddar/platextract
gemini-api opencv-python python streamlit yolov3
Last synced: about 2 months ago
JSON representation
Extract any vehicle's number plate text with over 98% accuracy.
- Host: GitHub
- URL: https://github.com/piyush-poddar/platextract
- Owner: piyush-poddar
- Created: 2024-12-17T16:28:28.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-03-03T12:15:59.000Z (over 1 year ago)
- Last Synced: 2025-03-25T13:17:36.516Z (about 1 year ago)
- Topics: gemini-api, opencv-python, python, streamlit, yolov3
- Language: Python
- Homepage: https://platextract.streamlit.app
- Size: 57.6 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PlateXtract
## 📌 Overview
PlateXtract is an Automatic License Plate Recognition (ALPR) system that detects and extracts vehicle license plate numbers from images with high accuracy. The system uses a YOLOv3 model for plate detection and Google Gemini API for OCR, achieving over **98% accuracy** in reading license plates.
🔥 **Live Demo Available!** PlateXtract is deployed on Streamlit, making it easy to use with a simple web-based interface.
## 🌐 Deployment
You can try PlateXtract live on Streamlit:
👉 **https://platextract.streamlit.app**
## ✨ Features
- 🚗 **High-Accuracy Plate Detection**: Utilizes a YOLOv3 model to detect vehicle license plates.
- 🔠 **OCR for Text Extraction**: Uses Google Gemini API to extract text from detected plates.
- 📊 **Real-Time Processing**: Processes images efficiently for real-time applications.
- 🖼️ **Supports Multiple Image Formats**: Works with various image types for flexibility.
## 🛠️ Tech Stack
- **Python** - Backend processing
- **YOLOv3 Model** - License plate detection
- **Google Gemini API** - OCR for text extraction
- **OpenCV** - Image processing
- **Streamlit** - User Interface
## 🚀 Installation
1. Clone the repository:
```Bash
git clone https://github.com/piyush-poddar/PlateXtract.git
cd PlateXtract
```
2. Install required dependencies:
```Bash
pip install -r requirements.txt
```
3. Download model weights from this [link](https://drive.google.com/uc?id=1Qlcv7vcyWn9UsKsjqHat4V_CuVh5Lggs) and put it inside `model/weights` directory. Alternatively, you can skip this step allow the code itself to do it for you.
4. Add your Gemini API key in `.streamlit/secrets.toml`.
5. Run the Streamlit App:
```Bash
streamlit run app.py
```
## 📌 Usage
- Provide an image of a vehicle with number plate.
- The model detects the license plate and extracts the number.
- The extracted text is displayed as output.
## 🔮 Future Enhancements
- 🚀 Implementing real-time detection via a webcam or video feed.
- 🛣️ Integration with traffic monitoring and law enforcement systems.
- 🌍 Support for multiple languages in OCR.
## 🤝 Contributing
1. Fork the repo and create a new branch.
2. Make improvements and test thoroughly.
3. Submit a pull request with a detailed description.
### Made with ❤️ by Piyush Poddar