Upload README.md with huggingface_hub
Browse files
README.md
CHANGED
|
@@ -15,7 +15,7 @@ tags:
|
|
| 15 |
|
| 16 |
Designed for sub-millisecond processing, this model predicts bounding boxes and pose skeletons (left eye, right eye, nose tip, mouth, left eye tragion, and right eye tragion) of faces in an image.
|
| 17 |
|
| 18 |
-
This model is an implementation of MediaPipe-Face-Detection found [here](
|
| 19 |
This repository provides scripts to run MediaPipe-Face-Detection on Qualcomm® devices.
|
| 20 |
More details on model performance across various devices, can be found
|
| 21 |
[here](https://aihub.qualcomm.com/models/mediapipe_face).
|
|
@@ -32,17 +32,53 @@ More details on model performance across various devices, can be found
|
|
| 32 |
- Model size (MediaPipeFaceLandmarkDetector): 2.34 MB
|
| 33 |
- Number of output classes: 6
|
| 34 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 35 |
|
| 36 |
|
| 37 |
|
| 38 |
-
| Device | Chipset | Target Runtime | Inference Time (ms) | Peak Memory Range (MB) | Precision | Primary Compute Unit | Target Model
|
| 39 |
-
| ---|---|---|---|---|---|---|---|
|
| 40 |
-
| Samsung Galaxy S23 Ultra (Android 13) | Snapdragon® 8 Gen 2 | TFLite | 0.552 ms | 0 - 1 MB | FP16 | NPU | [MediaPipeFaceDetector.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite)
|
| 41 |
-
| Samsung Galaxy S23 Ultra (Android 13) | Snapdragon® 8 Gen 2 | TFLite | 0.193 ms | 0 - 4 MB | FP16 | NPU | [MediaPipeFaceLandmarkDetector.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite)
|
| 42 |
-
| Samsung Galaxy S23 Ultra (Android 13) | Snapdragon® 8 Gen 2 | QNN Model Library | 0.622 ms | 0 - 5 MB | FP16 | NPU | [MediaPipeFaceDetector.so](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.so)
|
| 43 |
-
| Samsung Galaxy S23 Ultra (Android 13) | Snapdragon® 8 Gen 2 | QNN Model Library | 0.277 ms | 0 - 8 MB | FP16 | NPU | [MediaPipeFaceLandmarkDetector.so](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.so)
|
| 44 |
-
|
| 45 |
-
|
| 46 |
|
| 47 |
## Installation
|
| 48 |
|
|
@@ -97,23 +133,25 @@ device. This script does the following:
|
|
| 97 |
```bash
|
| 98 |
python -m qai_hub_models.models.mediapipe_face.export
|
| 99 |
```
|
| 100 |
-
|
| 101 |
```
|
| 102 |
-
|
| 103 |
-
|
| 104 |
-
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
|
| 116 |
-
|
|
|
|
|
|
|
|
|
|
| 117 |
```
|
| 118 |
|
| 119 |
|
|
@@ -241,15 +279,19 @@ provides instructions on how to use the `.so` shared library in an Android appl
|
|
| 241 |
Get more details on MediaPipe-Face-Detection's performance across various devices [here](https://aihub.qualcomm.com/models/mediapipe_face).
|
| 242 |
Explore all available models on [Qualcomm® AI Hub](https://aihub.qualcomm.com/)
|
| 243 |
|
|
|
|
| 244 |
## License
|
| 245 |
-
|
| 246 |
-
|
| 247 |
-
|
|
|
|
| 248 |
|
| 249 |
## References
|
| 250 |
* [BlazeFace: Sub-millisecond Neural Face Detection on Mobile GPUs](https://arxiv.org/abs/1907.05047)
|
| 251 |
* [Source Model Implementation](https://github.com/zmurez/MediaPipePyTorch/)
|
| 252 |
|
|
|
|
|
|
|
| 253 |
## Community
|
| 254 |
* Join [our AI Hub Slack community](https://aihub.qualcomm.com/community/slack) to collaborate, post questions and learn more about on-device AI.
|
| 255 |
* For questions or feedback please [reach out to us](mailto:ai-hub-support@qti.qualcomm.com).
|
|
|
|
| 15 |
|
| 16 |
Designed for sub-millisecond processing, this model predicts bounding boxes and pose skeletons (left eye, right eye, nose tip, mouth, left eye tragion, and right eye tragion) of faces in an image.
|
| 17 |
|
| 18 |
+
This model is an implementation of MediaPipe-Face-Detection found [here]({source_repo}).
|
| 19 |
This repository provides scripts to run MediaPipe-Face-Detection on Qualcomm® devices.
|
| 20 |
More details on model performance across various devices, can be found
|
| 21 |
[here](https://aihub.qualcomm.com/models/mediapipe_face).
|
|
|
|
| 32 |
- Model size (MediaPipeFaceLandmarkDetector): 2.34 MB
|
| 33 |
- Number of output classes: 6
|
| 34 |
|
| 35 |
+
| Model | Device | Chipset | Target Runtime | Inference Time (ms) | Peak Memory Range (MB) | Precision | Primary Compute Unit | Target Model
|
| 36 |
+
|---|---|---|---|---|---|---|---|---|
|
| 37 |
+
| MediaPipeFaceDetector | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 | TFLITE | 0.549 ms | 0 - 1 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite) |
|
| 38 |
+
| MediaPipeFaceDetector | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 | QNN | 0.626 ms | 1 - 6 MB | FP16 | NPU | [MediaPipe-Face-Detection.so](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.so) |
|
| 39 |
+
| MediaPipeFaceDetector | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 | ONNX | 1.003 ms | 0 - 74 MB | FP16 | NPU | [MediaPipe-Face-Detection.onnx](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.onnx) |
|
| 40 |
+
| MediaPipeFaceDetector | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 | TFLITE | 0.45 ms | 0 - 34 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite) |
|
| 41 |
+
| MediaPipeFaceDetector | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 | QNN | 0.502 ms | 1 - 15 MB | FP16 | NPU | [MediaPipe-Face-Detection.so](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.so) |
|
| 42 |
+
| MediaPipeFaceDetector | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 | ONNX | 0.81 ms | 0 - 39 MB | FP16 | NPU | [MediaPipe-Face-Detection.onnx](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.onnx) |
|
| 43 |
+
| MediaPipeFaceDetector | QCS8550 (Proxy) | QCS8550 Proxy | TFLITE | 0.546 ms | 0 - 72 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite) |
|
| 44 |
+
| MediaPipeFaceDetector | QCS8550 (Proxy) | QCS8550 Proxy | QNN | 0.599 ms | 1 - 2 MB | FP16 | NPU | Use Export Script |
|
| 45 |
+
| MediaPipeFaceDetector | SA8255 (Proxy) | SA8255P Proxy | TFLITE | 0.549 ms | 0 - 72 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite) |
|
| 46 |
+
| MediaPipeFaceDetector | SA8255 (Proxy) | SA8255P Proxy | QNN | 0.602 ms | 1 - 2 MB | FP16 | NPU | Use Export Script |
|
| 47 |
+
| MediaPipeFaceDetector | SA8775 (Proxy) | SA8775P Proxy | TFLITE | 0.549 ms | 0 - 1 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite) |
|
| 48 |
+
| MediaPipeFaceDetector | SA8775 (Proxy) | SA8775P Proxy | QNN | 0.612 ms | 1 - 2 MB | FP16 | NPU | Use Export Script |
|
| 49 |
+
| MediaPipeFaceDetector | SA8650 (Proxy) | SA8650P Proxy | TFLITE | 0.547 ms | 0 - 1 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite) |
|
| 50 |
+
| MediaPipeFaceDetector | SA8650 (Proxy) | SA8650P Proxy | QNN | 0.613 ms | 1 - 2 MB | FP16 | NPU | Use Export Script |
|
| 51 |
+
| MediaPipeFaceDetector | QCS8450 (Proxy) | QCS8450 Proxy | TFLITE | 0.763 ms | 0 - 31 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite) |
|
| 52 |
+
| MediaPipeFaceDetector | QCS8450 (Proxy) | QCS8450 Proxy | QNN | 0.83 ms | 1 - 17 MB | FP16 | NPU | Use Export Script |
|
| 53 |
+
| MediaPipeFaceDetector | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite | TFLITE | 0.41 ms | 0 - 24 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.tflite) |
|
| 54 |
+
| MediaPipeFaceDetector | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite | QNN | 0.38 ms | 1 - 13 MB | FP16 | NPU | Use Export Script |
|
| 55 |
+
| MediaPipeFaceDetector | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite | ONNX | 0.752 ms | 0 - 28 MB | FP16 | NPU | [MediaPipe-Face-Detection.onnx](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.onnx) |
|
| 56 |
+
| MediaPipeFaceDetector | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN | 0.804 ms | 1 - 1 MB | FP16 | NPU | Use Export Script |
|
| 57 |
+
| MediaPipeFaceDetector | Snapdragon X Elite CRD | Snapdragon® X Elite | ONNX | 1.04 ms | 2 - 2 MB | FP16 | NPU | [MediaPipe-Face-Detection.onnx](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceDetector.onnx) |
|
| 58 |
+
| MediaPipeFaceLandmarkDetector | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 | TFLITE | 0.19 ms | 0 - 1 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite) |
|
| 59 |
+
| MediaPipeFaceLandmarkDetector | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 | QNN | 0.279 ms | 0 - 7 MB | FP16 | NPU | [MediaPipe-Face-Detection.so](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.so) |
|
| 60 |
+
| MediaPipeFaceLandmarkDetector | Samsung Galaxy S23 | Snapdragon® 8 Gen 2 | ONNX | 0.506 ms | 0 - 2 MB | FP16 | NPU | [MediaPipe-Face-Detection.onnx](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.onnx) |
|
| 61 |
+
| MediaPipeFaceLandmarkDetector | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 | TFLITE | 0.144 ms | 0 - 29 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite) |
|
| 62 |
+
| MediaPipeFaceLandmarkDetector | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 | QNN | 0.213 ms | 0 - 12 MB | FP16 | NPU | [MediaPipe-Face-Detection.so](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.so) |
|
| 63 |
+
| MediaPipeFaceLandmarkDetector | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 | ONNX | 0.402 ms | 0 - 32 MB | FP16 | NPU | [MediaPipe-Face-Detection.onnx](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.onnx) |
|
| 64 |
+
| MediaPipeFaceLandmarkDetector | QCS8550 (Proxy) | QCS8550 Proxy | TFLITE | 0.19 ms | 0 - 1 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite) |
|
| 65 |
+
| MediaPipeFaceLandmarkDetector | QCS8550 (Proxy) | QCS8550 Proxy | QNN | 0.274 ms | 0 - 2 MB | FP16 | NPU | Use Export Script |
|
| 66 |
+
| MediaPipeFaceLandmarkDetector | SA8255 (Proxy) | SA8255P Proxy | TFLITE | 0.193 ms | 0 - 17 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite) |
|
| 67 |
+
| MediaPipeFaceLandmarkDetector | SA8255 (Proxy) | SA8255P Proxy | QNN | 0.275 ms | 0 - 2 MB | FP16 | NPU | Use Export Script |
|
| 68 |
+
| MediaPipeFaceLandmarkDetector | SA8775 (Proxy) | SA8775P Proxy | TFLITE | 0.194 ms | 0 - 1 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite) |
|
| 69 |
+
| MediaPipeFaceLandmarkDetector | SA8775 (Proxy) | SA8775P Proxy | QNN | 0.277 ms | 0 - 2 MB | FP16 | NPU | Use Export Script |
|
| 70 |
+
| MediaPipeFaceLandmarkDetector | SA8650 (Proxy) | SA8650P Proxy | TFLITE | 0.194 ms | 0 - 74 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite) |
|
| 71 |
+
| MediaPipeFaceLandmarkDetector | SA8650 (Proxy) | SA8650P Proxy | QNN | 0.273 ms | 0 - 2 MB | FP16 | NPU | Use Export Script |
|
| 72 |
+
| MediaPipeFaceLandmarkDetector | QCS8450 (Proxy) | QCS8450 Proxy | TFLITE | 0.283 ms | 0 - 29 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite) |
|
| 73 |
+
| MediaPipeFaceLandmarkDetector | QCS8450 (Proxy) | QCS8450 Proxy | QNN | 0.382 ms | 0 - 14 MB | FP16 | NPU | Use Export Script |
|
| 74 |
+
| MediaPipeFaceLandmarkDetector | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite | TFLITE | 0.122 ms | 0 - 18 MB | FP16 | NPU | [MediaPipe-Face-Detection.tflite](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.tflite) |
|
| 75 |
+
| MediaPipeFaceLandmarkDetector | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite | QNN | 0.207 ms | 0 - 10 MB | FP16 | NPU | Use Export Script |
|
| 76 |
+
| MediaPipeFaceLandmarkDetector | Snapdragon 8 Elite QRD | Snapdragon® 8 Elite | ONNX | 0.409 ms | 0 - 18 MB | FP16 | NPU | [MediaPipe-Face-Detection.onnx](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.onnx) |
|
| 77 |
+
| MediaPipeFaceLandmarkDetector | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN | 0.383 ms | 0 - 0 MB | FP16 | NPU | Use Export Script |
|
| 78 |
+
| MediaPipeFaceLandmarkDetector | Snapdragon X Elite CRD | Snapdragon® X Elite | ONNX | 0.512 ms | 2 - 2 MB | FP16 | NPU | [MediaPipe-Face-Detection.onnx](https://huggingface.co/qualcomm/MediaPipe-Face-Detection/blob/main/MediaPipeFaceLandmarkDetector.onnx) |
|
| 79 |
|
| 80 |
|
| 81 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 82 |
|
| 83 |
## Installation
|
| 84 |
|
|
|
|
| 133 |
```bash
|
| 134 |
python -m qai_hub_models.models.mediapipe_face.export
|
| 135 |
```
|
|
|
|
| 136 |
```
|
| 137 |
+
Profiling Results
|
| 138 |
+
------------------------------------------------------------
|
| 139 |
+
MediaPipeFaceDetector
|
| 140 |
+
Device : Samsung Galaxy S23 (13)
|
| 141 |
+
Runtime : TFLITE
|
| 142 |
+
Estimated inference time (ms) : 0.5
|
| 143 |
+
Estimated peak memory usage (MB): [0, 1]
|
| 144 |
+
Total # Ops : 111
|
| 145 |
+
Compute Unit(s) : NPU (111 ops)
|
| 146 |
+
|
| 147 |
+
------------------------------------------------------------
|
| 148 |
+
MediaPipeFaceLandmarkDetector
|
| 149 |
+
Device : Samsung Galaxy S23 (13)
|
| 150 |
+
Runtime : TFLITE
|
| 151 |
+
Estimated inference time (ms) : 0.2
|
| 152 |
+
Estimated peak memory usage (MB): [0, 1]
|
| 153 |
+
Total # Ops : 100
|
| 154 |
+
Compute Unit(s) : NPU (100 ops)
|
| 155 |
```
|
| 156 |
|
| 157 |
|
|
|
|
| 279 |
Get more details on MediaPipe-Face-Detection's performance across various devices [here](https://aihub.qualcomm.com/models/mediapipe_face).
|
| 280 |
Explore all available models on [Qualcomm® AI Hub](https://aihub.qualcomm.com/)
|
| 281 |
|
| 282 |
+
|
| 283 |
## License
|
| 284 |
+
* The license for the original implementation of MediaPipe-Face-Detection can be found [here](https://github.com/zmurez/MediaPipePyTorch/blob/master/LICENSE).
|
| 285 |
+
* The license for the compiled assets for on-device deployment can be found [here](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/Qualcomm+AI+Hub+Proprietary+License.pdf)
|
| 286 |
+
|
| 287 |
+
|
| 288 |
|
| 289 |
## References
|
| 290 |
* [BlazeFace: Sub-millisecond Neural Face Detection on Mobile GPUs](https://arxiv.org/abs/1907.05047)
|
| 291 |
* [Source Model Implementation](https://github.com/zmurez/MediaPipePyTorch/)
|
| 292 |
|
| 293 |
+
|
| 294 |
+
|
| 295 |
## Community
|
| 296 |
* Join [our AI Hub Slack community](https://aihub.qualcomm.com/community/slack) to collaborate, post questions and learn more about on-device AI.
|
| 297 |
* For questions or feedback please [reach out to us](mailto:ai-hub-support@qti.qualcomm.com).
|