SixDRepNet: Optimized for Qualcomm Devices

6DRepNet predicts head pose (pitch, yaw, roll) from a face image using a RepVGG-B1g2 backbone and a continuous 6D rotation representation, achieving robust and accurate head pose estimation.

This is based on the implementation of SixDRepNet found here. This repository contains pre-exported model files optimized for Qualcomm® devices. You can use the Qualcomm® AI Hub Models library to export with custom configurations. More details on model performance across various devices, can be found here.

Qualcomm AI Hub Models uses Qualcomm AI Hub Workbench to compile, profile, and evaluate this model. Sign up 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.42, ONNX Runtime 1.25.0 Download
QNN_DLC float Universal QAIRT 2.45 Download
TFLITE float Universal QAIRT 2.45 Download

For more device-specific assets and performance metrics, visit SixDRepNet on Qualcomm® AI Hub.

Option 2: Export with Custom Configurations

Use the Qualcomm® AI Hub Models 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 SixDRepNet on GitHub for usage instructions.

Model Details

Model Type: Model_use_case.pose_estimation

Model Stats:

  • Input resolution: 224x224
  • Number of parameters: 15.3M
  • Model size (float): 58.4 MB

Performance Summary

Model Runtime Precision Chipset Inference Time (ms) Peak Memory Range (MB) Primary Compute Unit
face_detector ONNX float Snapdragon® 8 Elite Gen 5 Mobile 1.49 ms 0 - 166 MB NPU
face_detector ONNX float Snapdragon® X2 Elite 1.607 ms 208 - 208 MB NPU
face_detector ONNX float Snapdragon® X Elite 3.644 ms 176 - 176 MB NPU
face_detector ONNX float Snapdragon® 8 Gen 3 Mobile 2.24 ms 0 - 174 MB NPU
face_detector ONNX float Qualcomm® QCS8550 (Proxy) 3.541 ms 0 - 42 MB NPU
face_detector ONNX float Snapdragon® 8 Elite For Galaxy Mobile 1.809 ms 0 - 164 MB NPU
face_detector ONNX float Qualcomm® QCS9075 5.335 ms 5 - 50 MB NPU
face_detector ONNX float Qualcomm® QCS8750 1.809 ms 0 - 164 MB NPU
face_detector ONNX float Qualcomm® QCS7181 3.644 ms 176 - 176 MB NPU
face_detector QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 5.425 ms 5 - 158 MB NPU
face_detector QNN_DLC float Snapdragon® X2 Elite 5.832 ms 5 - 5 MB NPU
face_detector QNN_DLC float Snapdragon® X Elite 16.701 ms 5 - 5 MB NPU
face_detector QNN_DLC float Snapdragon® 8 Gen 3 Mobile 9.303 ms 5 - 172 MB NPU
face_detector QNN_DLC float Qualcomm® QCS8275 28.301 ms 1 - 151 MB NPU
face_detector QNN_DLC float Qualcomm® QCS8550 (Proxy) 15.574 ms 5 - 88 MB NPU
face_detector QNN_DLC float Qualcomm® SA8775P 16.569 ms 1 - 153 MB NPU
face_detector QNN_DLC float Qualcomm® SA8650P 16.569 ms 1 - 153 MB NPU
face_detector QNN_DLC float Qualcomm® SA8255P 16.569 ms 1 - 153 MB NPU
face_detector QNN_DLC float Qualcomm® QCS8450 (Proxy) 24.66 ms 5 - 175 MB NPU
face_detector QNN_DLC float Qualcomm® SA7255P 28.301 ms 1 - 151 MB NPU
face_detector QNN_DLC float Qualcomm® SA8295P 20.599 ms 0 - 150 MB NPU
face_detector QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 6.916 ms 0 - 150 MB NPU
face_detector QNN_DLC float Qualcomm® QCS9075 19.394 ms 5 - 12 MB NPU
face_detector QNN_DLC float Qualcomm® QCS8750 6.916 ms 0 - 150 MB NPU
face_detector QNN_DLC float Qualcomm® QCS7181 16.701 ms 5 - 5 MB NPU
face_detector TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 5.472 ms 1 - 155 MB NPU
face_detector TFLITE float Snapdragon® 8 Gen 3 Mobile 9.279 ms 0 - 166 MB NPU
face_detector TFLITE float Qualcomm® QCS8275 28.329 ms 1 - 150 MB NPU
face_detector TFLITE float Qualcomm® QCS8550 (Proxy) 15.649 ms 1 - 3 MB NPU
face_detector TFLITE float Qualcomm® SA8775P 16.518 ms 1 - 154 MB NPU
face_detector TFLITE float Qualcomm® SA8650P 16.518 ms 1 - 154 MB NPU
face_detector TFLITE float Qualcomm® SA8255P 16.518 ms 1 - 154 MB NPU
face_detector TFLITE float Qualcomm® QCS8450 (Proxy) 24.642 ms 1 - 173 MB NPU
face_detector TFLITE float Qualcomm® SA7255P 28.329 ms 1 - 150 MB NPU
face_detector TFLITE float Qualcomm® SA8295P 20.681 ms 1 - 151 MB NPU
face_detector TFLITE float Snapdragon® 8 Elite For Galaxy Mobile 6.928 ms 0 - 149 MB NPU
face_detector TFLITE float Qualcomm® QCS9075 19.232 ms 0 - 9 MB NPU
face_detector TFLITE float Qualcomm® QCS8750 6.928 ms 0 - 149 MB NPU
pose_estimator ONNX float Snapdragon® 8 Elite Gen 5 Mobile 1.329 ms 1 - 27 MB NPU
pose_estimator ONNX float Snapdragon® X2 Elite 1.295 ms 211 - 211 MB NPU
pose_estimator ONNX float Snapdragon® X Elite 2.491 ms 156 - 156 MB NPU
pose_estimator ONNX float Snapdragon® 8 Gen 3 Mobile 2.062 ms 0 - 41 MB NPU
pose_estimator ONNX float Qualcomm® QCS8550 (Proxy) 2.632 ms 0 - 374 MB NPU
pose_estimator ONNX float Snapdragon® 8 Elite For Galaxy Mobile 1.637 ms 0 - 24 MB NPU
pose_estimator ONNX float Qualcomm® QCS9075 4.56 ms 1 - 46 MB NPU
pose_estimator ONNX float Qualcomm® QCS8750 1.637 ms 0 - 24 MB NPU
pose_estimator ONNX float Qualcomm® QCS7181 2.491 ms 156 - 156 MB NPU
pose_estimator QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 1.42 ms 1 - 29 MB NPU
pose_estimator QNN_DLC float Snapdragon® X2 Elite 1.517 ms 1 - 1 MB NPU
pose_estimator QNN_DLC float Snapdragon® X Elite 2.855 ms 1 - 1 MB NPU
pose_estimator QNN_DLC float Snapdragon® 8 Gen 3 Mobile 2.241 ms 0 - 39 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS8275 17.824 ms 1 - 25 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS8550 (Proxy) 2.774 ms 1 - 2 MB NPU
pose_estimator QNN_DLC float Qualcomm® SA8775P 4.793 ms 0 - 26 MB NPU
pose_estimator QNN_DLC float Qualcomm® SA8650P 4.793 ms 0 - 26 MB NPU
pose_estimator QNN_DLC float Qualcomm® SA8255P 4.793 ms 0 - 26 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS8450 (Proxy) 6.534 ms 0 - 39 MB NPU
pose_estimator QNN_DLC float Qualcomm® SA7255P 17.824 ms 1 - 25 MB NPU
pose_estimator QNN_DLC float Qualcomm® SA8295P 5.402 ms 1 - 22 MB NPU
pose_estimator QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 1.684 ms 1 - 27 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS9075 4.905 ms 3 - 5 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS8750 1.684 ms 1 - 27 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS7181 2.855 ms 1 - 1 MB NPU
pose_estimator TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 1.366 ms 0 - 30 MB NPU
pose_estimator TFLITE float Snapdragon® 8 Gen 3 Mobile 2.249 ms 0 - 44 MB NPU
pose_estimator TFLITE float Qualcomm® QCS8275 17.402 ms 0 - 26 MB NPU
pose_estimator TFLITE float Qualcomm® QCS8550 (Proxy) 2.848 ms 0 - 2 MB NPU
pose_estimator TFLITE float Qualcomm® SA8775P 4.799 ms 0 - 27 MB NPU
pose_estimator TFLITE float Qualcomm® SA8650P 4.799 ms 0 - 27 MB NPU
pose_estimator TFLITE float Qualcomm® SA8255P 4.799 ms 0 - 27 MB NPU
pose_estimator TFLITE float Qualcomm® QCS8450 (Proxy) 6.509 ms 0 - 47 MB NPU
pose_estimator TFLITE float Qualcomm® SA7255P 17.402 ms 0 - 26 MB NPU
pose_estimator TFLITE float Qualcomm® SA8295P 5.346 ms 0 - 27 MB NPU
pose_estimator TFLITE float Snapdragon® 8 Elite For Galaxy Mobile 1.707 ms 0 - 30 MB NPU
pose_estimator TFLITE float Qualcomm® QCS9075 4.743 ms 0 - 78 MB NPU
pose_estimator TFLITE float Qualcomm® QCS8750 1.707 ms 0 - 30 MB NPU

License

  • The license for the original implementation of SixDRepNet can be found here.

References

Community

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Paper for qualcomm/SixDRepNet