Monday, October 24, 2011

Mathematical morphology


Mathematical morphology (MM) [Wikipedia] is a great toolbox for image processing. In ImageJ, most of these operations are available for binary images and are often used to prepare an image before analysis. Moreover, the same operations can be used for gray-level images offering new functionalities in terms of filtering, segmentation,etc.

Playing with binary images

  • Binary images ... [Link]
  • Boolean operators ... [Link]
  • Black and White, True or False ? ... [Link]




Note: For sake of clarity in all the posts about MM, I consider that white pixels (value of 255) are TRUE and I've configured ImageJ in such a way that the background color is black (Process > Binary > Options check 'Black Background' [see this post 'Black & White, True or False?]).

Basic operators

In MM, the vocabulary used is a little bit different than those used for linear filters. Here, the image is seen as various pixels sets and the two basic operators (erosion and dilation) correspond to the combination of a structuring element with the image. Even though the mathematics underlying these processes are different, this is rather equivalent to a convolution with a mask (or kernel).


Operators using Erosion/Dilation

  • Hit-or-miss ...
  • Opening and Closing ... [Link]
  • Top Hat filter

Geodesic operators

  • Opening by Reconstruction
  • Closing by Reconstruction
  • Toggle mapping (sharpening)

More sophisticated operators

  • Skeletonization ... [Link]
  • Euclidean Distance Map ... [Link]
  • Ultimate Eroded Points ... [Link]
  • Watershed ... [Link]

Links

Wikipedia ... [Link]
Excellent web site about morphology ... [Link]
Centre de Morphologie mathématique:  Foundation of MM
Courses of morphology (mathematical aspects) of their inventors ... [Link]

No comments:

Post a Comment