Mean Curvature Skeletons (i.e. curve-skeleton extraction via mean curvature flow)
C++ QMake C
Switch branches/tags
Nothing to show
Clone or download

Mean Curvature Skeletons

(Originaly exported from

The source & compiled binaries from the paper "Mean Curvature Skeletons". The paper is available in the download section. In the downloads you will also find pre-compiled binaries for Window, OSX and Ubuntu.

title={Mean Curvature Skeletons},
author={Andrea Tagliasacchi and Ibraheem Alhashim and Matt Olson and Hao Zhang},
booktitle={Computer Graphics Forum (Proc. of the Symposium on Geometry Processing)},


Checking out the source code

First checkout and compile the 'Starlab' framework:

git clone

Then check out this repository:

git clone

Then open the file in QtCreator and perform qmake & build

This is a set of plugins for the starlab environment specific to this project. The set contains:

voromat                     generates a medial manifold by projecting a mesh onto the voronoi poles
mcfskel                     mean curvature skeletonization (with medial guidance)
surfacemesh_to_skeleton     a simple plugin to convert contracted meshes into curve-skeletons 
surfacemesh_io_obj          I/O of obj files containing medial information
skeleton_resample           finely resamples a curve-skeleton (used in comparisons)
skeleton_compare            compares euclidean distance between two skeletons


A typical usage is to load the mesh, apply a re-meshing operation, apply the voromat plugin without the embedding option, then start the skeletonization process (MCF steps). The resulting mesh can be collapsed into simple curves by applying the short_ecollapse plugin. The result can be saved to 'cg' file format.


Example Video (Click to play)


Google Summer of Code

Xiang Gao has re-implemented this project in CGAL while participating in the CGAL Google Summer of Code 2013