File size: 13,274 Bytes
7958bb5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9a90f68
7958bb5
 
 
 
 
 
 
 
 
 
 
 
9a90f68
 
 
 
 
 
7958bb5
 
 
 
 
 
9a90f68
7958bb5
 
 
 
 
 
9a90f68
7958bb5
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
---
library_name: pytorch
license: mit
tags:
- real_time
- android
pipeline_tag: keypoint-detection

---

![](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/superpoint/web-assets/model_demo.png)

# SuperPoint: Optimized for Qualcomm Devices

SuperPoint is a self-supervised framework for detecting interest points and computing their descriptors in a single forward pass. It uses a VGG-style encoder shared between a keypoint detector head and a descriptor head, trained via homographic adaptation on synthetic shapes and real images. The model outputs up to 500 keypoints per image with 256-dimensional L2-normalised descriptors, suitable for feature matching, visual localisation, and SLAM.

This is based on the implementation of SuperPoint found [here](https://github.com/rpautrat/SuperPoint).
This repository contains pre-exported model files optimized for Qualcomm® devices. You can use the [Qualcomm® AI Hub Models](https://github.com/qualcomm/ai-hub-models/blob/v0.66.0/src/qai_hub_models/models/superpoint) library to export with custom configurations. More details on model performance across various devices, can be found [here](#performance-summary).

Qualcomm AI Hub Models uses [Qualcomm AI Hub Workbench](https://workbench.aihub.qualcomm.com) to compile, profile, and evaluate this model. [Sign up](https://myaccount.qualcomm.com/signup) 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.50, ONNX Runtime 1.30.0 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/superpoint/releases/v0.66.0/superpoint-onnx-float.zip)
| ONNX | w8a8 | Universal | QAIRT 2.50, ONNX Runtime 1.30.0 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/superpoint/releases/v0.66.0/superpoint-onnx-w8a8.zip)
| QNN_DLC | float | Universal | QAIRT 2.50 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/superpoint/releases/v0.66.0/superpoint-qnn_dlc-float.zip)
| QNN_DLC | w8a8 | Universal | QAIRT 2.50 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/superpoint/releases/v0.66.0/superpoint-qnn_dlc-w8a8.zip)
| TFLITE | float | Universal | QAIRT 2.50 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/superpoint/releases/v0.66.0/superpoint-tflite-float.zip)
| TFLITE | w8a8 | Universal | QAIRT 2.50 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/superpoint/releases/v0.66.0/superpoint-tflite-w8a8.zip)

For more device-specific assets and performance metrics, visit **[SuperPoint on Qualcomm® AI Hub](https://aihub.qualcomm.com/models/superpoint)**.


### Option 2: Export with Custom Configurations

Use the [Qualcomm® AI Hub Models](https://github.com/qualcomm/ai-hub-models/blob/v0.66.0/src/qai_hub_models/models/superpoint) 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 [SuperPoint on GitHub](https://github.com/qualcomm/ai-hub-models/blob/v0.66.0/src/qai_hub_models/models/superpoint) for usage instructions.

## Model Details

**Model Type:** Model_use_case.pose_estimation

**Model Stats:**
- Descriptor dimension: 256
- Input resolution: 480x640
- Model checkpoint: superpoint_v6_from_tf.pth
- Model size (float): 19.6 MB
- Model size (w8a8): 3.22 MB
- Number of parameters: 5.12M
- Output keypoints (max): 500

## Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit
|---|---|---|---|---|---|---
| SuperPoint | ONNX | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 6.878 ms | 28 - 196 MB | NPU
| SuperPoint | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 9.69 ms | 27 - 196 MB | NPU
| SuperPoint | ONNX | float | Snapdragon® X2 Elite | 7.545 ms | 40 - 40 MB | NPU
| SuperPoint | ONNX | float | Snapdragon® X Elite | 17.115 ms | 40 - 40 MB | NPU
| SuperPoint | ONNX | float | Snapdragon® 8 Gen 1 Mobile | 28.558 ms | 19 - 259 MB | NPU
| SuperPoint | ONNX | float | Qualcomm® Dragonwing™ IQ-8275 | 28.595 ms | 7 - 18 MB | NPU
| SuperPoint | ONNX | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 16.91 ms | 23 - 29 MB | NPU
| SuperPoint | ONNX | float | Qualcomm® QCS8450 | 28.558 ms | 19 - 259 MB | NPU
| SuperPoint | ONNX | float | Qualcomm® Dragonwing™ IQ-X7181 | 17.115 ms | 40 - 40 MB | NPU
| SuperPoint | ONNX | float | Qualcomm® Dragonwing™ Q-8750 | 9.69 ms | 27 - 196 MB | NPU
| SuperPoint | ONNX | float | Snapdragon® 8 Elite Extreme Gen 6 Mobile | 5.498 ms | 34 - 202 MB | NPU
| SuperPoint | ONNX | float | Snapdragon® 8 Elite Gen 6 Mobile | 6.594 ms | 33 - 201 MB | NPU
| SuperPoint | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 6.516 ms | 6 - 132 MB | NPU
| SuperPoint | ONNX | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 8.295 ms | 8 - 123 MB | NPU
| SuperPoint | ONNX | w8a8 | Snapdragon® X2 Elite | 6.783 ms | 8 - 8 MB | NPU
| SuperPoint | ONNX | w8a8 | Snapdragon® X Elite | 20.927 ms | 7 - 7 MB | NPU
| SuperPoint | ONNX | w8a8 | Snapdragon® 8 Gen 1 Mobile | 24.54 ms | 8 - 161 MB | NPU
| SuperPoint | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-8275 | 19.575 ms | 7 - 11 MB | NPU
| SuperPoint | ONNX | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 19.988 ms | 7 - 167 MB | NPU
| SuperPoint | ONNX | w8a8 | Qualcomm® QCS8450 | 24.54 ms | 8 - 161 MB | NPU
| SuperPoint | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 20.756 ms | 7 - 10 MB | NPU
| SuperPoint | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-X7181 | 20.927 ms | 7 - 7 MB | NPU
| SuperPoint | ONNX | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 8.295 ms | 8 - 123 MB | NPU
| SuperPoint | ONNX | w8a8 | Snapdragon® 8 Elite Extreme Gen 6 Mobile | 5.39 ms | 8 - 137 MB | NPU
| SuperPoint | ONNX | w8a8 | Snapdragon® 8 Elite Gen 6 Mobile | 10.191 ms | 8 - 119 MB | NPU
| SuperPoint | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 6.767 ms | 4 - 168 MB | NPU
| SuperPoint | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 9.605 ms | 4 - 163 MB | NPU
| SuperPoint | QNN_DLC | float | Snapdragon® X2 Elite | 7.936 ms | 7 - 7 MB | NPU
| SuperPoint | QNN_DLC | float | Snapdragon® X Elite | 16.54 ms | 7 - 7 MB | NPU
| SuperPoint | QNN_DLC | float | Snapdragon® 8 Gen 1 Mobile | 30.848 ms | 4 - 231 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-8275 | 27.41 ms | 7 - 29 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 16.13 ms | 7 - 9 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® SA8775P | 23.662 ms | 0 - 160 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® SA8650P | 23.662 ms | 0 - 160 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® SA8255P | 23.662 ms | 0 - 160 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® QCS8450 | 30.848 ms | 4 - 231 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-9075 | 24.532 ms | 7 - 28 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-X7181 | 16.54 ms | 7 - 7 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® Dragonwing™ Q-8750 | 9.605 ms | 4 - 163 MB | NPU
| SuperPoint | QNN_DLC | float | Qualcomm® SA8295P | 31.192 ms | 0 - 175 MB | NPU
| SuperPoint | QNN_DLC | float | Snapdragon® 8 Elite Extreme Gen 6 Mobile | 6.152 ms | 4 - 168 MB | NPU
| SuperPoint | QNN_DLC | float | Snapdragon® 8 Elite Gen 6 Mobile | 6.594 ms | 7 - 173 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 6.353 ms | 2 - 124 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 7.928 ms | 1 - 114 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Snapdragon® X2 Elite | 6.994 ms | 2 - 2 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Snapdragon® X Elite | 20.752 ms | 2 - 2 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Snapdragon® 8 Gen 1 Mobile | 23.892 ms | 2 - 152 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ IQ-8275 | 18.848 ms | 1 - 9 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 19.597 ms | 2 - 4 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® SA8775P | 19.86 ms | 2 - 105 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® SA8650P | 19.86 ms | 2 - 105 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® SA8255P | 19.86 ms | 2 - 105 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® QCS8450 | 23.892 ms | 2 - 152 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 20.248 ms | 3 - 10 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ IQ-X7181 | 20.752 ms | 2 - 2 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 7.928 ms | 1 - 114 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Qualcomm® SA8295P | 26.262 ms | 2 - 109 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Snapdragon® 8 Elite Extreme Gen 6 Mobile | 5.29 ms | 1 - 127 MB | NPU
| SuperPoint | QNN_DLC | w8a8 | Snapdragon® 8 Elite Gen 6 Mobile | 9.909 ms | 2 - 113 MB | NPU
| SuperPoint | TFLITE | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 6.868 ms | 9 - 178 MB | NPU
| SuperPoint | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 9.311 ms | 10 - 182 MB | NPU
| SuperPoint | TFLITE | float | Snapdragon® 8 Gen 1 Mobile | 30.481 ms | 12 - 247 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® Dragonwing™ IQ-8275 | 28.578 ms | 11 - 36 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 16.746 ms | 12 - 15 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® SA8775P | 24.709 ms | 12 - 176 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® SA8650P | 24.709 ms | 12 - 176 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® SA8255P | 24.709 ms | 12 - 176 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® QCS8450 | 30.481 ms | 12 - 247 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® Dragonwing™ IQ-9075 | 25.707 ms | 0 - 24 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® Dragonwing™ Q-8750 | 9.311 ms | 10 - 182 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® SA7255P | 86.98 ms | 12 - 175 MB | NPU
| SuperPoint | TFLITE | float | Qualcomm® SA8295P | 28.997 ms | 12 - 191 MB | NPU
| SuperPoint | TFLITE | float | Snapdragon® 8 Elite Extreme Gen 6 Mobile | 5.249 ms | 1 - 170 MB | NPU
| SuperPoint | TFLITE | float | Snapdragon® 8 Elite Gen 6 Mobile | 6.5 ms | 10 - 184 MB | NPU
| SuperPoint | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 6.646 ms | 2 - 125 MB | NPU
| SuperPoint | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 8.403 ms | 0 - 113 MB | NPU
| SuperPoint | TFLITE | w8a8 | Snapdragon® 8 Gen 1 Mobile | 24.822 ms | 3 - 154 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS6490 | 580.219 ms | 299 - 686 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® Dragonwing™ IQ-8275 | 19.277 ms | 3 - 13 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 20.207 ms | 3 - 5 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® SA8775P | 20.427 ms | 3 - 105 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® SA8650P | 20.427 ms | 3 - 105 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® SA8255P | 20.427 ms | 3 - 105 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® QCS8450 | 24.822 ms | 3 - 154 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 20.935 ms | 2 - 12 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-6690 | 702.379 ms | 260 - 458 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-7790 | 204.681 ms | 299 - 474 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 8.403 ms | 0 - 113 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® SA7255P | 39.934 ms | 3 - 104 MB | NPU
| SuperPoint | TFLITE | w8a8 | Qualcomm® SA8295P | 27.183 ms | 3 - 108 MB | NPU
| SuperPoint | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 204.681 ms | 299 - 474 MB | NPU
| SuperPoint | TFLITE | w8a8 | Snapdragon® 8 Elite Extreme Gen 6 Mobile | 5.45 ms | 2 - 128 MB | NPU
| SuperPoint | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 6 Mobile | 10.277 ms | 2 - 114 MB | NPU

## License
* The license for the original implementation of SuperPoint can be found
  [here](https://github.com/rpautrat/SuperPoint/blob/master/LICENSE.txt).

## References
* [SuperPoint: Self-Supervised Interest Point Detection and Description](https://arxiv.org/abs/1712.07629)
* [Source Model Implementation](https://github.com/rpautrat/SuperPoint)

## Community
* Join [our AI Hub Slack community](https://aihub.qualcomm.com/community/slack) to collaborate, post questions and learn more about on-device AI.
* For questions or feedback please [reach out to us](mailto:ai-hub-support@qti.qualcomm.com).