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.45, 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® X2 Elite 1.914 ms 208 - 208 MB NPU
face_detector ONNX float Snapdragon® X Elite 3.7 ms 177 - 177 MB NPU
face_detector ONNX float Snapdragon® 8 Gen 3 Mobile 2.188 ms 2 - 156 MB NPU
face_detector ONNX float Snapdragon® 8 Gen 1 Mobile 6.832 ms 1 - 165 MB NPU
face_detector ONNX float Qualcomm® QCS8550 (Proxy) 3.519 ms 0 - 15 MB NPU
face_detector ONNX float Qualcomm® QCS8450 6.832 ms 1 - 165 MB NPU
face_detector ONNX float Snapdragon® 8 Elite Mobile 1.722 ms 0 - 166 MB NPU
face_detector ONNX float Snapdragon® 8 Elite Gen 5 Mobile 1.817 ms 0 - 159 MB NPU
face_detector ONNX float Qualcomm® QCS9075 5.43 ms 5 - 50 MB NPU
face_detector ONNX float Qualcomm® QCS8750 1.722 ms 0 - 166 MB NPU
face_detector ONNX float Qualcomm® QCS7181 3.7 ms 177 - 177 MB NPU
face_detector QNN_DLC float Snapdragon® X2 Elite 5.851 ms 5 - 5 MB NPU
face_detector QNN_DLC float Snapdragon® X Elite 16.58 ms 5 - 5 MB NPU
face_detector QNN_DLC float Snapdragon® 8 Gen 3 Mobile 9.334 ms 5 - 177 MB NPU
face_detector QNN_DLC float Snapdragon® 8 Gen 1 Mobile 24.527 ms 3 - 174 MB NPU
face_detector QNN_DLC float Qualcomm® QCS8275 28.241 ms 0 - 150 MB NPU
face_detector QNN_DLC float Qualcomm® QCS8550 (Proxy) 15.615 ms 5 - 6 MB NPU
face_detector QNN_DLC float Qualcomm® QCS8450 24.527 ms 3 - 174 MB NPU
face_detector QNN_DLC float Snapdragon® 8 Elite Mobile 6.918 ms 0 - 154 MB NPU
face_detector QNN_DLC float Qualcomm® SA8295P 20.645 ms 0 - 150 MB NPU
face_detector QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 5.455 ms 5 - 158 MB NPU
face_detector QNN_DLC float Qualcomm® SA7255P 28.241 ms 0 - 150 MB NPU
face_detector QNN_DLC float Qualcomm® QCS9075 19.595 ms 5 - 12 MB NPU
face_detector QNN_DLC float Qualcomm® QCS8750 6.918 ms 0 - 154 MB NPU
face_detector QNN_DLC float Qualcomm® QCS7181 16.58 ms 5 - 5 MB NPU
face_detector TFLITE float Snapdragon® 8 Gen 3 Mobile 9.267 ms 1 - 168 MB NPU
face_detector TFLITE float Snapdragon® 8 Gen 1 Mobile 24.64 ms 0 - 172 MB NPU
face_detector TFLITE float Qualcomm® QCS8275 28.279 ms 1 - 150 MB NPU
face_detector TFLITE float Qualcomm® QCS8550 (Proxy) 15.655 ms 1 - 3 MB NPU
face_detector TFLITE float Qualcomm® SA8775P 7.778 ms 1 - 32 MB GPU
face_detector TFLITE float Qualcomm® SA8650P 7.778 ms 1 - 32 MB GPU
face_detector TFLITE float Qualcomm® SA8255P 7.778 ms 1 - 32 MB GPU
face_detector TFLITE float Qualcomm® QCS8450 24.64 ms 0 - 172 MB NPU
face_detector TFLITE float Snapdragon® 8 Elite Mobile 6.919 ms 1 - 150 MB NPU
face_detector TFLITE float Qualcomm® SA8295P 20.674 ms 1 - 151 MB NPU
face_detector TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 5.488 ms 1 - 154 MB NPU
face_detector TFLITE float Qualcomm® SA7255P 28.279 ms 1 - 150 MB NPU
face_detector TFLITE float Qualcomm® QCS9075 19.262 ms 0 - 9 MB NPU
face_detector TFLITE float Qualcomm® QCS8750 6.919 ms 1 - 150 MB NPU
pose_estimator ONNX float Snapdragon® X2 Elite 1.299 ms 212 - 212 MB NPU
pose_estimator ONNX float Snapdragon® X Elite 2.619 ms 148 - 148 MB NPU
pose_estimator ONNX float Snapdragon® 8 Gen 3 Mobile 2.078 ms 1 - 28 MB NPU
pose_estimator ONNX float Snapdragon® 8 Gen 1 Mobile 5.545 ms 1 - 27 MB NPU
pose_estimator ONNX float Qualcomm® QCS8550 (Proxy) 2.72 ms 0 - 82 MB NPU
pose_estimator ONNX float Qualcomm® QCS8450 5.545 ms 1 - 27 MB NPU
pose_estimator ONNX float Snapdragon® 8 Elite Mobile 1.64 ms 0 - 24 MB NPU
pose_estimator ONNX float Snapdragon® 8 Elite Gen 5 Mobile 1.331 ms 1 - 24 MB NPU
pose_estimator ONNX float Qualcomm® QCS9075 4.548 ms 1 - 46 MB NPU
pose_estimator ONNX float Qualcomm® QCS8750 1.64 ms 0 - 24 MB NPU
pose_estimator ONNX float Qualcomm® QCS7181 2.619 ms 148 - 148 MB NPU
pose_estimator QNN_DLC float Snapdragon® X2 Elite 1.479 ms 1 - 1 MB NPU
pose_estimator QNN_DLC float Snapdragon® X Elite 2.867 ms 1 - 1 MB NPU
pose_estimator QNN_DLC float Snapdragon® 8 Gen 3 Mobile 2.236 ms 0 - 41 MB NPU
pose_estimator QNN_DLC float Snapdragon® 8 Gen 1 Mobile 6.514 ms 0 - 40 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS8275 17.821 ms 1 - 25 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS8550 (Proxy) 2.776 ms 1 - 3 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS8450 6.514 ms 0 - 40 MB NPU
pose_estimator QNN_DLC float Snapdragon® 8 Elite Mobile 1.736 ms 1 - 27 MB NPU
pose_estimator QNN_DLC float Qualcomm® SA8295P 5.39 ms 0 - 26 MB NPU
pose_estimator QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 1.424 ms 1 - 29 MB NPU
pose_estimator QNN_DLC float Qualcomm® SA7255P 17.821 ms 1 - 25 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS9075 4.902 ms 3 - 5 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS8750 1.736 ms 1 - 27 MB NPU
pose_estimator QNN_DLC float Qualcomm® QCS7181 2.867 ms 1 - 1 MB NPU
pose_estimator TFLITE float Snapdragon® 8 Gen 3 Mobile 2.249 ms 0 - 44 MB NPU
pose_estimator TFLITE float Snapdragon® 8 Gen 1 Mobile 6.49 ms 0 - 46 MB NPU
pose_estimator TFLITE float Qualcomm® QCS8275 17.388 ms 0 - 26 MB NPU
pose_estimator TFLITE float Qualcomm® QCS8550 (Proxy) 2.852 ms 0 - 2 MB NPU
pose_estimator TFLITE float Qualcomm® SA8775P 41.489 ms 0 - 17 MB GPU
pose_estimator TFLITE float Qualcomm® SA8650P 41.489 ms 0 - 17 MB GPU
pose_estimator TFLITE float Qualcomm® SA8255P 41.489 ms 0 - 17 MB GPU
pose_estimator TFLITE float Qualcomm® QCS8450 6.49 ms 0 - 46 MB NPU
pose_estimator TFLITE float Snapdragon® 8 Elite Mobile 1.704 ms 0 - 30 MB NPU
pose_estimator TFLITE float Qualcomm® SA8295P 5.356 ms 0 - 29 MB NPU
pose_estimator TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 1.378 ms 0 - 29 MB NPU
pose_estimator TFLITE float Qualcomm® SA7255P 17.388 ms 0 - 26 MB NPU
pose_estimator TFLITE float Qualcomm® QCS9075 4.739 ms 0 - 78 MB NPU
pose_estimator TFLITE float Qualcomm® QCS8750 1.704 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