File size: 1,933 Bytes
a80d6bb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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
# GlueStick
[![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/cvg/GlueStick/blob/main/gluestick_matching_demo.ipynb) [![arXiv](https://img.shields.io/badge/arXiv-2304.02008-b31b1b.svg?style=flat)](https://arxiv.org/abs/2304.02008) [![Project Page](https://badgen.net/badge/color/project/green?icon=awesome&label)](https://iago-suarez.com/gluestick)

Joint deep matcher for points and lines πŸ–ΌοΈπŸ’₯πŸ–ΌοΈ

![Visualization of point and line matches](resources/demo_seq1.gif)

This repository contains the official implementation of 
[GlueStick: Robust Image Matching by Sticking Points and Lines Together](https://arxiv.org/abs/2304.02008).

## Install πŸ› οΈ

To install the software in Ubuntu 22.04 follow these instructions:
```bash
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 .
```

## Running GlueStick πŸƒ
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
```

## Training πŸ‹οΈ
We want to provide you with high-quality and flexible code for training. Stay tuned, we will release it soon!

## Citation πŸ“
If you use this code in your project, please consider citing the following paper:
```bibtex
@article{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},
    journal={ArXiv},
    year={2023}
}
```