Automatic-Number-Plate-Recognition-YOLOv8

Demo

license.plate.recording.for.git.mp4

Data

The video I used in this tutorial can be downloaded here.

Model

A Yolov8 pre-trained model (YOLOv8n) was used to detect vehicles.

A licensed plate detector was used to detect license plates. The model was trained with Yolov8 using this dataset.

  • The model is available here.

Dependencies

The sort module needs to be downloaded from this repository.

Project Setup

  • Make an environment with python=3.8 using the following command
conda create --prefix ./env python==3.8 -y
  • Activate the environment
conda activate ./env
  • Install the project dependencies using the following command
pip install -r requirements.txt
  • Run main.py with the sample video file to generate the test.csv file
python main.py
  • Run the add_missing_data.py file for interpolation of values to match up for the missing frames and smooth output.
python add_missing_data.py
  • Finally run the visualize.py passing in the interpolated csv files and hence obtaining a smooth output for license plate detection.
python visualize.py