Automatic gate control system based on vehicle license plate recognition

Automatic gate control system based on vehicle license plate recognition

Use case:

This approach aims to develop and implement an automatic gate control system that will increase convenience and security at the entrance of all the entry places that require protection and security. The gate control will be able to work automatically without or with a very little efforts and also the system will be able to recognize license plates from cars at the entrance gate and take an action to let the cars enter or not. The system based on Artificial Intelligence and modern PC with high-quality CCTV camera. It grabs video frames which include a visible car license plate and processes them. The proposed system has been implemented using Python, Convolutional Neural Networks, etc. the recognition is about 90% of vehicles shows that the system is quite efficient.

Steps involved in for training ML model:
  • Acquisition of Images from CCTV Recordings.
  • Image annotations.
  • Training.
  • Prediction.
  • Results (.csv format) & image frames of incoming and outgoing cars. 
Acquisition of images:

We need a high-resolution camera with infrared capabilities, so photos can be captured from the vehicles regardless of the time of day. We will collect front images of the vehicle. We need to fix the lights such that it should not reflect on the driver. The angle of the camera should adjust so that it should fall on the front part of the vehicle. We need to trigger our camera to capture a photo of each passing vehicle. There are many methods to accomplish this, the main ones being radar and motion detection.

  • We require 10000 sample images for training
  • Create annotations for the above 10000 images using a labeling application which must be in the format of XML or .txt file (XML preferred here because it can draw object coordinates on image)
  • By using labeling, we will get complete information about that object like height, width, angle, path, label name, etc.
  • Using multiple neural networks we can train above annotated images along with appropriate XML files.
  • Based on that above-trained model, our system will detect number plates from the complete frame which was from a recorded video.
  • Save the trained model in a different location to reuse for the prediction phase.

Once the camera captures the images of a car using the methods mentioned above, we grab upto 5 frames per second and enhance the frames using a few python in-built libraries. Then we applied pre-trained models on the frame. With this technique, we were able to detect the number plate from the frame. We should check the skewness of objects because sometimes there is a chance to get different orientations to improve the quality of the number plate label for better accuracy in results. Finally, we save the recorded video along with the number plate information captured in a database.