Back to Blog

Automatic License Plate Recognition Using Computer Vision

License plate recognition

License plate recognition technology has made great progress due to its development and application in intelligent transportation systems. License plate recognition (LPR) is an effective process of recognizing characters on number plates. An LPR system for vehicles can be used anywhere as an automatic surveillance system for identification of vehicles in real-time.

It has been predicted that the US market will see a huge growth in license plate recognition, which is projected to reach $3.57 billion by 2023.

Machine learning and Image processing play an important role in LPR system. With the help of computer vision, vehicle images can be used to detect license plates and their characters. Machine learning creates a way for the system to automatically learn and improve the accuracy, thereby delivering better results.

So, what are the applications of License plate recognition technology?

  • The system can be used in high-resolution cameras at traffic congestion points for traffic reports. This way commuters would understand what places to avoid during peak times.
  • It is also used for road safety - detecting license plates of cars that exceed speed limits.
  • With the help of this system car flows can be monitored for better decision making and future road development.
  • It can be used for detection of stolen vehicles by detecting license plates and comparing them with the reported vehicles.
  • The system is used for parking management, for car entrances and exits

Vehicle license plate recognition is widely used in traffic management and monitoring. For example, some cities in China are using this technology to enable drivers to pay parking fees with an electronic wallet, without leaving their cars. This system has received a favorable reception due to its convenience. 

License Plate reader

How does a License Plate Recognition system work?

License plate recognition has actually been practiced since the 1970s. Its earliest implementation has been with law enforcement where cameras attached with police cars or on streets identified license plates of passing vehicles and matched the results with the database. 

The process of identifying numbers on license plates is done with the concept of Optical Character Recognition (OCR) on images. The OCR reads the characters printed on the license plate of a vehicle with the help of the process - Detection, Segmentation, and Recognition. Therefore, using the image of a vehicle as an input, an LPR system outputs the characters on the license plate. 

The three main stages of a LPR System

Detection: This is the most important stage where the position of the license plate is established. The input here is the image of the vehicle and the license plate is the output.

Character segmentation: In this stage characters on the license plate are mapped and segmented into individual images.

Character recognition: In the final stage, machine learning helps to identify every individual character that was mapped and segmented earlier.

Even though a license plate recognition system can be built without using machine learning, using AI & machine learning to develop an LPR system is definitely more advantageous. This is because machine learning improves the accuracy and effectiveness of the system, due to an improved training process.

Skyl.ai computer vision model automates the process of license plate recognition. Here we provide an overview of how custom models can be trained using Skyl.ai, starting with data collection and ending with testing the model’s performance. 

Skyl.ai License plate detection model  

License plate detection is probably one of the most used cases of computer vision. It is very easy for a machine to detect a license plate since they are very distinct and easy to spot. But to do this we have to first train a machine to understand license plates. How this is done is by feeding hundreds of license plate samples to the machine and then training the model. The license plate region is checked to verify the correct plate. After that the license plate image is located by the model, the output is sent to an OCR (Optical Character Recognition) system, and it reads the characters and gives out the result.

Skyl.ai machine learning platform is a great tool for creating License plate recognition models. To build this model we have scraped 200 images from a public data set. 

Data Labeling

Data can be labeled in two ways - it can be a form-based method or on the mobile app. The model uses the bounding box method of labeling data. 

The data labeling page overview consists of the label categories, the number of records labeled, and outliers in the data. The page also shows the progress of different collaborators in the labeling process.

Labeling Overview

Labeling Overview

Data Labeling

Data Labeling

Feature set engineering

The next step is creating feature sets or subsets of the dataset for model training. The random split that we have used for the feature set is 80:20. It is also possible to customize aspects such as extracting data or letting the platform manipulate ratios of training and testing.  Using featureset is important as using the entire dataset will not be useful for creating accurate models. 

Featureset

Feature set engineering

Model training

After creating feature sets you can move onto training the model. At this stage, you can select your feature set you want to use to train the model. You may also make notes in the model description. In this model, Skyl uses Faster RCNN (Transfer Learning with Resnet-50). Faster R-CNN passes the entire image to a Convolutional Neural Network, a class of deep neural networks, which generates regions of interest. It then extracts features from these regions, classifies them into different classes, and returns the location of the area of interest..

Model Training

Model Training 1

Model Training 2

Model Training 2

Once the model training is done you can deploy the license plate detection model. Skyl.ai is an efficient machine learning automation platform that enables you to deploy the model through an API. The model gives the location of the license plate. The inference created by the model (the license plate location) is then sent to an OCR system via an API, which reads the result, i.e. the characters on the license plate. After the model is deployed the system is able to detect and recognize license plates and their characters.

Computer Vision is a growing field with data scientists finding new ways to create impactful visualizations. Visit Skyl.ai to learn more about how to create other computer vision & NLP projects.

Skyl.ai’s computer vision solutions based on neural network architecture helps businesses build systems that provide ease of automation through AI-driven intelligence.

    

Comments