This project aims to develop an effective number plate detection model through the use of YOLOv4, and then to implement this model in conjunction with the Tesseract optical character recognition (OCR) engine to recognise the characters detected on the number plate.
Automatic number plate recognition (ANPR) is an area of machine vision that has been explored extensively, due to its practical uses and benefits. ANPR has been adopted by the police in several countries and is used to deter and disrupt criminality. These systems are used in conjunction with databases containing car registrations pertaining to stolen vehicles, and vehicles involved in crimes.
YOLOv4 is a single-shot object detection method and uses the Darknet framework for its training and detections. In this project, three separate models were trained using YOLOv4, and their effectiveness was tested on a small sample of Maltese number plates. Two of the models were trained on separate datasets, one specific to Belgian number plates and the other a more varied dataset sourced from Google. The third model was trained using the combination of both datasets. Any differences in the efficacy of these three models were determined according to their performance on the Maltese test dataset.
For the recognition segment of this work, a suitable project was selected, which uses the Tesseract OCR to perform the recognition task. Tesseract OCR performs best when the characters have been preprocessed to make them more easily readable to Tesseract. The chosen project implements several preprocessing steps to the number plate detection. However, the accuracy of the OCR was observed to be suboptimal on the test set. Hence, multiple changes were made to the preprocessing steps to improve the accuracy of the final recognition. The efficacy of these changes was observed through the text recognitions obtained from the test dataset.
Course: B.Sc. IT (Hons.) Software Development
Supervisor: Prof. John M. Abela