Wikipedia / Morphological skeleton
Wikipedia / Morphological skeleton
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 openingss, 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), Lantuéjoul:
,
are the morphological erosion and opening is an open ball of radius.
Discrete images
, 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.
, the skeleton S(X) is the union of the skeleton subsets, where:
.
Reconstruction from the skeleton
The original shape X 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
to the point z.
centered at z is called a maximal disk in a set A when:
, and
if, for some integer m and some point y.
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 ImagesNotes
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.