Official repository for the CVPR 2024 best paper award candidate paper: SpiderMatch: 3D Shape Matching with Global Optimality and Geometric Consistency by Paul Roetzer and Florian Bernard (University of Bonn). For more information, please visit our our project page.
You need a working c++ compiler and cmake. Note: builds are only tested on unix machines.
1) Create python environment
conda create -n spidermatch python=3.8
conda activate spidermatch
conda install pytorch cudatoolkit -c pytorch # install pytorch
git clone git@github.com:paul0noah/spider-match.git
cd spider-match
pip install -r requirements.txt # install other necessary libraries via pip
2) Install sm-3dcouple (code to create the SpiderMatch integer linear program)
git clone git@github.com:paul0noah/sm-3dcouple.git
cd sm-3dcouple
python setup.py install
cd ..
3) Retrieve a gurobi license from the official webpage
Datasets are available from this link. Put all datasets under ./datasets/
such that the directory looks somehow like this
Two example files for FAUST_r
shapes are included in this repository.
βββ datasets
βββ FAUST_r
βββ SMAL_r
βββ DT4D_r
We thank the original dataset providers for their contributions to the shape analysis community, and that all credits should go to the original authors.
See spidermatch_example.py
for example usage.
There are some issues with the .off
file format. Use e.g. meshlab to convert them to .obj
for example
opengl not found:
sudo apt-get install libglu1-mesa-dev freeglut3-dev mesa-common-dev
if libxrandr
or libxinerama
or other libs not found install them via
sudo apt-get install libxrandr-dev
sudo apt-get install libxinerama-dev
if libboost
not found install all related packages via
sudo apt-get install libboost-all-dev
List of potential libs not found: libxrandr
, libxinerama
, libxcursor
, libxi
, libboost
The implementation of DiffusionNet is based on the official implementation. The framework implementation is adapted from Unsupervised Deep Multi Shape Matching. This repository is adapted from Unsupervised-Learning-of-Robust-Spectral-Shape-Matching.
@inproceedings{roetzer2024spidermatch,
author = {Paul Roetzer and Florian Bernard},
title = { SpiderMatch: 3D Shape Matching with Global Optimality and Geometric Consistency },
booktitle = {IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
year = 2024
}
This repo is licensed under MIT licence.