Car Number Plate Detection and Information Fetching System.
About task
- Create a model that will detect a car in a live stream or video and recognize characters on the number plate of the car.
- Then, it will use the characters and fetch the owner’s information using RTO APIs and will be shown in the Web portal (using HTML, CSS, and JS)
Let’s Start
In the first part, we create a model which can detect the car in the live stream video or photo. For this we have to create the large data-set of cars from which we train the model using Convolutional Neural Network (CNN).
Convolutional Neural Network (CNN):
”Convolutional Neural Network (CNN)” is used for object detection. It uses an activation function called Rectified Linear Unit. It uses transfer learning which is a powerful deep learning technique in which pre-trained models can be used for feature extraction. It uses the Tensorflow library for high- performance numerical computation. The pre-processing required in a CNN is much lower as compared to other classification algorithms. While in primitive methods filters are hand-engineered, with enough training, CNN’s have the ability to learn these filters/characteristics.
They have three main types of layers, which are:
- Convolutional layer
- Pooling layer
- Fully-connected (FC) layer
The convolutional layer is the first layer of a convolutional network. While convolutional layers can be followed by additional convolutional layers or pooling layers, the fully-connected layer is the final layer. With each layer, the CNN increases in its complexity, identifying greater portions of the image. Earlier layers focus on simple features, such as colors and edges. As the image data progresses through the layers of the CNN, it starts to recognize larger elements or shapes of the object until it finally identifies the intended object.
So we are using this type of approach:
Now for displaying and training the model:
The cars but now we’ll use the haarcascade_russian_plate_number.xml to detect the number plate from the car, and then we test the model to check the output.
As you can see the model is working fine and showing the the correct Characters of Number plate, now our first part is complete let’s start second part.
So, we are going to use the Flask app where all the fetching of the details will happen with the help of API.
API used for this Task:-
The RTO doesn’t provide the details of the registered users and also may companies takes charges for their service of providing the API for fetching details, But there is one website which i have used, it provides 10 requests for free and rest you have to pay.
The website is: carregistrationapi.in
The Flask Application:-
app.py:-
index.html:-
res.html:-
Application
So our web application is also working fine, means our task is successfully completed.