In digital image processing, morphological skeleton is a skeleton (or medial axis) representation of a shape or binary image, computed by means of morphological operators.
Morphological skeletons are of two kinds: Those defined by means of morphological openings, from which the original shape can be reconstructed, Those computed by means of the hit-or-miss transform, which preserve the shape's topology.
Skeleton by openings
Lantuéjoul's formula
Continuous images In (Lantuéjoul 1977),See also (Serra's 1982 book) Lantuéjoul derived the following morphological formula for the skeleton of a continuous binary image :
,
where and are the morphological erosion and opening, respectively, is an open ball of radius , and is the closure of .
Discrete images Let , , be a family of shapes, where B is a structuring element, , and , where o denotes the origin.
The variable n is called the size of the structuring element.
Lantuéjoul's formula has been discretized as follows. For a discrete binary image , the skeleton S(X) is the union of the skeleton subsets , , where:
.
Reconstruction from the skeleton The original shape X can be reconstructed from the set of skeleton subsets as follows:
.
Partial reconstructions can also be performed, leading to opened versions of the original shape:
.
The skeleton as the centers of the maximal disks Let be the translated version of to the point z, that is, .
A shape centered at z is called a maximal disk in a set A when: , and if, for some integer m and some point y, , then .
Each skeleton subset consists of the centers of all maximal disks of size n.
Performing Morphological Skeletonization on Images
Morphological Skeletonization can be considered as a controlled erosion process. This involves shrinking the image until the area of interest is 1 pixel wide. This can allow quick and accurate image processing on an otherwise large and memory intensive operation. A great example of using skeletonization on an image is processing fingerprints. This can be quickly accomplished using bwmorph; a built-in Matlab function which will implement the Skeletonization Morphology technique to the image.
The image to the right shows the extent of what skeleton morphology can accomplish. Given a partial image, it is possible to extract a much fuller picture. Properly pre-processing the image with a simple Auto Threshold grayscale to binary converter will give the skeletonization function an easier time thinning. The higher contrast ratio will allow the lines to joined in a more accurate manner. Allowing to properly reconstruct the fingerprint.
skelIm = bwmorph(orIm,'skel',Inf); %Function used to generate Skeletonization Images
Notes
References Image Analysis and Mathematical Morphology by Jean Serra, (1982) Image Analysis and Mathematical Morphology, Volume 2: Theoretical Advances by Jean Serra, (1988) An Introduction to Morphological Image Processing by Edward R. Dougherty, (1992) Ch. Lantuéjoul, "Sur le modèle de Johnson-Mehl généralisé", Internal report of the Centre de Morph. Math., Fontainebleau, France, 1977. P. Maragos and R. W. Schafer, Morphological Skeleton Representation and Coding of Binary Images, IEEE Trans. on Acoustics, Speech, and Signal Processing, vol.34, no.5, pp.1228-1244, Oct. 1986. Scott E. Umbaugh (2018). Digital Image Processing and Analysis, pp 93-96. CRC Press.