EdgeTAM: Optimized for Qualcomm Devices
EdgeTAM is a lightweight and efficient version of SAM 2, optimized for on-device tracking and segmenting any object in videos and low memory usage by using a novel 2D Spatial Perceiver and RepViT backbone.
This is based on the implementation of EdgeTAM 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.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 EdgeTAM 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 EdgeTAM on GitHub for usage instructions.
Model Details
Model Type: Model_use_case.semantic_segmentation
Model Stats:
- Model checkpoint: edgetam.pt
- Input resolution (Encoder): 1024x1024
- Number of parameters (EdgeTAMEncoder): 8.3M
- Model size (EdgeTAMEncoder) (float): 33 MB
- Number of parameters (EdgeTAMDecoder): 6.22M
- Model size (EdgeTAMDecoder) (float): 23.7 MB
Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit |
|---|---|---|---|---|---|---|
| EdgeTAMDecoder | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 3.146 ms | 17 - 244 MB | NPU |
| EdgeTAMDecoder | ONNX | float | Snapdragon® X2 Elite | 3.261 ms | 15 - 15 MB | NPU |
| EdgeTAMDecoder | ONNX | float | Snapdragon® X Elite | 6.897 ms | 16 - 16 MB | NPU |
| EdgeTAMDecoder | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 4.722 ms | 16 - 339 MB | NPU |
| EdgeTAMDecoder | ONNX | float | Qualcomm® QCS8550 (Proxy) | 6.796 ms | 16 - 33 MB | NPU |
| EdgeTAMDecoder | ONNX | float | Qualcomm® QCS9075 | 8.433 ms | 16 - 19 MB | NPU |
| EdgeTAMDecoder | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 3.48 ms | 1 - 235 MB | NPU |
| EdgeTAMDecoder | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 5.281 ms | 4 - 271 MB | NPU |
| EdgeTAMDecoder | ONNX | w8a8 | Snapdragon® X2 Elite | 5.432 ms | 4 - 4 MB | NPU |
| EdgeTAMDecoder | ONNX | w8a8 | Snapdragon® X Elite | 12.458 ms | 4 - 4 MB | NPU |
| EdgeTAMDecoder | ONNX | w8a8 | Snapdragon® 8 Gen 3 Mobile | 9.182 ms | 4 - 276 MB | NPU |
| EdgeTAMDecoder | ONNX | w8a8 | Qualcomm® QCS6490 | 134.191 ms | 42 - 58 MB | CPU |
| EdgeTAMDecoder | ONNX | w8a8 | Qualcomm® QCS8550 (Proxy) | 11.995 ms | 2 - 9 MB | NPU |
| EdgeTAMDecoder | ONNX | w8a8 | Qualcomm® QCS9075 | 14.059 ms | 4 - 7 MB | NPU |
| EdgeTAMDecoder | ONNX | w8a8 | Qualcomm® QCM6690 | 58.359 ms | 44 - 66 MB | CPU |
| EdgeTAMDecoder | ONNX | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 6.745 ms | 2 - 242 MB | NPU |
| EdgeTAMDecoder | ONNX | w8a8 | Snapdragon® 7 Gen 4 Mobile | 50.634 ms | 49 - 66 MB | CPU |
| EdgeTAMDecoder | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 2.533 ms | 4 - 202 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Snapdragon® X2 Elite | 2.967 ms | 16 - 16 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Snapdragon® X Elite | 5.443 ms | 16 - 16 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 3.615 ms | 0 - 230 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Qualcomm® QCS8275 (Proxy) | 12.412 ms | 16 - 281 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Qualcomm® QCS8550 (Proxy) | 5.296 ms | 16 - 18 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Qualcomm® SA8775P | 6.495 ms | 16 - 218 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Qualcomm® QCS9075 | 6.87 ms | 16 - 34 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Qualcomm® QCS8450 (Proxy) | 8.921 ms | 4 - 226 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Qualcomm® SA7255P | 12.412 ms | 16 - 281 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Qualcomm® SA8295P | 8.052 ms | 0 - 216 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 2.894 ms | 4 - 214 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 0.893 ms | 1 - 105 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Snapdragon® X2 Elite | 1.319 ms | 4 - 4 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Snapdragon® X Elite | 2.228 ms | 4 - 4 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Snapdragon® 8 Gen 3 Mobile | 1.306 ms | 0 - 104 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Qualcomm® QCS8275 (Proxy) | 3.92 ms | 3 - 82 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Qualcomm® QCS8550 (Proxy) | 1.916 ms | 4 - 6 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Qualcomm® SA8775P | 2.561 ms | 4 - 85 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Qualcomm® QCS9075 | 2.473 ms | 4 - 10 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Qualcomm® QCM6690 | 9.897 ms | 4 - 265 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Qualcomm® QCS8450 (Proxy) | 2.691 ms | 2 - 109 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Qualcomm® SA7255P | 3.92 ms | 3 - 82 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Qualcomm® SA8295P | 2.944 ms | 4 - 81 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 1.03 ms | 1 - 79 MB | NPU |
| EdgeTAMDecoder | QNN_DLC | w8a8 | Snapdragon® 7 Gen 4 Mobile | 2.611 ms | 4 - 207 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 2.519 ms | 0 - 205 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 3.748 ms | 0 - 238 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Qualcomm® QCS8275 (Proxy) | 12.784 ms | 1 - 210 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Qualcomm® QCS8550 (Proxy) | 5.294 ms | 0 - 3 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Qualcomm® SA8775P | 6.761 ms | 0 - 211 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Qualcomm® QCS9075 | 6.992 ms | 0 - 30 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Qualcomm® QCS8450 (Proxy) | 8.899 ms | 0 - 227 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Qualcomm® SA7255P | 12.784 ms | 1 - 210 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Qualcomm® SA8295P | 7.985 ms | 0 - 221 MB | NPU |
| EdgeTAMDecoder | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 2.915 ms | 0 - 207 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 5.425 ms | 0 - 239 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 9.231 ms | 0 - 261 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Qualcomm® QCS8275 (Proxy) | 20.911 ms | 0 - 211 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Qualcomm® QCS8550 (Proxy) | 12.263 ms | 0 - 22 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Qualcomm® SA8775P | 13.814 ms | 0 - 213 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Qualcomm® QCS9075 | 13.457 ms | 0 - 14 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Qualcomm® QCM6690 | 46.705 ms | 12 - 205 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Qualcomm® QCS8450 (Proxy) | 15.608 ms | 0 - 242 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Qualcomm® SA7255P | 20.911 ms | 0 - 211 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Qualcomm® SA8295P | 14.208 ms | 0 - 224 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 6.821 ms | 0 - 235 MB | NPU |
| EdgeTAMDecoder | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 16.295 ms | 14 - 210 MB | NPU |
| EdgeTAMEncoder | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 7.771 ms | 45 - 329 MB | NPU |
| EdgeTAMEncoder | ONNX | float | Snapdragon® X2 Elite | 8.878 ms | 32 - 32 MB | NPU |
| EdgeTAMEncoder | ONNX | float | Snapdragon® X Elite | 20.383 ms | 34 - 34 MB | NPU |
| EdgeTAMEncoder | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 15.218 ms | 12 - 358 MB | NPU |
| EdgeTAMEncoder | ONNX | float | Qualcomm® QCS8550 (Proxy) | 20.607 ms | 36 - 93 MB | NPU |
| EdgeTAMEncoder | ONNX | float | Qualcomm® QCS9075 | 29.499 ms | 12 - 27 MB | NPU |
| EdgeTAMEncoder | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 9.881 ms | 33 - 296 MB | NPU |
| EdgeTAMEncoder | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 3.289 ms | 2 - 275 MB | NPU |
| EdgeTAMEncoder | ONNX | w8a8 | Snapdragon® X2 Elite | 3.533 ms | 18 - 18 MB | NPU |
| EdgeTAMEncoder | ONNX | w8a8 | Snapdragon® X Elite | 8.804 ms | 16 - 16 MB | NPU |
| EdgeTAMEncoder | ONNX | w8a8 | Snapdragon® 8 Gen 3 Mobile | 5.489 ms | 12 - 322 MB | NPU |
| EdgeTAMEncoder | ONNX | w8a8 | Qualcomm® QCS6490 | 487.279 ms | 203 - 212 MB | CPU |
| EdgeTAMEncoder | ONNX | w8a8 | Qualcomm® QCS8550 (Proxy) | 8.219 ms | 9 - 18 MB | NPU |
| EdgeTAMEncoder | ONNX | w8a8 | Qualcomm® QCS9075 | 9.434 ms | 12 - 15 MB | NPU |
| EdgeTAMEncoder | ONNX | w8a8 | Qualcomm® QCM6690 | 323.162 ms | 207 - 218 MB | CPU |
| EdgeTAMEncoder | ONNX | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 4.469 ms | 8 - 270 MB | NPU |
| EdgeTAMEncoder | ONNX | w8a8 | Snapdragon® 7 Gen 4 Mobile | 306.549 ms | 178 - 190 MB | CPU |
| EdgeTAMEncoder | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 8.642 ms | 0 - 296 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Snapdragon® X2 Elite | 10.4 ms | 12 - 12 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Snapdragon® X Elite | 24.239 ms | 12 - 12 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 17.053 ms | 11 - 359 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Qualcomm® QCS8275 (Proxy) | 69.726 ms | 0 - 261 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Qualcomm® QCS8550 (Proxy) | 23.936 ms | 12 - 158 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Qualcomm® SA8775P | 28.141 ms | 0 - 261 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Qualcomm® QCS9075 | 34.517 ms | 12 - 42 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Qualcomm® QCS8450 (Proxy) | 99.174 ms | 0 - 452 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Qualcomm® SA7255P | 69.726 ms | 0 - 261 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Qualcomm® SA8295P | 57.499 ms | 0 - 358 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 11.819 ms | 12 - 288 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 4.247 ms | 3 - 270 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Snapdragon® X2 Elite | 4.838 ms | 3 - 3 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Snapdragon® X Elite | 12.094 ms | 3 - 3 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Snapdragon® 8 Gen 3 Mobile | 7.561 ms | 3 - 315 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Qualcomm® QCS8275 (Proxy) | 20.518 ms | 3 - 265 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Qualcomm® QCS8550 (Proxy) | 11.418 ms | 3 - 5 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Qualcomm® SA8775P | 12.078 ms | 3 - 266 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Qualcomm® QCS9075 | 14.285 ms | 0 - 9 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Qualcomm® QCM6690 | 97.835 ms | 3 - 269 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Qualcomm® QCS8450 (Proxy) | 1945.854 ms | 3 - 207 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Qualcomm® SA7255P | 20.518 ms | 3 - 265 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Qualcomm® SA8295P | 2119.775 ms | 3 - 161 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 5.386 ms | 3 - 258 MB | NPU |
| EdgeTAMEncoder | QNN_DLC | w8a8 | Snapdragon® 7 Gen 4 Mobile | 12.44 ms | 3 - 301 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 8.386 ms | 16 - 318 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 16.246 ms | 15 - 371 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Qualcomm® QCS8275 (Proxy) | 68.196 ms | 16 - 283 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Qualcomm® QCS8550 (Proxy) | 23.202 ms | 16 - 18 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Qualcomm® SA8775P | 118.254 ms | 28 - 293 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Qualcomm® QCS9075 | 32.781 ms | 0 - 42 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Qualcomm® QCS8450 (Proxy) | 98.805 ms | 16 - 460 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Qualcomm® SA7255P | 68.196 ms | 16 - 283 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Qualcomm® SA8295P | 54.273 ms | 16 - 366 MB | NPU |
| EdgeTAMEncoder | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 11.429 ms | 15 - 295 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 2.658 ms | 4 - 261 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 4.789 ms | 2 - 306 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Qualcomm® QCS8275 (Proxy) | 13.771 ms | 4 - 258 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Qualcomm® QCS8550 (Proxy) | 7.057 ms | 4 - 7 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Qualcomm® SA8775P | 7.901 ms | 21 - 277 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Qualcomm® QCS9075 | 7.658 ms | 4 - 19 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Qualcomm® QCM6690 | 51.244 ms | 3 - 237 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Qualcomm® QCS8450 (Proxy) | 2257.222 ms | 3 - 332 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Qualcomm® SA7255P | 13.771 ms | 4 - 258 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Qualcomm® SA8295P | 2193.872 ms | 0 - 276 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 3.003 ms | 3 - 249 MB | NPU |
| EdgeTAMEncoder | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 8.18 ms | 3 - 262 MB | NPU |
License
- The license for the original implementation of EdgeTAM can be found here.
References
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.
