Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
SuperGlue: Learning Feature Matching with Graph Neural Networks (CVPR 2020, Oral)
| Date | Stars |
|---|---|
| 2026-07-24 | 4056 |
| 2026-07-25 | 4055 |
| 2026-07-28 | 4055 |
| 2026-07-30 | 4055 |
| 2026-07-31 | 4061 |
| 2026-08-01 | 4062 |
| 2026-08-04 | 4064 |
| 2026-08-05 | 4065 |
| 2026-08-06 | 4066 |
Today
+1 stars today
This week
+11 stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.27%/day
<img src="assets/magicleap.png" width="240"> ### Research @ Magic Leap (CVPR 2020, Oral) # SuperGlue Inference and Evaluation Demo Script ## Introduction SuperGlue is a CVPR 2020 research project done at Magic Leap. The SuperGlue network is a Graph Neural Network combined with an Optimal Matching layer that is trained to perform matching on two sets of sparse image features. This repo includes PyTorch code and pretrained weights for running the SuperGlue matching network on top of [SuperPoint](https://arxiv.org/abs/1712.07629) keypoints and descriptors. Given a pair of images, you can use this repo to extract matching features across the image pair. <p align="center"> <img src="assets/teaser.png" width="500"> </p> SuperGlue operates as a "middle-end," performing context aggregation, matching, and filtering in a single end-to-end architecture. For more details, please see: * Full paper PDF: [SuperGlue: Learning Feature Matching with Graph Neural Networks](https://arxiv.org/abs/1911.11763). * Authors: *Paul-Edouard Sarlin, Daniel DeTone, Tomasz Malisiewicz, Andrew Rabinovich* * Website: [psarlin.com/superglue](https://psarlin.com/superglue) for videos, slides, recent updates, and more visualizations. * `hloc`: a new toolbox for visual localization and SfM with SuperGlue, available at [cvg/Hierarchical-Localization](https://github.com/cvg/Hierarchical-Localization/). Winner of 3 CVPR 2020 competitions on localization and image matching! We provide two pre-trained weights files: an indoor model trained on ScanNet data, and an outdoor model trained on MegaDepth data. Both models are inside the [weights directory](./models/weights). By default, the demo will run the **indoor** model. ## Dependencies * Python 3 >= 3.5 * PyTorch >= 1.1 * OpenCV >= 3.4 (4.1.2.30 recommended for best GUI keyboard interaction, see this [note](#additional-notes)) * Matplotlib >= 3.1 * NumPy >= 1.18 Simply run the following command: `pip3 install numpy opencv-python torch matplotlib` ## Contents There are two main top-level scripts in this repo: 1. `demo_superglue.py` : runs a live demo on a webcam, IP camera, image directory or movie file 2. `match_pairs.py`: reads image pairs from files and dumps matches to disk (also runs evaluation if ground truth relative poses are provided) ## Live Matching Demo Script (`demo_superglue.py`) This demo runs SuperPoint + SuperGlue feature matching on an anchor image and live image. You can update the anchor image by pressing the `n` key. The demo can read image streams from a USB or IP camera, a directory containing images, or a video file. You can pass all of these inputs using the `--input` flag. ### Run the demo on a live webcam Run the demo on the default USB webcam (ID #0), running on a CUDA GPU if one is found: ```sh ./demo_superglue.py ``` Keyboard control: * `n`: select the current frame as the anchor * `e`/`r`: increase/decrease the keypoint confidence threshold * `d`/`f`: increase/decrease the match filtering threshold * `k`: toggle the visualization of keypoints * `q`: quit Run the demo on 320x240 images running on the CPU: ```sh ./demo_superglue.py --resize 320 240 --force_cpu ``` The `--resize` flag can be used to resize the input image in three ways: 1. `--resize` `width` `height` : will resize to exact `width` x `height` dimensions 2. `--resize` `max_dimension` : will resize largest input image dimension to `max_dimension` 3. `--resize` `-1` : will not resize (i.e. use original image dimensions) The default will resize images to `640x480`. ### Run the demo on a directory of images The `--input` flag also accepts a path to a directory. We provide a directory of sample images from a sequence. To run the demo on the directory of images in `freiburg_sequence/` on a headless server (will not display to the screen) and write the output visualization images to `dump_demo_sequence/`: ```sh ./demo_superglue.py --input assets/freiburg_sequence/ --output_dir dump_demo_sequence --resize
Excerpt of 19,116 characters
Read on GitHub5
4
Paul-Edouard Sarlin · Switzerland
3
skydes
2
1
John Lambert
1
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:39ca9f4c4beabb40, topic:deep-learning
matched fp:39ca9f4c4beabb40, topic:pose-estimation