YOLO11-OBB

This version of YOLO11-OBB (Oriented Bounding Box) has been converted to run on the Axera NPU using w8a16 quantization. It is optimized for detecting rotated objects such as ships, harbors, vehicles, and other DOTA-style targets with oriented bounding boxes.

Compatible with Pulsar2 version: 6.0.

Convert tools links

For those who are interested in model conversion, you can try to export axmodel through:

Support Platform

This repository currently provides axmodels for the following Axera platforms only:

Model files

The converted axmodels are organized by target platform:

yolo11_obb/
β”œβ”€β”€ 650/
β”‚   β”œβ”€β”€ yolo11n-obb_640x640_npu1.axmodel
β”‚   β”œβ”€β”€ yolo11n-obb_640x640_npu3.axmodel
β”‚   β”œβ”€β”€ yolo11s-obb_640x640_npu1.axmodel
β”‚   β”œβ”€β”€ yolo11s-obb_640x640_npu3.axmodel
β”‚   β”œβ”€β”€ yolo11m-obb_640x640_npu1.axmodel
β”‚   β”œβ”€β”€ yolo11m-obb_640x640_npu3.axmodel
β”‚   β”œβ”€β”€ yolo11l-obb_640x640_npu1.axmodel
β”‚   β”œβ”€β”€ yolo11l-obb_640x640_npu3.axmodel
β”‚   β”œβ”€β”€ yolo11x-obb_640x640_npu1.axmodel
β”‚   └── yolo11x-obb_640x640_npu3.axmodel
β”œβ”€β”€ 637/
β”‚   β”œβ”€β”€ yolo11n-obb_640x640_npu1.axmodel
β”‚   β”œβ”€β”€ yolo11s-obb_640x640_npu1.axmodel
β”‚   β”œβ”€β”€ yolo11m-obb_640x640_npu1.axmodel
β”‚   β”œβ”€β”€ yolo11l-obb_640x640_npu1.axmodel
β”‚   └── yolo11x-obb_640x640_npu1.axmodel
β”œβ”€β”€ ax_infer.py
β”œβ”€β”€ boats.jpg
└── result_yolo11_obb_ax.jpg

Performance Statistics

Latency data is left blank and can be filled in after benchmark testing.

AX650N/AX8850

Model Latency(ms) npu1 Latency(ms) npu3
yolo11n-obb 3.491 1.383
yolo11s-obb 9.008 3.240
yolo11m-obb 26.086 8.958
yolo11l-obb 33.724 11.496
yolo11x-obb 73.796 25.168

AX637

Model Latency(ms)
yolo11n-obb 4.191
yolo11s-obb 11.068
yolo11m-obb 27.316
yolo11l-obb 35.625
yolo11x-obb 79.141

How to use

Download all files from this repository to the device, then choose the axmodel that matches your target platform.

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 on board

Input image:

Run with an AX650N/AX8850 model:

python3 ax_infer.py -m 650/yolo11m-obb_640x640_npu3.axmodel -i boats.jpg

Run with an AX637 model:

python3 ax_infer.py -m 637/yolo11m-obb_640x640_npu1.axmodel -i boats.jpg

Example output from AX637:

root@ax637:~/11obb# python3 ax_infer.py -m yolo11m-obb_640x640_npu3.axmodel -i boats.jpg
[INFO] Available providers:  ['AxEngineExecutionProvider']
[INFO] Using provider: AxEngineExecutionProvider
[INFO] Chip type: ChipType.M57H
[INFO] VNPU type: VNPUType.DISABLED
[INFO] Engine version: 2.12.0s
[INFO] Model type: 0 (single core)
[INFO] Compiler version: 6.0 93b95f7f
Load model: 844.4 ms
Forward+post: 194.9 ms
Found 167 oriented objects.
  ship                 conf=0.84 cx=1707.6 cy=792.9 w=105.7 h=34.9 theta=+26.0
  ship                 conf=0.84 cx=1790.4 cy=573.8 w=117.8 h=36.5 theta=+24.5
  ship                 conf=0.84 cx=1723.6 cy=760.6 w=108.8 h=31.4 theta=+24.5
  ship                 conf=0.84 cx=1782.8 cy=620.8 w=112.0 h=35.7 theta=+25.0
  ship                 conf=0.82 cx=1487.2 cy=694.4 w=97.2 h=31.3 theta=+21.0
  ...
  harbor               conf=0.29 cx=824.3 cy=184.2 w=230.5 h=521.3 theta=+24.0
  ship                 conf=0.29 cx=1219.5 cy=246.9 w=85.7 h=24.0 theta=+23.0
  ship                 conf=0.29 cx=1652.9 cy=276.2 w=80.3 h=26.1 theta=+20.5
  ship                 conf=0.29 cx=1190.1 cy=307.0 w=91.3 h=28.6 theta=+21.0
  harbor               conf=0.27 cx=1535.8 cy=388.2 w=221.8 h=953.5 theta=+20.5
  ship                 conf=0.26 cx=1517.0 cy=274.2 w=84.8 h=24.2 theta=+21.5
  ship                 conf=0.26 cx=1522.8 cy=252.3 w=89.5 h=29.9 theta=+19.5
Saved: result_yolo11_obb_ax.jpg

Output image:

Downloads last month
15
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Collection including AXERA-TECH/yolo11-obb