Skip to content

ATMI/Plates-Recognition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple implementation of Automated License Plate Recognition


Table of Contents

  1. Description
  2. Get started
  3. Project Structure

Description

This project implements logic for ALPR training and primitive inference using a novel object detection model, D-FINE. The algorithm operates in the following steps:

  1. Detect all possible license plates in the image

A

B

  1. Extract the license plates

A

B

  1. Run symbol recognition. Symbols are located and classified in one-shot using modified D-Fine architecture

A

B

  1. Enjoy the results!

A

B


Get Started

To get started with ISS, follow these steps:

  1. Clone the repository including submodules: git clone --recurse-submodules https://github.com/ATMI/Plates-Recognition.git

  2. Navigate to the submodule directory: cd Plates-Recognition/model/DFine

  3. Install required packages: pip install -r requirements.txt

  4. Download model checkpoints: Google Drive Link


Project Structure

Overview

├── data  
├── model
├── script
├── src
├── notebook.ipynb
└── README.md

Data

Place where all datasets and images are stored. Contains too many files to be published on GitHub/GitLib, provided upon a request.

data
├── demo - images used in demos
├── yolo - original datasets in YOLO format
├── coco - the same YOLO datasets but in CoCo format
├── autocrop - license plate images cropped by the model
└── autorecognize - license plate symbols extracted by the model

Model

Directory with different models used in the project. Currently only D-FINE is present.

DFINE
├── configs
│   ├── dataset - dataset descriptions
│   └── dfine
│       └── custom
│           ├── plate_detection_n.yml - config for plate detection model (nano)
│           └── plate_recognition_n.yml - config for plate recognition model (nano)
└── output - checkpoints, training logs

Script

Various utility scripts used during training/inference.

data
├── cocosplit.py - splits coco dataset into train and test parts
├── detect.py - detects the license plate
├── main.py - combines detect.py and recognize.py
├── recognize.py - recognizes symbols in the extracted license plate
├── recognize_correct.py - selects correct annotations
└── yolo2coco.py - converts YOLO dataset description to CoCo

Src

Source code for image loading, processing, geometry, dataset handling, etc.

data
├── coco
├── util
└── box.py

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors