Presentation is loading. Please wait.

Presentation is loading. Please wait.

EE 4780 Morphological Image Processing. Bahadir K. Gunturk2 Example Two semiconductor wafer images are given. You are supposed to determine the defects.

Similar presentations


Presentation on theme: "EE 4780 Morphological Image Processing. Bahadir K. Gunturk2 Example Two semiconductor wafer images are given. You are supposed to determine the defects."— Presentation transcript:

1 EE 4780 Morphological Image Processing

2 Bahadir K. Gunturk2 Example Two semiconductor wafer images are given. You are supposed to determine the defects based on these images.

3 Bahadir K. Gunturk3 Example

4 Bahadir K. Gunturk4 Example Absolute value of the difference

5 Bahadir K. Gunturk5 Example >> b = zeros(size(a)); >> b(a>100) = 1; >> figure; imshow(b,[ ]);

6 Bahadir K. Gunturk6 Example >> c = imerode(b,ones(3,3)); >> figure; imshow(c,[]);

7 Bahadir K. Gunturk7 Example >> d = imdilate(c,ones(3,3)); >> figure; imshow(d,[]);

8 Bahadir K. Gunturk8 Mathematical Morphology We defined an image as a two-dimensional function, f(x,y), of discrete (or real) coordinate variables, (x,y). An alternative definition of an image can be based on the notion that an image consists of a set of discrete (or continuous) coordinates.

9 Bahadir K. Gunturk9 Morphology B = {(0,0), (0,1), (1,0)} A = {(5,0), (3,1), (4,1), (5,1), (3,2), (4,2), (5,2)} A binary image containing two object sets A and B

10 Bahadir K. Gunturk10 Morphology Sets in morphology represent the shapes of objects in an image. For example, the set A = {(a1,a2)} represents a point in a binary image. The set of all black pixels in a binary image is a complete description of the image.

11 Bahadir K. Gunturk11 Mathematical Morphology Morphology is a tool for extracting and processing image components based on shapes. Morphological techniques include filtering, thinning, pruning.

12 Bahadir K. Gunturk12 Basic Set Operations

13 Bahadir K. Gunturk13 Some Basic Definitions Let A and B be sets with components a=(a1,a2) and b=(b1,b2), respectively. The translation of A by x=(x1,x2) is A + x = {c | c = a + x, for a  A} The reflection of A is A r = {x | x = -a for a  A} The complement of A is A c = {x | x  A} The union of A and B is A  B = {x | x  A or x  B } The intersection of A and B is A  B = {x | x  A and x  B }

14 Bahadir K. Gunturk14 Some Basic Definitions The difference of A and B is. A – B = A  B c = {x | x  A and x  B} A and B are said to be disjoint or mutually exclusive if they have no common elements. 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.

15 Bahadir K. Gunturk15 Some Basic Definitions Dilation A  B = {x | (B + x)  A   } Dilation expands a region.

16 Bahadir K. Gunturk16 Some Basic Definitions

17 Bahadir K. Gunturk17 Some Basic Definitions

18 Bahadir K. Gunturk18 Some Basic Definitions Erosion A  B = {x | (B + x)  A} Erosion shrinks a region.

19 Bahadir K. Gunturk19 Some Basic Definitions

20 Bahadir K. Gunturk20 Some Basic Definitions Dilation and erosion are duals of each other (A  B) c = A c  B r

21 Bahadir K. Gunturk21 Some Basic Definitions Opening is erosion followed by dilation: A  B = (A  B)  B Opening smoothes regions, removes spurs, breaks narrow lines.

22 Bahadir K. Gunturk22 Some Basic Definitions

23 Bahadir K. Gunturk23 Some Basic Definitions Closing is dilation followed by erosion: A  B = (A  B)  B Closing fills narrow gaps and holes in a region.

24 Bahadir K. Gunturk24 Some Basic Definitions

25 Bahadir K. Gunturk25 Some Basic Definitions

26 Bahadir K. Gunturk26 Some Morphological Algorithms Opening followed by closing can eliminate noise: (A  B)  B

27 Bahadir K. Gunturk27 Some Morphological Algorithms

28 Bahadir K. Gunturk28 Some Morphological Algorithms Boundary of a set, A, can be found by A - (A  B) B

29 Bahadir K. Gunturk29 Some Morphological Algorithms A region can be filled iteratively by X k+1 = (X k  B)  A c, where k = 0,1,… and X 0 is a point inside the region.

30 Bahadir K. Gunturk30 Some Morphological Algorithms

31 Bahadir K. Gunturk31 Morphological Operations BWMORPH Perform morphological operations on binary image. BW2 = BWMORPH(BW1,OPERATION) applies a specific morphological operation to the binary image BW1. BW2 = BWMORPH(BW1,OPERATION,N) applies the operation N times. N can be Inf, in which case the operation is repeated until the image no longer changes. OPERATION is a string that can have one of these values: 'skel' With N = Inf, remove pixels on the boundaries of objects without allowing objects to break apart 'spur' Remove end points of lines without removing small objects completely. 'fill' Fill isolated interior pixels (0's surrounded by 1's)...

32 Bahadir K. Gunturk32 Morphological Operations BW1 = imread('circbw.tif'); BW2 = bwmorph(BW1,'skel',Inf); imshow(BW1); figure, imshow(BW2);

33 Bahadir K. Gunturk33 Morphological Operations BW1 = imread('circbw.tif'); BW2 = bwperim(BW1); imshow(BW1); figure, imshow(BW2)

34 Bahadir K. Gunturk34 Morphological Operations Pixel Connectivity Connectivity defines which pixels are connected to other pixels. A set of pixels in a binary image that form a connected group is called an object or a connected component. 4-connected 8-connected

35 Bahadir K. Gunturk35 Morphological Operations X = bwlabel(BW,4); RGB = label2rgb(X, @jet, 'k'); imshow(RGB,'notruesize') BW = [0 0 0 0 0 0 0 0; 0 1 1 0 0 1 1 1; 0 1 1 0 0 0 1 1; 0 1 1 0 0 0 0 0; 0 0 0 1 1 0 0 0; 0 0 0 0 0 0 0 0]; X = bwlabel(BW,4) X = 0 0 0 0 0 0 0 0 0 1 1 0 0 3 3 3 0 1 1 0 0 0 3 3 0 1 1 0 0 0 0 0 0 0 0 2 2 0 0 0 0 0 0 0 0 0 0 0

36 Bahadir K. Gunturk36 Some Morphological Algorithms Application example: Using connected components to detect foreign objects in packaged food. There are four objects with significant size!

37 Bahadir K. Gunturk37 Some Morphological Algorithms Thinning: Thin regions iteratively; retain connections and endpoints. Skeletons: Reduces regions to lines of one pixel thick; preserves shape. Convex hull: Follows outline of a region except for concavities. Pruning: Removes small branches.

38 Bahadir K. Gunturk38 Summary

39 Bahadir K. Gunturk39 Summary

40 Bahadir K. Gunturk40 Summary

41 Bahadir K. Gunturk41 Summary

42 Bahadir K. Gunturk42 Extensions to Gray-Scale Images Dilation

43 Bahadir K. Gunturk43 Extensions to Gray-Scale Images Dilation Take the maximum within the window.

44 Bahadir K. Gunturk44 Extensions to Gray-Scale Images Erosion

45 Bahadir K. Gunturk45 Extensions to Gray-Scale Images Dilation:  Makes image brighter  Reduces or eliminates dark details Erosion:  Makes image darker  Reduces or eliminates bright details

46 Bahadir K. Gunturk46 Extensions to Gray-Scale Images

47 Bahadir K. Gunturk47 Extensions to Gray-Scale Images Opening: Narrow bright areas are reduced. Closing: Narrow dark areas are reduced.

48 Bahadir K. Gunturk48 Extensions to Gray-Scale Images Opening followed by closing  Morphological smoothing operation. Removes or attenuates both bright and dark artifacts/noise.

49 Bahadir K. Gunturk49 Extensions to Gray-Scale Images

50 Bahadir K. Gunturk50 Application Example

51 Bahadir K. Gunturk51 Application Example-Segmentation

52 Bahadir K. Gunturk52 Application Example-Granulometry


Download ppt "EE 4780 Morphological Image Processing. Bahadir K. Gunturk2 Example Two semiconductor wafer images are given. You are supposed to determine the defects."

Similar presentations


Ads by Google