Joint deep matcher for points and lines 🖼️💥🖼️
Update: we are pleased to announce that the training code has been released within our new training framework, GlueFactory.
This repository contains the official implementation of GlueStick: Robust Image Matching by Sticking Points and Lines Together, accepted at ICCV 2023.
To install the software in Ubuntu 22.04 follow these instructions:
sudo apt-get install build-essential cmake libopencv-dev libopencv-contrib-dev
git clone --recursive https://github.com/cvg/GlueStick.git
cd GlueStick
# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
pip install -e .
Download the weights of the model:
wget https://github.com/cvg/GlueStick/releases/download/v0.1_arxiv/checkpoint_GlueStick_MD.tar -P resources/weights
You can execute the inference with it with:
python -m gluestick.run -img1 resources/img1.jpg -img2 resources/img2.jpg
The training code is available in a separate repository, GlueFactory. Within GlueFactory, you can not only train GlueStick, but also other deep matchers such as LightGlue, use multiple feature extractors, line extractors, robust estimators, as well as run evaluations on multiple benchmarks.
Our code is licenced under MIT licence. However, bear in mind that it uses a SuperPoint backbone that has a non-commercial licence. Therefore, the overall system is non-commercial 😞. We are working on an analogous version based on DISK to avoid this problem.
If you use this code in your project, please consider citing the following paper:
@InProceedings{pautrat_suarez_2023_gluestick,
title={{GlueStick}: Robust Image Matching by Sticking Points and Lines Together},
author={Pautrat, R{\'e}mi* and Su{\'a}rez, Iago* and Yu, Yifan and Pollefeys, Marc and Larsson, Viktor},
booktitle={International Conference on Computer Vision (ICCV)},
year={2023}
}