An ALPR for Persian plates. Using YOLO-v5 and a custom dataset consisting of 1000+ images of different license plates, including special plates.
The detection is done in two steps; first, detecting the license plate in the input image and then identifying characters on the plate. Once the plate has been detected in the input image, the part of the image that matches the bounding box is cropped. The cropped portion is then sent to the second network for character detection. Both networks are YOLO-based.
-
Collecting images (Including special plate colors and characters)
-
Labeling images for the first part
-
Using LabelImg
-
Drawing a box around the plates in each image
-
Dataset-1
-
-
Cropping specified plates from images
-
Labeling characters from cropped plate images
-
Using LabelImg
-
Dataset-2
-
-
Increase the number of images using various methods of image augmentation
-
Using YOLO-Image-Augmentation
-
Increasing the number of images by a factor of 16
-
On both Dataset-1 and Dataset-2
-
-
Training two independent networks on Dataset-1 and Dataset-2
-
Implementing a pipeline using Python with a single image as input and a list of plate characters as output
-
Implementing frame-fetching and detection of video sources
-
Django API implementation using the Django framework
-
Making the project Docker-based so that it can be easily installed and maintained