Skip to content

autonomousvision/volsurfs

Repository files navigation

Volumetric Surfaces (CVPR 2025)

Representing Fuzzy Geometries with Layered Meshes

Stefano Esposito1, Anpei Chen1, Christian Reiser1, Samuel Rota Bulò2, Lorenzo Porzi2, Katja Schwarz2, Christian Richardt2, Michael Zollhöfer2, Peter Kontschieder2, Andreas Geiger1
1University of Tübingen, 2Meta Reality Labs

⚠️ This code release has not been finalized yet. Some components might not work as intended.

Install

# recursive cloning
git clone --recursive https://github.com/autonomousvision/volsurfs

# create environment
conda create -n volsurfs python=3.8
conda activate volsurfs
# install cuda toolkit (optional)
conda install -c "nvidia/label/cuda-11.8.0" cuda-toolkit
# install cmake (optional)
conda install anaconda::cmake 
# install torch
conda install pytorch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 pytorch-cuda=11.8 -c pytorch -c nvidia
# install requirements
pip install -r requirements.txt
# install APEX
cd submodules/apex
pip install . -v --disable-pip-version-check --no-cache-dir --no-build-isolation --config-settings "--build-option=--cpp_ext" --config-settings "--build-option=--cuda_ext" ./
cd ../..
# finally, install volsurfs
pip install -e .

Datasets

For training and experiments we use the the NeRF_Synthetic, DTU and Shelly datasets. Downloading scripts in scripts/download will download the each dataset in data. Path to data can be changed in config/paths_config.cfg.

    data
    ├── shelly
    │   ├── khady
    │   ├── kitten
    │   └── ...
    ├── dtu
    │   ├── dtu_scan24
    │   ├── dtu_scan37
    │   └── ...
    ├── blender
    │   ├── lego
    │   └── ...
    └── ...

Reproduce results

To reproduce paper results (5-Mesh) on Shelly, run the scripts/train_all_shelly.sh script. Results will be in runs. Wandb logging is active by default, you can toggle it in config/train_config.cfg.

License

This project is licensed under the Creative Commons Attribution 4.0 International License (CC BY 4.0). See the LICENSE file for details.

You are free to use, modify, and distribute this code as long as you provide proper attribution to the original author(s).

Citation

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

@inproceedings{Esposito2025VolSurfs,
  author    = {Esposito, Stefano and Chen, Anpei and Reiser, Christian and Rota Bulò, Samuel and Porzi, Lorenzo and Schwarz, Katja and Richardt, Christian and Zollhoefer, Michael and Kontschieder, Peter and Geiger, Andreas},
  title     = {Volumetric Surfaces: Representing Fuzzy Geometries with Layered Meshes},
  booktitle = {IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
  year={2025}
}
@misc{Esposito2025MVD,
  author       = {Esposito, Stefano and Geiger, Andreas},
  title        = {MVDatasets: Standardized DataLoaders for 3D Computer Vision},
  year         = {2025},
  url          = {https://github.com/autonomousvision/mvdatasets},
  note         = {GitHub repository}
}

Acknowledgement

This repo is based on Radu Alexandru Rosu's permuto_sdf. We thank him for his amazing work.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published