YOLOv9-Detection / README.md
qaihm-bot's picture
v0.54.0
f430011 verified
---
library_name: pytorch
license: other
tags:
- real_time
- android
pipeline_tag: object-detection
---
![](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/yolov9_det/web-assets/model_demo.png)
# YOLOv9-Detection: Optimized for Qualcomm Devices
Ultralytics YOLOv9 is a machine learning model that predicts bounding boxes and classes of objects in an image.
This is based on the implementation of YOLOv9-Detection found [here](https://github.com/ultralytics/ultralytics/tree/main/ultralytics/models/yolo/detect).
This repository contains pre-exported model files optimized for Qualcomm® devices. You can use the [Qualcomm® AI Hub Models](https://github.com/qualcomm/ai-hub-models/blob/main/src/qai_hub_models/models/yolov9_det) library to export with custom configurations. More details on model performance across various devices, can be found [here](#performance-summary).
Qualcomm AI Hub Models uses [Qualcomm AI Hub Workbench](https://workbench.aihub.qualcomm.com) to compile, profile, and evaluate this model. [Sign up](https://myaccount.qualcomm.com/signup) to run these models on a hosted Qualcomm® device.
## Getting Started
Due to licensing restrictions, we cannot distribute pre-exported model assets for this model.
Use the [Qualcomm® AI Hub Models](https://github.com/qualcomm/ai-hub-models/blob/main/src/qai_hub_models/models/yolov9_det) Python library to compile and export the model with your own:
- Custom weights (e.g., fine-tuned checkpoints)
- Custom input shapes
- Target device and runtime configurations
See our repository for [YOLOv9-Detection on GitHub](https://github.com/qualcomm/ai-hub-models/blob/main/src/qai_hub_models/models/yolov9_det) for usage instructions.
## Model Details
**Model Type:** Model_use_case.object_detection
**Model Stats:**
- Model checkpoint: YOLOv9-T
- Input resolution: 640x640
- Model size (float): 8.84 MB
- Model size (w8a8): 3.23 MB
- Model size (w8a8_mixed_int16): 3.74 MB
- Model size (w8a16): 3.25 MB
## Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit
|---|---|---|---|---|---|---
| YOLOv9-Detection | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 3.442 ms | 0 - 229 MB | NPU
| YOLOv9-Detection | ONNX | float | Snapdragon® 8 Elite Mobile | 4.446 ms | 0 - 219 MB | NPU
| YOLOv9-Detection | ONNX | float | Snapdragon® X2 Elite | 3.96 ms | 3 - 3 MB | NPU
| YOLOv9-Detection | ONNX | float | Snapdragon® X Elite | 10.916 ms | 5 - 5 MB | NPU
| YOLOv9-Detection | ONNX | float | Snapdragon® X Elite | 10.916 ms | 5 - 5 MB | NPU
| YOLOv9-Detection | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 7.658 ms | 5 - 259 MB | NPU
| YOLOv9-Detection | ONNX | float | Qualcomm® QCS8550 (Proxy) | 10.522 ms | 5 - 131 MB | NPU
| YOLOv9-Detection | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 4.446 ms | 0 - 219 MB | NPU
| YOLOv9-Detection | ONNX | float | Qualcomm® QCS9075 | 10.644 ms | 5 - 7 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® 8 Elite Gen 5 Mobile | 91.687 ms | 9 - 140 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® 8 Elite Mobile | 98.748 ms | 0 - 129 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® X2 Elite | 90.943 ms | 0 - 0 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® X Elite | 309.025 ms | 2 - 2 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® X Elite | 309.025 ms | 2 - 2 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® 8 Gen 3 Mobile | 224.102 ms | 5 - 166 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Qualcomm® QCS6490 | 464.829 ms | 81 - 87 MB | CPU
| YOLOv9-Detection | ONNX | w8a16 | Qualcomm® QCS8550 (Proxy) | 294.939 ms | 2 - 11 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Qualcomm® QCM6690 | 216.976 ms | 82 - 99 MB | CPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® 7 Gen 4 Mobile | 198.482 ms | 80 - 93 MB | CPU
| YOLOv9-Detection | ONNX | w8a16 | Qualcomm® QCS9075 | 185.962 ms | 2 - 5 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® 8 Elite For Galaxy Mobile | 98.748 ms | 0 - 129 MB | NPU
| YOLOv9-Detection | ONNX | w8a16 | Snapdragon® 7 Gen 4 Mobile | 198.482 ms | 80 - 93 MB | CPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 110.799 ms | 4 - 102 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® 8 Elite Mobile | 111.881 ms | 2 - 99 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® X2 Elite | 110.818 ms | 0 - 0 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® X Elite | 187.466 ms | 2 - 2 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® X Elite | 187.466 ms | 2 - 2 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® 8 Gen 3 Mobile | 136.819 ms | 1 - 120 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Qualcomm® QCS6490 | 100.208 ms | 22 - 36 MB | CPU
| YOLOv9-Detection | ONNX | w8a8 | Qualcomm® QCS8550 (Proxy) | 178.969 ms | 0 - 7 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Qualcomm® QCS9075 | 189.389 ms | 1 - 4 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® 7 Gen 4 Mobile | 57.643 ms | 23 - 41 MB | CPU
| YOLOv9-Detection | ONNX | w8a8 | Qualcomm® QCM6690 | 61.82 ms | 0 - 18 MB | CPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 111.881 ms | 2 - 99 MB | NPU
| YOLOv9-Detection | ONNX | w8a8 | Snapdragon® 7 Gen 4 Mobile | 57.643 ms | 23 - 41 MB | CPU
| YOLOv9-Detection | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 2.761 ms | 3 - 211 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Snapdragon® 8 Elite Mobile | 3.141 ms | 0 - 207 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Snapdragon® X2 Elite | 3.408 ms | 5 - 5 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Snapdragon® X Elite | 8.699 ms | 5 - 5 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Snapdragon® X Elite | 8.699 ms | 5 - 5 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 5.926 ms | 0 - 232 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Qualcomm® QCS8550 (Proxy) | 8.13 ms | 5 - 7 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Qualcomm® SA8775P | 10.425 ms | 0 - 204 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Qualcomm® SA8775P | 10.425 ms | 0 - 204 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Qualcomm® SA8775P | 10.425 ms | 0 - 204 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Qualcomm® QCS8450 (Proxy) | 13.895 ms | 5 - 234 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Qualcomm® SA7255P | 21.64 ms | 0 - 203 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 3.141 ms | 0 - 207 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Qualcomm® SA8295P | 13.376 ms | 0 - 203 MB | NPU
| YOLOv9-Detection | QNN_DLC | float | Qualcomm® QCS9075 | 8.942 ms | 5 - 11 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® 8 Elite Gen 5 Mobile | 79.763 ms | 2 - 100 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® 8 Elite Mobile | 114.956 ms | 2 - 97 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® X2 Elite | 80.324 ms | 2 - 2 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® X Elite | 224.017 ms | 2 - 2 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® X Elite | 224.017 ms | 2 - 2 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® 8 Gen 3 Mobile | 165.877 ms | 2 - 122 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® QCS6490 | 404.074 ms | 1 - 4 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® QCS8550 (Proxy) | 214.071 ms | 3 - 4 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® SA8775P | 235.401 ms | 0 - 94 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® SA8775P | 235.401 ms | 0 - 94 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® SA8775P | 235.401 ms | 0 - 94 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® QCM6690 | 561.727 ms | 2 - 204 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® QCS8450 (Proxy) | 357.694 ms | 2 - 120 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® 7 Gen 4 Mobile | 285.839 ms | 3 - 215 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® QCS9075 | 182.595 ms | 2 - 6 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® SA7255P | 447.545 ms | 1 - 91 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® 8 Elite For Galaxy Mobile | 114.956 ms | 2 - 97 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Qualcomm® SA8295P | 301.328 ms | 2 - 98 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a16 | Snapdragon® 7 Gen 4 Mobile | 285.839 ms | 3 - 215 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 110.541 ms | 1 - 65 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® 8 Elite Mobile | 133.368 ms | 2 - 63 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® X2 Elite | 100.749 ms | 1 - 1 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® X Elite | 175.421 ms | 1 - 1 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® X Elite | 175.421 ms | 1 - 1 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® 8 Gen 3 Mobile | 136.245 ms | 1 - 81 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® QCS6490 | 407.089 ms | 1 - 4 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® QCS8550 (Proxy) | 167.042 ms | 2 - 4 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® SA8775P | 170.561 ms | 1 - 64 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® SA8775P | 170.561 ms | 1 - 64 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® SA8775P | 170.561 ms | 1 - 64 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® QCS9075 | 190.433 ms | 0 - 3 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® QCS8450 (Proxy) | 237.954 ms | 1 - 81 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® 7 Gen 4 Mobile | 176.044 ms | 1 - 64 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® QCM6690 | 510.839 ms | 1 - 186 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 133.368 ms | 2 - 63 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® SA7255P | 347.668 ms | 1 - 62 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Qualcomm® SA8295P | 202.959 ms | 1 - 62 MB | NPU
| YOLOv9-Detection | QNN_DLC | w8a8 | Snapdragon® 7 Gen 4 Mobile | 176.044 ms | 1 - 64 MB | NPU
| YOLOv9-Detection | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 2.275 ms | 0 - 114 MB | NPU
| YOLOv9-Detection | TFLITE | float | Snapdragon® 8 Elite Mobile | 2.957 ms | 0 - 91 MB | NPU
| YOLOv9-Detection | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 5.57 ms | 0 - 127 MB | NPU
| YOLOv9-Detection | TFLITE | float | Qualcomm® QCS8550 (Proxy) | 7.722 ms | 0 - 2 MB | NPU
| YOLOv9-Detection | TFLITE | float | Qualcomm® SA8775P | 10.21 ms | 0 - 107 MB | NPU
| YOLOv9-Detection | TFLITE | float | Qualcomm® SA8775P | 10.21 ms | 0 - 107 MB | NPU
| YOLOv9-Detection | TFLITE | float | Qualcomm® SA8775P | 10.21 ms | 0 - 107 MB | NPU
| YOLOv9-Detection | TFLITE | float | Qualcomm® QCS8450 (Proxy) | 11.945 ms | 0 - 110 MB | NPU
| YOLOv9-Detection | TFLITE | float | Qualcomm® SA7255P | 21.014 ms | 0 - 95 MB | NPU
| YOLOv9-Detection | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 2.957 ms | 0 - 91 MB | NPU
| YOLOv9-Detection | TFLITE | float | Qualcomm® SA8295P | 12.887 ms | 0 - 76 MB | NPU
| YOLOv9-Detection | TFLITE | float | Qualcomm® QCS9075 | 8.53 ms | 0 - 14 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 110.434 ms | 0 - 65 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Snapdragon® 8 Elite Mobile | 132.978 ms | 0 - 59 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 136.29 ms | 0 - 82 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® QCS6490 | 377.563 ms | 0 - 7 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® QCS8550 (Proxy) | 167.195 ms | 0 - 2 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® SA8775P | 182.769 ms | 0 - 62 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® SA8775P | 182.769 ms | 0 - 62 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® SA8775P | 182.769 ms | 0 - 62 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® QCS9075 | 190.136 ms | 0 - 7 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® QCS8450 (Proxy) | 238.074 ms | 0 - 79 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 179.365 ms | 0 - 59 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® QCM6690 | 499.682 ms | 0 - 186 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 132.978 ms | 0 - 59 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® SA7255P | 347.711 ms | 0 - 59 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Qualcomm® SA8295P | 202.713 ms | 0 - 58 MB | NPU
| YOLOv9-Detection | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 179.365 ms | 0 - 59 MB | NPU
## License
* The license for the original implementation of YOLOv9-Detection can be found
[here](https://github.com/ultralytics/ultralytics/blob/main/LICENSE).
## References
* [Ultralytics YOLOv9 Docs: Object Detection](https://docs.ultralytics.com/tasks/detect/)
* [Source Model Implementation](https://github.com/ultralytics/ultralytics/tree/main/ultralytics/models/yolo/detect)
## Community
* Join [our AI Hub Slack community](https://aihub.qualcomm.com/community/slack) to collaborate, post questions and learn more about on-device AI.
* For questions or feedback please [reach out to us](mailto:ai-hub-support@qti.qualcomm.com).