Digital Image Processing Lecture 5 Morphological Image Processing

  • Slides: 56
Download presentation
Digital Image Processing Lecture 5 Morphological Image Processing

Digital Image Processing Lecture 5 Morphological Image Processing

Remember GRAY LEVEL THRESHOLDING Objects Set threshold here

Remember GRAY LEVEL THRESHOLDING Objects Set threshold here

BINARY IMAGE Problem here How do we fill “missing pixels”?

BINARY IMAGE Problem here How do we fill “missing pixels”?

Mathematic Morphology mathematical framework used for: • pre-processing – noise filtering, shape simplification, .

Mathematic Morphology mathematical framework used for: • pre-processing – noise filtering, shape simplification, . . . • enhancing object structure – skeletonization, convex hull. . . • Segmentation – watershed, … • quantitative description – area, perimeter, . . . 4

Z 2 and Z 3 • set in mathematic morphology represent objects in an

Z 2 and Z 3 • set in mathematic morphology represent objects in an image – binary image (0 = white, 1 = black) : the element of the set is the coordinates (x, y) of pixel belong to the object Z 2 • gray-scaled image : the element of the set is the coordinates (x, y) of pixel belong to the object and the gray levels Z 3 5

Basic Set Theory 6

Basic Set Theory 6

Reflection and Translation 7

Reflection and Translation 7

Example 8

Example 8

Structuring element (SE) § small set to probe the image under study § for

Structuring element (SE) § small set to probe the image under study § for each SE, define origo § shape and size must be adapted to geometric properties for the objects 9

Examples: Structuring Elements origin 10

Examples: Structuring Elements origin 10

Basic idea • in parallel for each pixel in binary image: – check if

Basic idea • in parallel for each pixel in binary image: – check if SE is ”satisfied” – output pixel is set to 0 or 1 depending on used operation 11

Example Origin of B visits every element of A At each location of the

Example Origin of B visits every element of A At each location of the origin of B, if B is completely contained in A, then the location is a member of the new set, otherwise it is not a member of the new set. 12

Basic morphological operations • Erosion • Dilation • combine to – Opening – Closening

Basic morphological operations • Erosion • Dilation • combine to – Opening – Closening keep general shape but smooth with respect to object background 13

Erosion • Does the structuring element fit the set? erosion of a set A

Erosion • Does the structuring element fit the set? erosion of a set A by structuring element B: all z in A such that B is in A when origin of B=z shrink the object 14

Erosion 15

Erosion 15

Erosion 16

Erosion 16

Erosion 17

Erosion 17

Erosion 18

Erosion 18

Dilation • Does the structuring element hit the set? • the dilation of A

Dilation • Does the structuring element hit the set? • the dilation of A by B can be understood as the locus of the points covered by B when the center of B moves inside A. • grow the object 19

Dilation 20

Dilation 20

Dilation 21

Dilation 21

Dilation 22

Dilation 22

Dilation B = structuring element 23

Dilation B = structuring element 23

Dilation : Bridging gaps 24

Dilation : Bridging gaps 24

25

25

26

26

27

27

28

28

useful • erosion – removal of structures of certain shape and size, given by

useful • erosion – removal of structures of certain shape and size, given by SE • Dilation – filling of holes of certain shape and size, given by SE 29

Combining erosion and dilation • WANTED: – remove structures / fill holes – without

Combining erosion and dilation • WANTED: – remove structures / fill holes – without affecting remaining parts • SOLUTION: • combine erosion and dilation • (using same SE) 30

Erosion : eliminating irrelevant detail structuring element B = 13 x 13 pixels of

Erosion : eliminating irrelevant detail structuring element B = 13 x 13 pixels of gray level 1 31

Opening erosion followed by dilation, denoted ∘ • eliminates protrusions • breaks necks •

Opening erosion followed by dilation, denoted ∘ • eliminates protrusions • breaks necks • smoothes contour 32

Opening 33

Opening 33

Opening 34

Opening 34

Opening 35

Opening 35

Opening example Opening with a 11 pixel diameter disc: 3 x 9 and 9

Opening example Opening with a 11 pixel diameter disc: 3 x 9 and 9 x 3 Structuring Element

Closing dilation followed by erosion, denoted • • • smooth contour fuse narrow breaks

Closing dilation followed by erosion, denoted • • • smooth contour fuse narrow breaks and long thin gulfs eliminate small holes fill gaps in the contour 37

Closing 38

Closing 38

Closing 39

Closing 39

Closing 40

Closing 40

Another closing example Closing operation with a 22 pixel disc, closes small holes in

Another closing example Closing operation with a 22 pixel disc, closes small holes in the foreground.

And another… Threshold, closing with disc of size 20. Note that opening is the

And another… Threshold, closing with disc of size 20. Note that opening is the dual of closing i. e. opening the foreground pixels with a particular structuring element is equivalent to closing the background pixels with the same element.

Properties Opening (i) A B is a subset (subimage) of A (ii) If C

Properties Opening (i) A B is a subset (subimage) of A (ii) If C is a subset of D, then C B is a subset of D B (iii) (A B) B = A B Closing (i) A is a subset (subimage) of A B (ii) If C is a subset of D, then C B is a subset of D B (iii) (A B) B = A B Note: repeated openings/closings has no effect! 43

46

46

Useful: open & close 47

Useful: open & close 47

APPLICATIONS 48

APPLICATIONS 48

Application: filtering 49

Application: filtering 49

Hit-and-miss transform * n Used to look for particular patterns of foreground and background

Hit-and-miss transform * n Used to look for particular patterns of foreground and background pixels n Very simple object recognition n Example for a Hit-and-miss Structuring Element: Contains 0 s, 1 s and don’t care’s. n Similar to Pattern Matching: n If foreground and background pixels in the structuring element exactly match foreground and background pixels in the image, then the pixel underneath the origin of the structuring element is set to the foreground colour.

Hit-and-miss example: corner detection n Structuring Elements representing four corners. n Apply each Structuring

Hit-and-miss example: corner detection n Structuring Elements representing four corners. n Apply each Structuring Element. n Use OR operation to combine the four results.

Boundary Extraction 52

Boundary Extraction 52

Example 53

Example 53

Region Filling 54

Region Filling 54

Region Filling Algorithm 55

Region Filling Algorithm 55

Example 56

Example 56

Thinning 57

Thinning 57

Thickening • The thickening operation is calculated by translating the origin of the structuring

Thickening • The thickening operation is calculated by translating the origin of the structuring element to each possible pixel position in the image, and at each such position comparing it with the underlying image pixels. If the foreground and background pixels in the structuring element exactly match foreground and background pixels in the image, then the image pixel underneath the origin of the structuring element is set to foreground (one). Otherwise it is left unchanged. Note that the structuring element must always have a zero or a blank at its origin if it is to have any effect. Alternatively, based on Thining 58