: Chapter 6: Morphological Image Processing 1 Montri Karnjanadecha ac.th/~montri Image Processing
: Chapter 6: Morphological Image Processing 2 Chapter 6 Morphological Image Processing
: Chapter 6: Morphological Image Processing 3 Morphological and Other Area Operations Introduction –Morphology is the science of form and structure –It is about regions or shapes, in computer vision Morphology can be used for the following tasks: –Smoothing the edges of a region –Forcing shapes onto region edges –Counting regions –Estimating sizes of regions
: Chapter 6: Morphological Image Processing 4 Morphological Operations Morphological operations are easily seen on binary images but they can be extended to work on gray- level images Basic Morphological Operations –Consider the following image 1 * 1 * 1 * 1 * 1 * 1 * 1 * 1 –This could be represented as a set of those pixels in 5 x 3 image that have value ‘1’, namely {(0,0), (0,2), (0,4), (1,1), (1,3), (2,0), (2,2), (2,4)}
: Chapter 6: Morphological Image Processing 5 Morphological Operations And now it is possible to do set operations on images 1 * 1 * 1 * * * 1 1 A = * 1 * 1 * B = * * * * 1 * 1* * * 1 1 Giving 1 * * * * * 1 A union B = * 1 * 1 1, A intersection B = * * * 1 * 1 * * * * * 1
: Chapter 6: Morphological Image Processing 6 Morphological Operations The set on unknown pixels (*) can, theoretically, extend infinitely * * * * * * * * * * * * * * * * * * * * 1 * 1 * 1 * * * * * * * * * * * 1 * 1 * * * * * * * * * * * 1 * 1 * 1 * * * * * * * * * * * * * * * * * * * * where the circle around the top left 1 indicates the position of the origin
: Chapter 6: Morphological Image Processing 7 Dilation Technique 1: Dilation (Minkowski addition) USE: Region edge valley filling (for binary image) OPERATION: –A template (made from 1’s and *’s) is created with a known origin –The origin of this template is stepped over every element in the whole of the image
: Chapter 6: Morphological Image Processing 8 Dilation OPERATION: (cont’d) –The template is ‘unioned’ where the origin of the template corresponds to a 1 in the image –The resulting template-sized matrix is then unioned with all other template-sized results (using their original position)
: Chapter 6: Morphological Image Processing 9 Dilation Example Image Template Applying the template to the first line gives
: Chapter 6: Morphological Image Processing 10 Dilation Example Application across the whole image gives new row new column –Continually applying this to the images fills out all the holes and makes the image grow, one row and one column at a time
: Chapter 6: Morphological Image Processing 11 Erosion Technique 2: Erosion (Minkowski subtraction) USE: To remove spikes from the edges of regions OPERATION: –A template is created –The template is stepped over the image but it is not allowed to go outside the image –For every position, if the template is the same as the image window, then the element corresponding to the origin of the template is set to a 1
: Chapter 6: Morphological Image Processing 12 Erosion Example Image Template
: Chapter 6: Morphological Image Processing 13 Erosion Example Final result is unused row and column
: Chapter 6: Morphological Image Processing 14 Gray-level Erosion and Dilation Technique 3: Gray-level erosion and dilation USE: Flattening spikes and filling valleys on region edges in gray-level images OPERATION: –Let I(x,y) be an image of gray levels and R(x,y) be resulting image after I(x,y) has been dilated/eroded with m x n template T(i,j) 0 <= i <= m-1, 0 <= j <= n-1
: Chapter 6: Morphological Image Processing 15 Gray-level Erosion and Dilation OPERATION: –Gray level dilation is defined as –and gray level erosion is
: Chapter 6: Morphological Image Processing 16 Gray-level Erosion and Dilation NOTES: –For both of the above definitions, I(x,y) = 0 for locations outside of an M x N image –Dilation is precisely the dual of the erosion operation. A dilation can be performed by reflecting the template and negating the original image and then negating the result.
: Chapter 6: Morphological Image Processing 17 Example Consider the following initial image Dilating by the template
: Chapter 6: Morphological Image Processing 18 Example gives or subtracting 1 throughout
: Chapter 6: Morphological Image Processing 19 Example Conversely, erode by the same template gives
: Chapter 6: Morphological Image Processing 20 Example or if 1 is subtracted throughout
: Chapter 6: Morphological Image Processing 21 Example NOTE: –Dilation gives a larger image, while erosion gives a smaller image –In both cases, the original structure of the image is maintained –If the template is not constant, say
: Chapter 6: Morphological Image Processing 22 Example the results are as follows: Original Dilate -1 Erode + 1 D(E(D(I))) = D(I) and E(D(E(I))) = E(I)
: Chapter 6: Morphological Image Processing 23 Opening and Closing Operations OPENING = dilating after eroding CLOSING = eroding after dilating Technique 4: Opening and closing operations USE: As a step towards the skeleton, counting, and size-estimating operations below
: Chapter 6: Morphological Image Processing 24 Opening and Closing Operations OPERATION: –Let OPEN(I,T) be the opening of image I by some template T –Then using previous terminology and the template T throughout OPEN(I,T) = D(E(I)) This gives
: Chapter 6: Morphological Image Processing 25 Opening and Closing Operations Original Opened with Opened with Clearly, this restores the image to its original and avoids the scaling of the result. It introduces the shaping of the template into the original.
: Chapter 6: Morphological Image Processing 26 More interesting is its operation on clear edges Original Opened with Note how the peak ( ) has been smoothed to the shape of the template but that the trough (1 3) has been left alone.
: Chapter 6: Morphological Image Processing 27 Closing is defined as CLOSE(I,T’) = E(D(I)) with E and D using T’ where T’ is the 180 o rotation of T Original Closed with Now the trough has been filled but the peak has been left.
: Chapter 6: Morphological Image Processing 28 Properties of open and close operations OPEN -> forces the shape of the template on the convex parts of an edge CLOSE -> forces its shape on the concave parts of an edge These two operations can be combined to produce a skeleton operation
: Chapter 6: Morphological Image Processing 29 Skeleton Operations Technique 5: Skeleton operations USE: To create a skeleton of a region. This will consist of a set of lines corresponding to complete thinning of the region without losing the essential shape.
: Chapter 6: Morphological Image Processing 30 Skeleton Operations OPERATION: –Let D 1, D 2, …, D n be structuring templates that are square, with sizes 1x1, 2x2, …, n x n, all of them filled with 1’s. –With image I, using template D 1, D 2, …, D n, in turn, evaluate result i = E(I) - OPEN(E(I)) –Then determine
: Chapter 6: Morphological Image Processing 31 Skeleton Operations Example: Original Final image using only D 1, D 2, D 3, and D 4 This corresponds to a skeleton of the image, retaining length but reduce thickness
: Chapter 6: Morphological Image Processing 32 Granule sizing and granule counting Technique 6: Granule sizing and granule counting USE: To estimate the number of bright regions in an image. To estimate the size of the regions in an image.
: Chapter 6: Morphological Image Processing 33 Granule sizing and granule counting OPERATION: –Using templates such as a set of vertical or horizontal 1’s with increasing length to estimate the size of the area –Using vertical or horizontal templates with binary strings having values 2 n + 1 (i.e. 1, 11, 101, 1001, 10001, etc.) to count the number of areas –In both cases, the image is eroded by the structuring templates and a measure of how many elements are now non-zero, or a sum of the power in the system is calculated –The number is plotted against the template structure length to give a covariance curve whose peaks indicate the size and number of granules (areas) in the image.
: Chapter 6: Morphological Image Processing 34 Example The following image was eroded with the templates as shown below. After each erosion the number of pixels > 0 was counted and the power of the resulting image was summed. Original image
: Chapter 6: Morphological Image Processing 35 Example Length Type of string 11….1 10…01 power count powercount
: Chapter 6: Morphological Image Processing 36 Example Given a slightly altered image
: Chapter 6: Morphological Image Processing 37 Example which eroded with 10…01 pattern gives length count power