Professional Documents
Culture Documents
The field of mathematical morphology contributes a wide range of operators to image processing, all based around a few simple mathematical concepts from set theory. The operators are particularly useful for the analysis of binary images and common usages include edge detection, noise removal, image enhancement and image segmentation. Morphological techniques typically probe an image with a small shape or template known as a structuring element. The structuring element is positioned at all possible locations in the image and it is compared with the corresponding neighborhood of pixels.Morphological operations differ in how they carry out this comparison.
The set with no elements is called the null or empty set and is denoted by the symbol .
If every element of a set A is also an element of another set B, then a is said to be a subset of B, denoted as AB The union of two sets A and B, denoted by C=A B Is the set of all elements belonging to either A,B or both
D=A B;
Two sets A and B are said to be disjoint or mutually exclusive if they have no common elements. AB=
q
0 1 0 1
p AND q
0 0 0 1
p OR q
0 1 1 1
NOT p
1 1 0 0
The logical operations just descried have a one-to one correspondence with the set operations is set theory ( union , intersection ) with the limitation that logical operations are restricted to binary variables.
Fundamental Definitions
We defined an image as an (amplitude) function of two, real (coordinate) variables a(x,y) or two, discrete variables a[m,n]. An alternative definition of an image can be based on the notion that an image consists of a set (or collection) of either continuous or discrete coordinates. In a sense the set corresponds to the points or pixels that belong to the objects in the image. This is illustrated in Figure which contains two objects or sets A and B. Note that the coordinate system is required. For the moment we will consider the pixel values to be binary.
Fundamental Definitions
The object A consists of those pixels a that share some common property:
Object The background of A is given by Ac (the complement of A) which is defined as those elements that are not in A: Background -
Fundamental Definitions
The fundamental operations associated with an object are the standard set operations union, intersection, and complement plus translation:
Fundamental Definitions
The complement of A is the binary image which interchange the 1s and 0s in A . Thus,
A {p p and p A}
The intersection of any two binary images A and B , written A B, is the binary image which is 1 at all pixels p which are 1 in both A and B
A B {p p A
and
p B}
The union of A and B, written AB, is the binary image which is 1 at all pixels p which are 1 in A or 1 in B ( or in both)
A B {p p A or p B}
Fundamental Definitions
* Translation - Given a vector x and a set A, the translation, A + x, is defined as:
Note that, since we are dealing with a digital image composed of pixels at integer coordinate positions (Z2), this implies restrictions on the allowable translation vectors x.
The basic Minkowski set operations--addition and subtraction--can now be defined. First we note that the individual elements that comprise B are not only pixels but also vectors as they have a clear coordinate position with respect to [0,0]. Given two sets A and B: Minkowski addition Minkowski subtraction -
Erosion wher e
Dilation, in general, causes objects to dilate or grow in size; erosion causes objects to shrink. The amount and the way that they grow or shrink depend upon the choice of the structuring element. Dilating or eroding without specifying the structural element makes no more sense than trying to lowpass filter an image without specifying the filter.
Structuring Elements
The structuring element is sometimes called the kernel, but we reserve that term for the similar objects used in convolutions. The structuring element consists of a pattern specified as the coordinates of a number of discrete points relative to some origin. Normally Cartesian coordinates are used and so a convenient way of representing the element is as a small image on a rectangular grid. Figure 1 shows a number of different structuring elements of various sizes. In each case the origin is marked by a ring around that point. The origin does not have to be in the center of the structuring element, but often it is. As suggested by the figure, structuring elements that fit into a 33 grid with its origin at the center are the most commonly seen type.
Structuring Elements
Sstructuring Element
Note that each point in the structuring element may have a value. In the simplest structuring elements used with binary images for operations such as erosion, the elements only have one value, conveniently represented as a one. More complicated elements, such as those used with thinning or grayscale morphological operations, may have other pixel values. The structuring element is already just a set of point coordinates (although it is often represented as a binary image). It differs from the input image coordinate set in that it is normally much smaller, and its coordinate origin is often not in a corner, so that some coordinate elements will have negative values. Note that in many implementations of morphological operators, the structuring element is assumed to be a particular shape (e.g. a 33 square) and so is hardwired into the algorithm.
Sstructuring Element
The two most common structuring elements (given a Cartesian grid) are the 4-connected and 8-connected sets, N4 and N8. They are illustrated in Figure .
Binary Images
For a binary image, white pixels are normally taken to represent foreground regions, while black pixels denote background. (Note that in some implementations this convention is reversed, and so it is very important to set up input images with the correct polarity for the implementation being used). Then the set of coordinates corresponding to that image is simply the set of two-dimensional Euclidean coordinates of all the foreground pixels in the image, with an origin normally taken in one of the corners so that all coordinates have positive elements.
The structuring element is said to fit the image if, for each of its pixels that is set to 1 , the corresponding image pixel is also 1.
The structuring element is said to hit, an image if for any of its pixels that is set to 1, the corresponding image pixel is also 1.
Erosion
The basic effect of the operator on a binary image is to erode away the boundaries of regions of foreground pixels (i.e. white pixels, typically). Thus areas of foreground pixels shrink in size, and holes within those areas become larger
Figure 2 Effect of erosion using a 33 square structuring element Strip away a layer of pixels from an object, shrinking it in the process.
Erosion-How It Works
The erosion operator takes two pieces of data as inputs. The first is the image which is to be eroded. The second is a (usually small) set of coordinate points known as a structuring element (also known as a kernel ). It is this structuring element that determines the precise effect of the erosion on the input image.
The mathematical definition of erosion for binary images is as follows: * Suppose that X is the set of Euclidean coordinates corresponding to the input binary image, and that K is the set of coordinates for the structuring element. * Let Kx denote the translation of K so that its origin is at x.
* Then the erosion of X by K is simply the set of all points x such that Kx is a subset of X.
Erosion-How It Works
As an example of binary erosion, suppose that the structuring element is a 33 square, with the origin at its center as shown in Figure 2. Note that in this and subsequent diagrams, foreground pixels are represented by 1's and background pixels by 0's.
Figure 2
The erosion of a binary image A by a binary image B is 1 at a pixel p if and only if every 1 pixel in the translation of B to p is also 1 in A.
Erosion-How It Works
To compute the erosion of a binary input image by this structuring element, we consider each of the foreground pixels in the input image in turn. For each foreground pixel (which we will call the input pixel) we superimpose the structuring element on top of the input image so that the origin of the structuring element coincides with the input pixel coordinates. If for every pixel in the structuring element, the corresponding pixel in the image underneath is a foreground pixel, then the input pixel is left as it is. If any of the corresponding pixels in the image are background, however, the input pixel is also set to background value. For our example 33 structuring element, the effect of this operation is to remove any foreground pixel that is not completely surrounded by other white pixels (assuming 8-connectedness). Such pixels must lie at the edges of white regions, and so the practical upshot is that foreground regions shrink (and holes inside a region grow).
This image is the result of eroding four times with a disk shaped structuring element 11 pixels in diameter. It shows that the hole in the middle of the image increases in size as the border shrinks. Note that the shape of the region has been quite well preserved due to the use of a disk shaped structuring element. In general, erosion using a disk shaped structuring element will tend to round concave boundaries, but will preserve the shape of convex boundaries.
The image shows the result of eroding twice using a disk shaped structuring element 11 pixels in diameter. All the coins have been separated neatly and the original shape of the coins has been largely preserved. At this stage a labeling algorithm can be used to count the coins. The relative sizes of the coins can be used to distinguish the various types by, for example, measuring the area of each distinct region.
We can also use erosion for edge detection by taking the erosion of an image and then subtracting it away from the original image, thus highlighting just those pixels at the edges of objects that were removed by the erosion. Finally, erosion is also used as the basis for many other mathematical morphology operators.
Dilation
The basic effect of the operator on a binary image is to gradually enlarge the boundaries of regions of foreground pixels (i.e. white pixels, typically). Thus areas of foreground pixels grow in size while holes within those regions become smaller.
For our example 33 structuring element, the effect of this operation is to set to the foreground color any background pixels that have a neighboring foreground pixel (assuming 8-connectedness). Such pixels must lie at the edges of white regions, and so the practical upshot is that foreground regions grow (and holes inside a region shrink).
Dilation is the dual of erosion i.e. dilating foreground pixels is equivalent to eroding the background pixels
A larger structuring element produces a more extreme dilation effect, although usually very similar effects can be achieved by repeated dilations using a smaller but similarly shaped structuring element. With larger structuring elements, it is quite common to use an approximately disk shaped structuring element, as opposed to a square one.
This image was produced by two dilation passes using a disk shaped structuring element of 11 pixels radius. Note that the corners have been rounded off. In general, when dilating by a disk shaped structuring element, convex boundaries will become rounded, and concave boundaries will be preserved as they are.
The image shows the result of dilating this image with a 33 square structuring element. Note that although the noise has been effectively removed, the image has been degraded significantly.
a)Dilation
b)Erosion
B) We must imagine that we are sliding the structuring element around the boundary on the inside of the object
(a) B = N4 (b) B= N8
Figure : Illustration of dilation. Original object pixels are in gray; pixels added through dilation are in black
Thus, dilation and erosion on binary images can be viewed as a form of convolution over a Boolean algebra.
More examples
Finally, dilation is also used as the basis for many other mathematical morphology operators, often in combination with some logical operators. A simple example is region filling which is illustrated using the image This image and all the following results were zoomed with a factor of 16 for a better display, i.e. each pixel during the processing corresponds to a 1616 pixel square in the displayed images. Region filling applies logical NOT, logical AND and dilation iteratively. The process can be described by the following formula: where Xk is the region which after convergence fills the boundary, J is the structuring element and Anot is the negative of the boundary. This combination of the dilation operator and a logical operator is also known as conditional dilation.
More examples
Imagine that we know Xo , i.e. one pixel which lies inside the region shown in the above image, e.g.
First, we dilate the image containing the single pixel using a structuring element resulting in
To prevent the growing region from crossing the boundary, we AND it with which is the negative of the boundary. Dilating the resulting image,
More examples
Repeating these two steps until convergence, yields and finally
ORing this image with the initial boundary yields the final result, as can be seen in
Opening
The basic effect of an opening is somewhat like erosion in that it tends to remove some of the foreground (bright) pixels from the edges of regions of foreground pixels. However it is less destructive than erosion in general. As with other morphological operators, the exact operation is determined by a structuring element. The effect of the operator is to preserve foreground regions that have a similar shape to this structuring element, or that can completely contain the structuring element, while eliminating all other regions of foreground pixels.
Translation For the opening with structuring element B and images A, A1, and A2, where A1 is a subimage of A2 (A1 A2):
Antiextensivity -
Increasing monotonicity
-
Idempotence -
Idempotence -
Idempotence
Some operators have the special property that applying them more than once to the same image produces no further change after the first application. Such operators are said to be idempotent. Examples include the morphological operators opening and closing.
Some of the circles are slightly distorted, but in general, the lines have been almost completely removed while the circles remain almost completely unaffected.
The result of an opening with a 39 vertically oriented structuring element is shown in The image shows what happens if we use a 93 horizontally oriented structuring element instead. Note that there are a few glitches in this last image where the diagonal lines cross vertical lines.
Closing
Closing is similar in some ways to dilation in that it tends to enlarge the boundaries of foreground (bright) regions in an image (and shrink background color holes in such regions), but it is less destructive of the original boundary shape. As with other morphological operators, the exact operation is determined by a structuring element. The effect of the operator is to preserve background regions that have a similar shape to this structuring element, or that can completely contain the structuring element, while eliminating all other regions of background pixels.
Closing -
One of the uses of dilation is to fill in small background color holes in images, e.g. `pepper noise'. One of the problems with doing this, however, is that the dilation will also distort all regions of pixels indiscriminately. By performing an erosion on the image after the dilation, i.e. a closing, we reduce some of this effect. The effect of closing can be quite easily visualized. Imagine taking the structuring element and sliding it around outside each foreground region, without changing its orientation. For any background boundary point, if the structuring element can be made to touc that point, without any part of the element being inside a foreground region then that point remains background. If this is not possible, then the pixel is set to foreground. After the closing has been carried out the background region will be such that the structuring element can be made to cover any point in the background without any part of it also covering a foreground point, and so further closings will have no effect. This property is known a idempotence
Links
Image Processing Fundamentals - Morphology-based Operations
http://www.mmorph.com/resources.html
http://cmm.ensmp.fr/~beucher/wtshed.html http://www.cwi.nl/projects/morphology/ http://www.ph.tn.tudelft.nl/Courses/FIP/noframes/fipMorpholo.html http://www.mathworks.com/access/helpdesk/help/toolbox/images /images.shtml http://wwwdsv.cea.fr/thema/shfj/web/demo_extraction/english/cerveau.htm