Home

Awesome

QC-DGM

This is the official PyTorch implementation and models for our CVPR 2021 paper: Deep Graph Matching under Quadratic Constraint.

It also contains the configuration files to reproduce the results of qc-DGM_1 reported in the paper on Pascal VOC Keypoint and Willow Object Class dataset.

Get started

  1. pytorch (GPU version) >= 1.1
  2. ninja-build: apt-get install ninja-build
  3. python packages: pip install tensorboardX scipy easydict pyyaml
  4. Download dataset:
    1. Pascal VOC Keypoint:
    • Download and tar VOC2011 keypoints, and the path looks like: ./data/PascalVOC/VOC2011.
    • Download and tar Berkeley annotation, and the path looks like: ./data/PascalVOC/annotations.
    • The train/test split of Pascal VOC Keypoint is available in: ./data/PascalVOC/voc2011_pairs.npz.
    1. Willow Object Class dataset:

Training

  1. Run training and evaluation on Pascal VOC Keypoint:

    python train_eval.py --cfg ./experiments/QCDGM_voc.yaml

    or you could replace the default ./experiments/QCDGM_voc.yaml with path to your own configuration file.

  2. Run training and evaluation on Willow Object Class dataset:

    python train_eval.py --cfg ./experiments/QCDGM_willow.yaml

    or you could replace the default ./experiments/QCDGM_willow.yaml with path to your own configuration file.

Evaluation

  1. Run evaluation on Pascal VOC Keypoint on epoch k:

    python eval.py --cfg ./experiments/QCDGM_voc.yaml --epoch k

    or you could replace the default ./experiments/QCDGM_voc.yaml with path to your own configuration file.

  2. Run evaluation on Willow Object Class dataset on epoch k:

    python eval.py --cfg ./experiments/QCDGM_willow.yaml --epoch k

    or you could replace the default ./experiments/QCDGM_voc.yaml with path to your own configuration file.

Results and model zoo

We report the performance on Pascal VOC Keypoint and Willow Object Class datasets.

Pascal VOC Keypoint

methodDownloadaerobikebirdboatbottlebuscarcatchaircowtabledoghorsembikepersonplantsheepsofatraintvmean
qc-DGMparameter48.461.665.361.382.479.674.372.041.868.865.066.170.969.648.292.169.066.790.491.869.3

For the convenience of evaluation, our trained parameter file is also provided by BaiduYun download link with extracting code vocc. Download the parameter file with path to ./output/QCDGM_voc/params/ and run evaluation on Pascal VOC Keypoint.

Willow Object Class

methodDownloadfacem-bikecarduckwbottlemean
qc-DGMparameter100.095.093.893.897.696.0

For the convenience of evaluation, our trained parameter file is also provided by BaiduYun download link with extracting code will. Download the parameter file with path to ./output/QCDGM_willow/params/ and run evaluation on Willow Object Class dataset.

Citation

@InProceedings{Gao_2021_CVPR,
author = {Gao, Quankai and Wang, Fudong and Xue, Nan and Yu, Jin-Gang and Xia, Gui-Song},
title = {Deep Graph Matching under Quadratic Constraint},
booktitle = {Proc. IEEE Conf. Computer Vision and Pattern Recognition (CVPR)},
year = {2021}
}