metadata
license: agpl-3.0
language:
- en
pipeline_tag: object-detection
tags:
- Axera
- License Plate Recognition
- NPU
- OCR
- Object Detection
plate-axera
This version of plate-axera has been converted to run on the Axera NPU using w8a16 quantization. There are two models included:
- pld_650_npu3.axmodel: This model is trained to detect the license plate with label 'plate'.
- plr_650_npu3.axmodel: This model is trained to recognize the characters of detected license plates, and also shows the color of the license plate.
Supported Classes
Detection model supports the following classes:
- plate
Supported characters
Recognition model supports the following characters:
{"皖沪津渝冀晋蒙辽吉黑苏浙京闽赣鲁豫鄂湘粤桂琼川贵云藏陕甘青宁新警学港澳台使领挂OABCDEFGHJKLMNPQRSTUVWXYZ0123456789"}
Supported colors
Recognition model supports the following colors:
['blue', 'green', 'yellow', 'white', 'black']
Compatible with Pulsar2 version: 5.2.
Convert tools links:
For those who are interested in model conversion, you can try to export axmodel through:
- The repo of AXera Platform, where you can get the detailed guide.
- Pulsar2 Link, How to Convert ONNX to axmodel
Support Platform
https://docs.m5stack.com/zh_CN/ai_hardware/AI_Pyramid-Pro
- AX650N/AX8850
How to use
Download all files from this repository to the device.
python env requirement
pyaxengine
https://github.com/AXERA-TECH/pyaxengine
wget https://github.com/AXERA-TECH/pyaxengine/releases/download/0.1.3.rc2/axengine-0.1.3-py3-none-any.whl
pip install axengine-0.1.3-py3-none-any.whl
Inference with AX650 Host, such as M4N-Dock(爱芯派Pro)
Plate Detection
run
python3 axmodel_infer_pld.py
root@ax650:~/plate-axera# python3 axmodel_infer_pld.py
[INFO] Available providers: ['AxEngineExecutionProvider', 'AXCLRTExecutionProvider']
[INFO] Using provider: AxEngineExecutionProvider
[INFO] Chip type: ChipType.MC50
[INFO] VNPU type: VNPUType.DISABLED
[INFO] Engine version: 2.12.0s
[INFO] Model type: 2 (triple core)
[INFO] Compiler version: 5.2 eccb31f5
class: plate left:597 top:417 right:759 bottom:475 conf: 88%
Plate Recognition
run
python3 axmodel_infer_plr.py
root@ax650:~/plate-axera# python3 axmodel_infer_plr.py
[INFO] Available providers: ['AxEngineExecutionProvider', 'AXCLRTExecutionProvider']
[INFO] Using provider: AxEngineExecutionProvider
[INFO] Chip type: ChipType.MC50
[INFO] VNPU type: VNPUType.DISABLED
[INFO] Engine version: 2.12.0s
[INFO] Model type: 2 (triple core)
[INFO] Compiler version: 5.2 eccb31f5
Plate: [苏A8A68Y], score: 0.9997, color: [blue], score:1.0000
Plate det & Rec End2End
run
python3 axmodel_infer_plate_end2end.py
root@ax650:~/plate-axera# python3 axmodel_infer_plate_end2end.py
[INFO] Available providers: ['AxEngineExecutionProvider', 'AXCLRTExecutionProvider']
[INFO] Using provider: AxEngineExecutionProvider
[INFO] Chip type: ChipType.MC50
[INFO] VNPU type: VNPUType.DISABLED
[INFO] Engine version: 2.12.0s
[INFO] Model type: 2 (triple core)
[INFO] Compiler version: 5.2 eccb31f5
[INFO] Using provider: AxEngineExecutionProvider
[INFO] Model type: 2 (triple core)
[INFO] Compiler version: 5.2 eccb31f5
Det---class:[plate], bbox:[597,417,759,475], conf:0.88
Rec---Plate:[川A2E7V7], score:0.9991, color:[blue], score:1.0000
Result saved to: ./plate_end2end_res.jpg



