Skip to content

toshas/remesh_isotropic_planar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Planar Isotropic Remesher

This code implements almost isotropic remeshing of 3D meshes with planarity constraints. It fully retains the input geometry and refines flat areas specifically. All output mesh edges will not exceed a predetermined length, and mesh vertices will be evenly spaced in flat regions, preserving the original shape.

teaser

Features

  • Near-Isotropic Output: Mesh edges are subdivided up to a defined size, with input geometry constraints given precedence.
  • Single-Pass Algorithm: Contrary to iterative pure isotropic methods, ours delivers superior performance.
  • Geometry Integrity: Input geometry is retained without alteration; reference our Gallery for examples.
  • Needle Face Elimination: Check the teaser image, especially near the stairs, for evident reduction.
  • High-Resolution Capability: Our method excels where pure isotropic remeshers lag.
  • Robust Handling: Efficiently processes non-manifold and imperfect input meshes.
  • CAD Compatibility: Especially tailored for engineered and other CAD models.

Usage

Building

Ensure that the dependencies are installed:

  • CMake build system and a C++17 toolchain
  • CGAL 3D processing library
  • Eigen matrix computation library
  • Boost C++ extensions library

Then build as follows:

cmake -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j

Running

The code is compatible with the Object File Format (*.off) file format.
To test:

./build/remesh_isotropic_planar data/jacuzzi.off out.off --resolution 128 

Here, resolution indicates the ratio of the model's diameter to the output mesh edge length. For the given test command, the edge in the output will be specifically 1/128th of the input model's dimensions. Opting for higher resolutions will yield finer meshes with increased faces and vertices.

Gallery

The first row presents a sample input model alongside its wireframe. We compare two techniques: MeshLab and our method, demonstrated at resolutions 32 and 128, respectively. For MeshLab, settings of the Isotropic Explicit Remeshing filter included 10 iterations, adaptive remeshing, a crease angle of 0.01, among standard options. The animation clearly highlights our method's superior consistency and absence of artifacts.

License and Citation

Copyright (c) 2023, Anton Obukhov.

The code is provided under GPL-3.0-or-later, refer to LICENSE for complete terms.

Please support our research by citing our paper:

@inproceedings{wang2023breathing,
    title={Breathing New Life into 3D Assets with Generative Repainting},
    author={Wang, Tianfu and Kanakis, Menelaos and Schindler, Konrad and Van Gool, Luc and Obukhov, Anton},
    booktitle={Proceedings of the British Machine Vision Conference (BMVC)},
    year={2023},
    publisher={BMVA Press}
}

About

Almost isotropic remeshing

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published