Facial-Attribute-Detection: Optimized for Qualcomm Devices
Detects attributes (eye closeness, mask presence, eyeglasses presence, sunglasses presence) that apply to a given face. This model's architecture was developed by Qualcomm. The model was trained by Qualcomm on a proprietary dataset of faces, but can be used on any image.
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.24.1 | Download |
| ONNX | w8a8 | Universal | QAIRT 2.42, ONNX Runtime 1.24.1 | Download |
| QNN_DLC | float | Universal | QAIRT 2.43 | Download |
| QNN_DLC | w8a8 | Universal | QAIRT 2.43 | Download |
| TFLITE | float | Universal | QAIRT 2.43, TFLite 2.17.0 | Download |
| TFLITE | w8a8 | Universal | QAIRT 2.43, TFLite 2.17.0 | Download |
For more device-specific assets and performance metrics, visit Facial-Attribute-Detection 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 Facial-Attribute-Detection on GitHub for usage instructions.
Model Details
Model Type: Model_use_case.object_detection
Model Stats:
- Model checkpoint: multitask_FR_state_dict.pt
- Input resolution: 128x128
- Number of parameters: 12.1M
- Model size (float): 46.3 MB
- Model size (w8a8): 12.3 MB
Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit |
|---|---|---|---|---|---|---|
| Facial-Attribute-Detection | ONNX | float | Snapdragon® X Elite | 0.988 ms | 22 - 22 MB | NPU |
| Facial-Attribute-Detection | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 0.645 ms | 0 - 90 MB | NPU |
| Facial-Attribute-Detection | ONNX | float | Qualcomm® QCS8550 (Proxy) | 0.86 ms | 0 - 3 MB | NPU |
| Facial-Attribute-Detection | ONNX | float | Qualcomm® QCS9075 | 1.234 ms | 0 - 3 MB | NPU |
| Facial-Attribute-Detection | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 0.51 ms | 0 - 66 MB | NPU |
| Facial-Attribute-Detection | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 0.431 ms | 0 - 66 MB | NPU |
| Facial-Attribute-Detection | ONNX | float | Snapdragon® X2 Elite | 0.415 ms | 22 - 22 MB | NPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Snapdragon® X Elite | 0.532 ms | 11 - 11 MB | NPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Snapdragon® 8 Gen 3 Mobile | 0.295 ms | 0 - 84 MB | NPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Qualcomm® QCS6490 | 35.378 ms | 20 - 26 MB | CPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Qualcomm® QCS8550 (Proxy) | 0.4 ms | 0 - 15 MB | NPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Qualcomm® QCS9075 | 0.511 ms | 0 - 3 MB | NPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Qualcomm® QCM6690 | 17.154 ms | 18 - 27 MB | CPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 0.249 ms | 0 - 62 MB | NPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Snapdragon® 7 Gen 4 Mobile | 13.251 ms | 20 - 30 MB | CPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 0.217 ms | 0 - 60 MB | NPU |
| Facial-Attribute-Detection | ONNX | w8a8 | Snapdragon® X2 Elite | 0.195 ms | 11 - 11 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Snapdragon® X Elite | 0.979 ms | 0 - 0 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 0.636 ms | 0 - 81 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Qualcomm® QCS8275 (Proxy) | 4.254 ms | 0 - 54 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Qualcomm® QCS8550 (Proxy) | 0.846 ms | 0 - 105 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Qualcomm® SA8775P | 5.813 ms | 0 - 54 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Qualcomm® QCS9075 | 1.23 ms | 0 - 2 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Qualcomm® QCS8450 (Proxy) | 1.335 ms | 0 - 77 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Qualcomm® SA7255P | 4.254 ms | 0 - 54 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Qualcomm® SA8295P | 1.565 ms | 0 - 48 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 0.498 ms | 0 - 55 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 0.421 ms | 0 - 58 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | float | Snapdragon® X2 Elite | 0.56 ms | 0 - 0 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Snapdragon® X Elite | 0.525 ms | 0 - 0 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Snapdragon® 8 Gen 3 Mobile | 0.289 ms | 0 - 63 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® QCS6490 | 1.303 ms | 2 - 4 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® QCS8275 (Proxy) | 1.085 ms | 0 - 47 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® QCS8550 (Proxy) | 0.383 ms | 0 - 2 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® SA8775P | 0.582 ms | 0 - 50 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® QCS9075 | 0.477 ms | 0 - 2 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® QCM6690 | 2.877 ms | 0 - 48 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® QCS8450 (Proxy) | 0.623 ms | 0 - 64 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® SA7255P | 1.085 ms | 0 - 47 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Qualcomm® SA8295P | 0.815 ms | 0 - 45 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 0.234 ms | 0 - 50 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Snapdragon® 7 Gen 4 Mobile | 0.489 ms | 0 - 46 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 0.213 ms | 0 - 49 MB | NPU |
| Facial-Attribute-Detection | QNN_DLC | w8a8 | Snapdragon® X2 Elite | 0.319 ms | 0 - 0 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 0.622 ms | 0 - 103 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Qualcomm® QCS8275 (Proxy) | 4.226 ms | 0 - 72 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Qualcomm® QCS8550 (Proxy) | 0.82 ms | 0 - 6 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Qualcomm® SA8775P | 1.446 ms | 0 - 73 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Qualcomm® QCS9075 | 1.197 ms | 0 - 24 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Qualcomm® QCS8450 (Proxy) | 1.324 ms | 0 - 95 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Qualcomm® SA7255P | 4.226 ms | 0 - 72 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Qualcomm® SA8295P | 1.551 ms | 0 - 63 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 0.489 ms | 0 - 65 MB | NPU |
| Facial-Attribute-Detection | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 0.406 ms | 0 - 75 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 0.279 ms | 0 - 64 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® QCS6490 | 1.201 ms | 0 - 13 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® QCS8275 (Proxy) | 1.089 ms | 0 - 47 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® QCS8550 (Proxy) | 0.381 ms | 0 - 2 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® SA8775P | 2.287 ms | 0 - 47 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® QCS9075 | 0.478 ms | 0 - 13 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® QCM6690 | 2.917 ms | 0 - 43 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® QCS8450 (Proxy) | 0.615 ms | 0 - 67 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® SA7255P | 1.089 ms | 0 - 47 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Qualcomm® SA8295P | 0.826 ms | 0 - 43 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 0.244 ms | 0 - 41 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 0.497 ms | 0 - 43 MB | NPU |
| Facial-Attribute-Detection | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 0.206 ms | 0 - 50 MB | NPU |
License
- The license for the original implementation of Facial-Attribute-Detection can be found here.
Community
- Join our AI Hub Slack community to collaborate, post questions and learn more about on-device AI.
- For questions or feedback please reach out to us.
