patr-schm / surface-maps-via-adaptive-triangulations

Implementation of the paper "Surface Maps via Adaptive Triangulations" (Eurographics 2023)
https://www.graphics.rwth-aachen.de/publication/03345/
MIT License
44 stars 3 forks source link
geometry-processing

Teaser

Surface Maps via Adaptive Triangulations

This is a prototype implementation of the paper Surface Maps via Adaptive Triangulations (Eurographics 2023) by Patrick Schmidt, Dörte Pieper, and Leif Kobbelt.

The method computes bijective maps, represented via common triangulations, between two or more genus-0 surfaces. Such common triangulations approximate the input surfaces but stay in bijective correspondence to them (via spherical embeddings). A discrete-continuous algorithm optimizes the geometric embeddings as well as the connectivity of these triangulations.

The repository contains:

Build Instructions

This project has been developed and tested on Linux (Debian & Ubuntu) and requires a C++17 compiler. Install the dependencies via:

sudo apt install cmake libgl1-mesa-dev mesa-utils libglfw3 libglfw3-dev libxinerama-dev libxcursor-dev libxi-dev g++

Clone and build the project using the following commands:

git clone --recursive https://github.com/patr-schm/surface-maps-via-adaptive-triangulations.git
cd surface-maps-via-adaptive-triangulations
mkdir build
cd build
cmake ..
make -j4

Run Instructions

The build directory should now contain several executable files. Run a file by typing e.g.:

Coarse to fine optmization

Each executable will produce a number of output meshes and screenshots in the build/output directory. Alternatively, it is possible to open an interactive viewer by setting open_viewer = true in any of the files located in apps/adaptive_triangulations.

Viewer navigation:

Press Escape to close the window. Some demos will open several windows in succession.

Authors

Citation

@article{schmidt2023surface,
  title={Surface Maps via Adaptive Triangulations},
  author={Schmidt, Patrick and Pieper, D\"orte and Kobbelt, Leif},
  year={2023},
  journal={Computer Graphics Forum},
  volume={42},
  number={2},
}

License

Our source code is released under the MIT License.