python -m pip install -r requirements.txt
Your_Folder_Path/
├── train
│ ├── images
│ │ ├── train_image_01.png
│ │ ├── train_image_02.png
│ │ ...
│ └── labels
│ ├── train_label_01.txt
│ ├── train_label_02.txt
│ ...
└── eval
├── images
│ ├── eval_image_01.png
│ ├── eval_image_02.png
│ ├── ...
└── labels
├── eval_label_01.txt
├── eval_label_02.txt
├── ...
# x1, x2, x3, x4, y1, y2, y3, y4
0.497917, 0.677083, 0.670833, 0.489583, 0.734737, 0.747368, 0.844211, 0.831579
# Simple 'base' scale training (384x384 input size, ~1.7M parameters, SGD optimizer, 200 epochs, lr = 0.001, batch_size = 16)
python train.py --data path/to/dataset_folder/
# Custom model scale example
python train.py --data path/to/dataset_folder/ --scale small --size 256 --bs 32 --lr 0.0003
# Example of inferencing with scale 'base', input_size = 384x384, threshold = 0.5.
python inference.py --model_path /path/to/your_model.pth --size 384 --scale base --threshold 0.5
python export_onnx.py --model_path /path/to/your_model.pth --size 384 --scale small
python quantize.py --onnx /path/to/model.onnx --engine engine.trt --precision int8 --calib_input /path/to/training_images
@INPROCEEDINGS{silva2018a,
author={S. M. Silva and C. R. Jung},
booktitle={2018 European Conference on Computer Vision (ECCV)},
title={License Plate Detection and Recognition in Unconstrained Scenarios},
year={2018},
pages={580-596},
doi={10.1007/978-3-030-01258-8_36},
month={Sep},}