HRNetPose / README.md
qaihm-bot's picture
v0.59.0
99d55ee verified
|
Raw
History Blame Contribute Delete
15.7 kB
---
library_name: pytorch
license: other
tags:
- bu_auto
- android
pipeline_tag: keypoint-detection
---
![](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/web-assets/model_demo.png)
# HRNetPose: Optimized for Qualcomm Devices
HRNet performs pose estimation in high-resolution representations.
This is based on the implementation of HRNetPose found [here](https://github.com/leoxiaobin/deep-high-resolution-net.pytorch).
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/v0.59.0/src/qai_hub_models/models/hrnet_pose) 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
There are two ways to deploy this model on your device:
### Option 1: Download Pre-Exported Models
Below are pre-exported model assets ready for deployment.
| Runtime | Precision | Chipset | SDK Versions | Download |
|---|---|---|---|---|
| ONNX | float | Universal | QAIRT 2.45, ONNX Runtime 1.27.1 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/releases/v0.59.0/hrnet_pose-onnx-float.zip)
| ONNX | w8a16 | Universal | QAIRT 2.45, ONNX Runtime 1.27.1 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/releases/v0.59.0/hrnet_pose-onnx-w8a16.zip)
| ONNX | w8a8 | Universal | QAIRT 2.45, ONNX Runtime 1.27.1 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/releases/v0.59.0/hrnet_pose-onnx-w8a8.zip)
| QNN_DLC | float | Universal | QAIRT 2.45 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/releases/v0.59.0/hrnet_pose-qnn_dlc-float.zip)
| QNN_DLC | w8a16 | Universal | QAIRT 2.45 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/releases/v0.59.0/hrnet_pose-qnn_dlc-w8a16.zip)
| QNN_DLC | w8a8 | Universal | QAIRT 2.45 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/releases/v0.59.0/hrnet_pose-qnn_dlc-w8a8.zip)
| TFLITE | float | Universal | QAIRT 2.45 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/releases/v0.59.0/hrnet_pose-tflite-float.zip)
| TFLITE | w8a8 | Universal | QAIRT 2.45 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/hrnet_pose/releases/v0.59.0/hrnet_pose-tflite-w8a8.zip)
For more device-specific assets and performance metrics, visit **[HRNetPose on Qualcomm® AI Hub](https://aihub.qualcomm.com/models/hrnet_pose)**.
### Option 2: Export with Custom Configurations
Use the [Qualcomm® AI Hub Models](https://github.com/qualcomm/ai-hub-models/blob/v0.59.0/src/qai_hub_models/models/hrnet_pose) 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
This option is ideal if you need to customize the model beyond the default configuration provided here.
See our repository for [HRNetPose on GitHub](https://github.com/qualcomm/ai-hub-models/blob/v0.59.0/src/qai_hub_models/models/hrnet_pose) for usage instructions.
## Model Details
**Model Type:** Model_use_case.pose_estimation
**Model Stats:**
- Model checkpoint: hrnet_posenet_FP32_state_dict
- Input resolution: 256x192
- Number of parameters: 28.5M
- Model size (float): 109 MB
- Model size (w8a8): 28.1 MB
## Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit
|---|---|---|---|---|---|---
| HRNetPose | ONNX | float | Snapdragon® X2 Elite | 1.316 ms | 2 - 2 MB | NPU
| HRNetPose | ONNX | float | Snapdragon® X Elite | 2.397 ms | 55 - 55 MB | NPU
| HRNetPose | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 1.844 ms | 0 - 141 MB | NPU
| HRNetPose | ONNX | float | Snapdragon® 8 Gen 1 Mobile | 4.353 ms | 1 - 131 MB | NPU
| HRNetPose | ONNX | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 2.435 ms | 0 - 243 MB | NPU
| HRNetPose | ONNX | float | Qualcomm® QCS8450 | 4.353 ms | 1 - 131 MB | NPU
| HRNetPose | ONNX | float | Qualcomm® Dragonwing™ IQ-9075 | 3.867 ms | 0 - 4 MB | NPU
| HRNetPose | ONNX | float | Qualcomm® Dragonwing™ IQ-X7181 | 2.397 ms | 55 - 55 MB | NPU
| HRNetPose | ONNX | float | Qualcomm® Dragonwing™ Q-8750 | 1.456 ms | 0 - 87 MB | NPU
| HRNetPose | ONNX | float | Snapdragon® 8 Elite Mobile | 1.456 ms | 0 - 87 MB | NPU
| HRNetPose | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 1.25 ms | 0 - 87 MB | NPU
| HRNetPose | ONNX | w8a16 | Snapdragon® X2 Elite | 1.003 ms | 1 - 1 MB | NPU
| HRNetPose | ONNX | w8a16 | Snapdragon® X Elite | 1.741 ms | 29 - 29 MB | NPU
| HRNetPose | ONNX | w8a16 | Snapdragon® 8 Gen 3 Mobile | 1.233 ms | 0 - 200 MB | NPU
| HRNetPose | ONNX | w8a16 | Snapdragon® 8 Gen 1 Mobile | 2.489 ms | 0 - 203 MB | NPU
| HRNetPose | ONNX | w8a16 | Qualcomm® Dragonwing™ QCS6490 | 8.21 ms | 0 - 3 MB | NPU
| HRNetPose | ONNX | w8a16 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 1.713 ms | 0 - 43 MB | NPU
| HRNetPose | ONNX | w8a16 | Qualcomm® QCS8450 | 2.489 ms | 0 - 203 MB | NPU
| HRNetPose | ONNX | w8a16 | Qualcomm® Dragonwing™ IQ-9075 | 1.932 ms | 0 - 3 MB | NPU
| HRNetPose | ONNX | w8a16 | Qualcomm® Dragonwing™ IQ-X7181 | 1.741 ms | 29 - 29 MB | NPU
| HRNetPose | ONNX | w8a16 | Qualcomm® Dragonwing™ Q-8750 | 0.973 ms | 0 - 134 MB | NPU
| HRNetPose | ONNX | w8a16 | Snapdragon® 8 Elite Mobile | 0.973 ms | 0 - 134 MB | NPU
| HRNetPose | ONNX | w8a16 | Snapdragon® 8 Elite Gen 5 Mobile | 0.814 ms | 0 - 134 MB | NPU
| HRNetPose | ONNX | w8a8 | Snapdragon® X2 Elite | 0.57 ms | 1 - 1 MB | NPU
| HRNetPose | ONNX | w8a8 | Snapdragon® X Elite | 1.112 ms | 28 - 28 MB | NPU
| HRNetPose | ONNX | w8a8 | Snapdragon® 8 Gen 3 Mobile | 0.855 ms | 0 - 190 MB | NPU
| HRNetPose | ONNX | w8a8 | Snapdragon® 8 Gen 1 Mobile | 1.753 ms | 0 - 188 MB | NPU
| HRNetPose | ONNX | w8a8 | Qualcomm® Dragonwing™ QCS6490 | 4.867 ms | 0 - 3 MB | NPU
| HRNetPose | ONNX | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 1.141 ms | 0 - 32 MB | NPU
| HRNetPose | ONNX | w8a8 | Qualcomm® QCS8450 | 1.753 ms | 0 - 188 MB | NPU
| HRNetPose | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 1.403 ms | 0 - 3 MB | NPU
| HRNetPose | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-X7181 | 1.112 ms | 28 - 28 MB | NPU
| HRNetPose | ONNX | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 0.721 ms | 0 - 126 MB | NPU
| HRNetPose | ONNX | w8a8 | Snapdragon® 8 Elite Mobile | 0.721 ms | 0 - 126 MB | NPU
| HRNetPose | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 0.646 ms | 0 - 127 MB | NPU
| HRNetPose | QNN_DLC | float | Snapdragon® X2 Elite | 1.625 ms | 1 - 1 MB | NPU
| HRNetPose | QNN_DLC | float | Snapdragon® X Elite | 2.922 ms | 1 - 1 MB | NPU
| HRNetPose | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 1.975 ms | 0 - 116 MB | NPU
| HRNetPose | QNN_DLC | float | Snapdragon® 8 Gen 1 Mobile | 5.024 ms | 0 - 105 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® Dragonwing™ QCS8275 | 14.136 ms | 1 - 73 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 2.733 ms | 1 - 2 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® SA8775P | 4.315 ms | 1 - 75 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® SA8650P | 4.315 ms | 1 - 75 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® SA8255P | 4.315 ms | 1 - 75 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® QCS8450 | 5.024 ms | 0 - 105 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-9075 | 4.083 ms | 1 - 3 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-X7181 | 2.922 ms | 1 - 1 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® Dragonwing™ Q-8750 | 1.557 ms | 0 - 74 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® SA7255P | 14.136 ms | 1 - 73 MB | NPU
| HRNetPose | QNN_DLC | float | Qualcomm® SA8295P | 4.592 ms | 1 - 61 MB | NPU
| HRNetPose | QNN_DLC | float | Snapdragon® 8 Elite Mobile | 1.557 ms | 0 - 74 MB | NPU
| HRNetPose | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 1.291 ms | 0 - 77 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Snapdragon® X2 Elite | 1.293 ms | 0 - 0 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Snapdragon® X Elite | 2.113 ms | 0 - 0 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Snapdragon® 8 Gen 3 Mobile | 1.381 ms | 0 - 144 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Snapdragon® 8 Gen 1 Mobile | 2.73 ms | 0 - 149 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ QCS6490 | 8.326 ms | 0 - 2 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ QCS8275 | 5.175 ms | 0 - 99 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 1.876 ms | 0 - 3 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® SA8775P | 2.26 ms | 0 - 103 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® SA8650P | 2.26 ms | 0 - 103 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® SA8255P | 2.26 ms | 0 - 103 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® QCS8450 | 2.73 ms | 0 - 149 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ IQ-9075 | 2.063 ms | 2 - 4 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ IQ-X7181 | 2.113 ms | 0 - 0 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ Q-6690 | 20.214 ms | 0 - 218 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ Q-7790 | 2.545 ms | 0 - 100 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® Dragonwing™ Q-8750 | 0.996 ms | 0 - 101 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® SA7255P | 5.175 ms | 0 - 99 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Qualcomm® SA8295P | 3.076 ms | 0 - 98 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Snapdragon® 8 Elite Mobile | 0.996 ms | 0 - 101 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Snapdragon® 8 Elite Gen 5 Mobile | 0.826 ms | 0 - 103 MB | NPU
| HRNetPose | QNN_DLC | w8a16 | Snapdragon® 7 Gen 4 Mobile | 2.545 ms | 0 - 100 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Snapdragon® X2 Elite | 0.674 ms | 0 - 0 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Snapdragon® X Elite | 1.255 ms | 0 - 0 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Snapdragon® 8 Gen 3 Mobile | 0.817 ms | 0 - 134 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Snapdragon® 8 Gen 1 Mobile | 1.723 ms | 0 - 134 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ QCS6490 | 5.373 ms | 0 - 2 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ QCS8275 | 2.833 ms | 0 - 89 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 1.13 ms | 0 - 7 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® SA8775P | 1.486 ms | 0 - 92 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® SA8650P | 1.486 ms | 0 - 92 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® SA8255P | 1.486 ms | 0 - 92 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® QCS8450 | 1.723 ms | 0 - 134 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 1.32 ms | 0 - 2 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ IQ-X7181 | 1.255 ms | 0 - 0 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ Q-6690 | 10.282 ms | 0 - 214 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ Q-7790 | 1.514 ms | 0 - 89 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 0.645 ms | 0 - 93 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® SA7255P | 2.833 ms | 0 - 89 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Qualcomm® SA8295P | 1.952 ms | 0 - 88 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Snapdragon® 8 Elite Mobile | 0.645 ms | 0 - 93 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 0.572 ms | 0 - 95 MB | NPU
| HRNetPose | QNN_DLC | w8a8 | Snapdragon® 7 Gen 4 Mobile | 1.514 ms | 0 - 89 MB | NPU
| HRNetPose | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 1.994 ms | 0 - 185 MB | NPU
| HRNetPose | TFLITE | float | Snapdragon® 8 Gen 1 Mobile | 5.03 ms | 0 - 174 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® Dragonwing™ QCS8275 | 14.133 ms | 0 - 112 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 2.735 ms | 0 - 3 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® SA8775P | 4.327 ms | 0 - 114 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® SA8650P | 4.327 ms | 0 - 114 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® SA8255P | 4.327 ms | 0 - 114 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® QCS8450 | 5.03 ms | 0 - 174 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® Dragonwing™ IQ-9075 | 4.088 ms | 0 - 58 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® Dragonwing™ Q-8750 | 1.545 ms | 0 - 112 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® SA7255P | 14.133 ms | 0 - 112 MB | NPU
| HRNetPose | TFLITE | float | Qualcomm® SA8295P | 4.608 ms | 0 - 95 MB | NPU
| HRNetPose | TFLITE | float | Snapdragon® 8 Elite Mobile | 1.545 ms | 0 - 112 MB | NPU
| HRNetPose | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 1.31 ms | 0 - 116 MB | NPU
| HRNetPose | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 0.72 ms | 0 - 140 MB | NPU
| HRNetPose | TFLITE | w8a8 | Snapdragon® 8 Gen 1 Mobile | 1.541 ms | 0 - 143 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS6490 | 4.877 ms | 0 - 30 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS8275 | 2.588 ms | 0 - 87 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 0.952 ms | 0 - 3 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® SA8775P | 1.361 ms | 0 - 89 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® SA8650P | 1.361 ms | 0 - 89 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® SA8255P | 1.361 ms | 0 - 89 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® QCS8450 | 1.541 ms | 0 - 143 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 1.155 ms | 0 - 30 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-6690 | 9.627 ms | 0 - 207 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-7790 | 1.348 ms | 0 - 85 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 0.589 ms | 0 - 89 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® SA7255P | 2.588 ms | 0 - 87 MB | NPU
| HRNetPose | TFLITE | w8a8 | Qualcomm® SA8295P | 1.772 ms | 0 - 85 MB | NPU
| HRNetPose | TFLITE | w8a8 | Snapdragon® 8 Elite Mobile | 0.589 ms | 0 - 89 MB | NPU
| HRNetPose | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 0.516 ms | 0 - 90 MB | NPU
| HRNetPose | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 1.348 ms | 0 - 85 MB | NPU
## License
* The license for the original implementation of HRNetPose can be found
[here](https://github.com/leoxiaobin/deep-high-resolution-net.pytorch/blob/master/LICENSE).
## References
* [Deep High-Resolution Representation Learning for Human Pose Estimation](https://arxiv.org/abs/1902.09212)
* [Source Model Implementation](https://github.com/leoxiaobin/deep-high-resolution-net.pytorch)
## 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).