Skip to content

Commit

Permalink
SIFT+ALIKED updates (cvg#26)
Browse files Browse the repository at this point in the history
* fix links

* add sift/aliked eval configs

* add SIFT/ALIKED results on megadepth

* update sift config

* add SIFT with 4K keypoints results

* cleanup SIFT (see LightGlue)

* fix compatibility with LightGlue

* tiny visualization fix

* fix sift kornia

* Update sift configs
  • Loading branch information
Phil26AT authored Oct 19, 2023
1 parent 22d1d19 commit 5597afb
Show file tree
Hide file tree
Showing 10 changed files with 264 additions and 211 deletions.
11 changes: 7 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,8 @@ Here are the results as Area Under the Curve (AUC) of the homography error at 1

| Methods | DLT | [OpenCV](../gluefactory/robust_estimators/homography/opencv.py) | [PoseLib](../gluefactory/robust_estimators/homography/poselib.py) |
| ------------------------------------------------------------ | ------------------ | ------------------ | ------------------ |
| [SuperPoint + SuperGlue](../gluefactory/configs/superpoint+superglue.yaml) | 32.1 / 65.0 / 75.7 | 32.9 / 55.7 / 68.0 | 37.0 / 68.2 / 78.7 |
| [SuperPoint + LightGlue](../gluefactory/configs/superpoint+lightglue.yaml) | 35.1 / 67.2 / 77.6 | 34.2 / 57.9 / 69.9 | 37.1 / 67.4 / 77.8 |
| [SuperPoint + SuperGlue](../gluefactory/configs/superpoint+superglue-official.yaml) | 32.1 / 65.0 / 75.7 | 32.9 / 55.7 / 68.0 | 37.0 / 68.2 / 78.7 |
| [SuperPoint + LightGlue](../gluefactory/configs/superpoint+lightglue-official.yaml) | 35.1 / 67.2 / 77.6 | 34.2 / 57.9 / 69.9 | 37.1 / 67.4 / 77.8 |


</details>
Expand Down Expand Up @@ -159,8 +159,11 @@ Here are the results as Area Under the Curve (AUC) of the pose error at 5/10/20

| Methods | [pycolmap](../gluefactory/robust_estimators/relative_pose/pycolmap.py) | [OpenCV](../gluefactory/robust_estimators/relative_pose/opencv.py) | [PoseLib](../gluefactory/robust_estimators/relative_pose/poselib.py) |
| ------------------------------------------------------------ | ------------------ | ------------------ | ------------------ |
| [SuperPoint + SuperGlue](../gluefactory/configs/superpoint+superglue.yaml) | 54.4 / 70.4 / 82.4 | 48.7 / 65.6 / 79.0 | 64.8 / 77.9 / 87.0 |
| [SuperPoint + LightGlue](../gluefactory/configs/superpoint+lightglue.yaml) | 56.7 / 72.4 / 83.7 | 51.0 / 68.1 / 80.7 | 66.8 / 79.3 / 87.9 |
| [SuperPoint + SuperGlue](../gluefactory/configs/superpoint+superglue-official.yaml) | 54.4 / 70.4 / 82.4 | 48.7 / 65.6 / 79.0 | 64.8 / 77.9 / 87.0 |
| [SuperPoint + LightGlue](../gluefactory/configs/superpoint+lightglue-official.yaml) | 56.7 / 72.4 / 83.7 | 51.0 / 68.1 / 80.7 | 66.8 / 79.3 / 87.9 |
| [SIFT (2K) + LightGlue](../gluefactory/configs/sift+lightglue-official.yaml) | ? / ? / ? | 43.5 / 61.5 / 75.9 | 60.4 / 74.3 / 84.5 |
| [SIFT (4K) + LightGlue](../gluefactory/configs/sift+lightglue-official.yaml) | ? / ? / ? | 49.9 / 67.3 / 80.3 | 65.9 / 78.6 / 87.4 |
| [ALIKED + LightGlue](../gluefactory/configs/aliked+lightglue-official.yaml) | ? / ? / ? | 51.5 / 68.1 / 80.4 | 66.3 / 78.7 / 87.5 |
| [SuperPoint + GlueStick](../gluefactory/configs/superpoint+lsd+gluestick.yaml) | 53.2 / 69.8 / 81.9 | 46.3 / 64.2 / 78.1 | 64.4 / 77.5 / 86.5 |

</details>
Expand Down
28 changes: 28 additions & 0 deletions gluefactory/configs/aliked+lightglue-official.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
model:
name: two_view_pipeline
extractor:
name: extractors.aliked
max_num_keypoints: 2048
detection_threshold: 0.0
matcher:
name: matchers.lightglue_pretrained
features: aliked
depth_confidence: -1
width_confidence: -1
filter_threshold: 0.1
benchmarks:
megadepth1500:
data:
preprocessing:
side: long
resize: 1600
eval:
estimator: opencv
ransac_th: 0.5
hpatches:
eval:
estimator: opencv
ransac_th: 0.5
model:
extractor:
max_num_keypoints: 1024 # overwrite config above
28 changes: 28 additions & 0 deletions gluefactory/configs/sift+lightglue-official.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
model:
name: two_view_pipeline
extractor:
name: extractors.sift
backend: pycolmap_cuda
max_num_keypoints: 4096
matcher:
name: matchers.lightglue_pretrained
features: sift
depth_confidence: -1
width_confidence: -1
filter_threshold: 0.1
benchmarks:
megadepth1500:
data:
preprocessing:
side: long
resize: 1600
eval:
estimator: opencv
ransac_th: 0.5
hpatches:
eval:
estimator: opencv
ransac_th: 0.5
model:
extractor:
max_num_keypoints: 1024 # overwrite config above
7 changes: 5 additions & 2 deletions gluefactory/configs/sift+lightglue_homography.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ model:
name: two_view_pipeline
extractor:
name: extractors.sift
detector: pycolmap_cuda
backend: pycolmap_cuda
max_num_keypoints: 1024
force_num_keypoints: True
detection_threshold: 0.0001
nms_radius: 3
trainable: False
ground_truth:
name: matchers.homography_matcher
Expand Down Expand Up @@ -46,3 +46,6 @@ benchmarks:
eval:
estimator: opencv
ransac_th: 0.5
model:
extractor:
nms_radius: 0
8 changes: 6 additions & 2 deletions gluefactory/configs/sift+lightglue_megadepth.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ model:
name: two_view_pipeline
extractor:
name: extractors.sift
detector: pycolmap_cuda
backend: pycolmap_cuda
max_num_keypoints: 2048
force_num_keypoints: True
detection_threshold: 0.0001
nms_radius: 3
trainable: False
matcher:
name: matchers.lightglue
Expand Down Expand Up @@ -62,6 +62,9 @@ benchmarks:
preprocessing:
side: long
resize: 1600
model:
extractor:
nms_radius: 0
eval:
estimator: opencv
ransac_th: 0.5
Expand All @@ -72,3 +75,4 @@ benchmarks:
model:
extractor:
max_num_keypoints: 1024
nms_radius: 0
Loading

0 comments on commit 5597afb

Please sign in to comment.