Volumetric Mesh Optimization

Kaolin Library integrates research modules for volumetric mesh optimization, including DefTet, DMTet and FlexiCubes. These modules can be used for one-off optimization or become differentiable modules in AI workflows.

For docs related to tetrahedral meshes, see kaolin.ops.mesh and kaolin.metrics.tetmesh, as well as dedicated modules linked below such as kaolin.render.mesh.deftet_sparse_render and kaolin.non_commercial.FlexiCubes.

FlexiCubes

The original publication for this method is: “Flexible Isosurface Extraction for Gradient-Based Mesh Optimization.” Shen, Tianchang, Jacob Munkberg, Jon Hasselgren, Kangxue Yin, Zian Wang, Wenzheng Chen, Zan Gojcic, Sanja Fidler, Nicholas Sharp, and Jun Gao. SIGGRAPH (TOG) 2023.

Kaolin ships kaolin.non_commercial.FlexiCubes module, the official maintained version of the FlexiCubes academic paper.

See Kaolin FlexiCubes Tutorial in the original flexicubes repository, with a walk through video above.

Deep Marching Tetrahedra (DMTet)

../_images/dmtet.jpg

The original publication for this method is: “Deep marching tetrahedra: a hybrid representation for high-resolution 3d shape synthesis.” Shen, Tianchang, Jun Gao, Kangxue Yin, Ming-Yu Liu, and Sanja Fidler. NeurIPS 2021.

Kaolin integrates kaolin.ops.conversions.marching_tetrahedra from this research, and has more general functionality related to this work, such as kaolin.metrics.pointcloud.chamfer_distance.

See Deep Marching Tetrahedra Tutorial examples/tutorial/dmtet_tutorial.ipynb which trains an SDF estimator to reconstruct a tetrahedral mesh from a point cloud.

DefTet

../_images/deftet.jpg

The original publication for this method is: “Learning deformable tetrahedral meshes for 3d reconstruction.” Gao, Jun, Wenzheng Chen, Tommy Xiang, Alec Jacobson, Morgan McGuire, and Sanja Fidler. NeurIPS 2020.

Kaolin provides the DefTet volumetric renderer, developed in this work, as kaolin.render.mesh.deftet_sparse_render, and also the loss function kaolin.metrics.tetmesh.equivolume.