Robust Multiscale 3D Skeletonization
3D skeletonization refers to the process of extracting both curve skeletons (one-dimensional structures) and surface skeletons (two-dimensional manifolds) from 3D volumetric binary shapes. Surface skeletons share the same properties with 2D skeletons. Curve skeletons do not have a uniquely accepted formal definition, but can be seen as the skeleton of a surface skeleton.
Computing 3D skeletons with the same desirable properties as 2D skeletons is a much more complex task. In particular, defining a multiscale notion that yields robust, noise-insensitive, skeletons is challenging.
Multiscale importance metric
We have extended our original multiscale importance metric, used to compute robust 2D skeletons, to 3D (for the details, see this paper). This yields robust, centered, voxel-thin, connected, multiscale 3D surface and curve skeletons (see above videos). Progressively thresholding the square root of this metric allows us to first simplify the surface skeleton and retain the curve skeleton (right video above). Thus, the curve skeleton is indeed the skeleton of the surface skeleton!
More examples of 3D skeletonization are shown below.
Plane (217 x 304 x 98 voxels)
Hand (488 x 421 x 228 voxels)
Dino (366 x 340 x 119 voxels)
The 3D skeletonization software is available here for Microsoft Windows. The software tool provides
- computation of 3D surface skeletons and curve skeletons
- computation of 3D distance transforms, feature transforms, and geodesics
- support of various volumetric voxel formats
- user interface for interactive visualization and inspection of the results
If you use this software, please cite the related paper:
D. Reniers, J.J. van Wijk, A. Telea. Computing Multiscale Curve and Surface Skeletons of Genus 0 Shapes Using a Global Importance Measure, IEEE Transactions on Visualization and Computer Graphics, March/April 2008, vol. 14, no. 2, pp. 355-368