Vehicle Registration Number Recognition 🚙
A simple web application to detect the registration number of the vehicle from the uploaded image. The application uses the OpenALPR library to identify the registration number. Users can go to the application, upload any vehicle's image and get the registration number. Currently, the application can detect only US-based vehicle registration numbers. Support for other countries will be added to the application in the near future.
Dashboard UI ✨
Project Demo 📽
Note : Wait for about 5 seconds for it to load
Features 🤩
✅ Upload images of vehicles
✅ Get the registration numbers of US-based vehicles
Tech stack 👨💻
- Frontend
- HTML5
- CSS3
- MaterializeCSS
- Javascript
- Backend
- Python
- Django
- PostgreSQL
- OpenALPR
Table of contents 📃
- What is ALPR?
- How to install ALPR?
- Project Setup
- Database Setup
- Class Diagram
- ER Diagram
- Anticipated features
What is ALPR? 🤔
OpenALPR is an open-source Automatic License Plate Recognition library written in C++ with bindings in C#, Java, Node.js, Go, and Python. The library analyzes images and video streams to identify license plates. The output is the text representation of any license plate characters.
How to install ALPR? 🤔
For Ubuntu: Follow the steps mentioned here to install the necessary packages and libraries required in order for ALPR to function smoothly
After doing that, go to /openalpr/src/bindings/python
and run python setup.py build
followed by sudo python setup.py install
This will install the OpenALPR library onto your system.
Project Setup 🛠
Note: Make sure you have Python version 3.8+ and Postgres 14 or above
Environment Setup
$ git clone https://github.com/Akash1362000/Vehicle-Registration-Number-Recognition.git
$ cd plate-detector/
Create .env
file (refer .env.example
file)
Generate SECRET_KEY
from here
Database Setup 💻
Install Postgres Latest version from here
Install pgAdmin from here
Create a Database using pgAdmin by following the steps mentioned here
Update your DATABASE_NAME
, DATABASE_USER
and DATABASE_PASSWORD
in .env
with your DB details
Install requirements
$ pip install -r requirements.txt
$ pre-commit install
$ python manage.py migrate
Create superuser: $ python manage.py createsuperuser
That's it. You're all Set!
Run python manage.py test
to check whether ALPR is properly installed on your system
To run the server: $ python manage.py runserver
Open your desired browser and head over to http://127.0.0.1:8000/
Class Diagram ✍
ER Diagram ✍
Anticipated Features 🔥
- Add support to detect registration numbers of Indian Vehicles
- Add support to detect registration numbers from video files
- Add support to store the uploaded images safely on Amazon S3
- Dockerize the application