Skip to content

gaoalexander/vector-heat-net

Repository files navigation

An Intrinsic Vector Heat Network (ICML 2024)

Alexander Gao, Maurice Chu, Mubbasir Kapadia, Ming C. Lin, Hsueh-Ti Derek Liu

Acknowledgement: This is a research codebase partially based on the original DiffusionNet and DeltaConv implementations. We thank the authors for their works and open source code, which we have been able to build our own work upon.

Setup

PyTorch training code will run on CUDA backend if it is available, otherwise will revert to CPU. MPS backend on MacOS is not available, as sparse tensor operations are not officially supported.

Setup python environment

Create a new conda environment and install python dependencies:

conda create -n vectorheatnet python=3.9
conda activate vectorheatnet
pip install -r requirements.txt

Install C++ Dependencies (only required for Quad Meshing)

Install LibIGL and LibQEx, which are used to produce a quadrilateral mesh from an estimated vector field (cross field).

Run

Train

To get started, train a Vector Heat Network on provided example data:

python experiments/quad_meshing/train.py --dataset_path experiments/quad_meshing/data/example_quadwild

Model checkpoints and test output are saved in the experiments/quad_meshing/output directory.

Inference

python experiments/quad_meshing/inference.py --pretrain_path <path/to/model/checkpoint.pth> --dataset_path experiments/quad_meshing/data/example_quadwild

This will output the results as a JSON file output.json.

Quadrilateral mesh extraction

See the cpp_mesh_extraction module for additional information on extracting a quadrilateral mesh from the predicted cross field.

Data

Creating a custom dataset for quadrilateral meshing

python experiments/quad_meshing/dataset/preprocess_custom_quad_dataset.py --source_quad_mesh_dir experiments/quad_meshing/data/example_custom_dataset/quad --output_dir experiments/quad_meshing/data/example_custom_dataset/preprocessed/train

Visualize results

Citation


@inproceedings{gao2024intrinsic,
    title       = {An Intrinsic Vector Heat Network},
    author      = {Gao, Alexander and Chu, Maurice and Kapadia, Mubbasir and Lin, Ming and Liu, Hsueh-Ti Derek},
    booktitle   = {Forty-first International Conference on Machine Learning},
    year        = {2024}
}

About

Code Repository for the ICML 2024 publication, "An Intrinsic Vector Heat Network."

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors