Home

Awesome

PWC<br> PWC<br> PWC

Convolutional Hough Matching Networks

Update 09/14/21: Our paper has been extended for journal submission [link]. The code will be updated soon.

This is the implementation of the paper "Convolutional Hough Matching Network" by J. Min and M. Cho. Implemented on Python 3.7 and PyTorch 1.3.1.

For more information, check out project [website] and the paper on [arXiv]

Web Demo

Integrated into Huggingface Spaces 🤗 using Gradio. Try out the Web Demo: Hugging Face Spaces

Overall architecture:

Requirements

Conda environment settings:

conda create -n chm python=3.7
conda activate chm

conda install pytorch=1.3.1 torchvision cudatoolkit=10.1 -c pytorch
conda install -c anaconda requests
conda install -c conda-forge tensorflow
pip install tensorboardX
conda install -c anaconda pandas
conda install -c anaconda "pillow<7"

Training

The code provides three types of CHM kernel: position-sensitive isotropic (psi), isotropic (iso), vanilla Nd (full).

python train.py --ktype {psi, iso, full} 
                --benchmark {spair, pfpascal}

Testing

Trained models are available on [Google drive].

python test.py --ktype {psi, iso, full} 
               --benchmark {spair, pfpascal, pfwillow} 
               --load 'path_to_trained_model'

For example, to reproduce our results in Table 1, refer following scripts.

python test.py --ktype psi --benchmark spair --load 'path_to_trained_model/spr_psi.pt'
python test.py --ktype psi --benchmark spair --load 'path_to_trained_model/pas_psi.pt'
python test.py --ktype psi --benchmark pfpascal --load 'path_to_trained_model/pas_psi.pt'
python test.py --ktype psi --benchmark pfwillow --load 'path_to_trained_model/pas_psi.pt'

BibTeX

If you use this code for your research, please consider citing:

@InProceedings{min2021chm, 
    author    = {Min, Juhong and Cho, Minsu},
    title     = {Convolutional Hough Matching Networks},
    booktitle = {Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
    month     = {June},
    year      = {2021},
    pages     = {2940-2950}
}