CIS581 Presentation Morphological Operations
-
Upload
abdul-gaines -
Category
Documents
-
view
179 -
download
11
description
Transcript of CIS581 Presentation Morphological Operations
CIS581 PresentationCIS581 PresentationMorphological OperationsMorphological Operations
Presented by: Xueyan Li
Supervised by: Longin Jan Lateckie
Presentation OutlinePresentation Outline
Terminology and properties of Morphology Operations Structure element Four morphological Principles Iterative Morphological Operations Matlab Programs and results images for each operation
Introduction---Introduction---Morphology OperationsMorphology Operations
Terminology
Morphology: a broad set of image processing operations that process images based on shapes.
Morphological operations apply a structuring elements to an input image, creating an output image of the same size.
Properties
Morphological operations simplify images, and quantify and preserve the main shape characteristics of objects.
Four morphological principlesFour morphological principles
Dilation Erosion Opening Closing
Relationship of four operationsRelationship of four operations
Dilation and Erosion are the basic operations, can be combined into more complex sequences.
Erosion and dilation are not invertible operations ---if an image is eroded and dilated, the original image is not re-obtained.
The combination of Erosion and dilation constitutes new operations ----opening and closing. They are the most useful morphological filtering.
Structuring elementStructuring element
Morphological operations can be customized for an application by the proper selection of the structuring element, which determines exactly how the object will be dilated or eroded.
matlab function strel() can create many kinds of structuring element:
dish-shaped, diamond-shaped, ball-shaped, squareflat linear with length LENarbitrary flat or a nonflat with the specified neighborhood
Dilation Dilation
Dilation allows objects to expand, then potentially filling in small holes and connecting disjoint object.
Performance: laying the structuring element on the image and sliding it across the image.
1) If the origin of the structuring element coincides with a ‘0’ in the image, there is no change; move to the next pixel.
2) If the origin of the structuring element coincides with a ‘1’ in the images, perform the OR logic operation on all pixels within the structuring element.
My input imagesMy input images
Matlab programming ---dilationMatlab programming ---dilation
%Read image
I = imread(‘ford.tiff');
figure('Name', 'original');
imshow(I);
%create structuring elements
% 11-by-11 square
se1 = strel('square',11);
%Apply dilation operation
figure('Name', 'Dilate');
Idilate1 = imdilate(I,se1);
%Show the result image
subplot(1,1,1), imshow(Idilate1), title('11x11 square');
original image (above)
Image after dilation (below)
Erosion Erosion
Erosion shrinks objects by etching away (eroding) their boundaries.
Performance:
1) If the origin of the structuring element coincides with a ‘0’ in the image, there is no change; move to the next pixel.
2) If the origin of the structuring element coincides with a ‘1’ in the image, and any of the ‘1’ pixels in the structuring element extend beyond the object (‘1’ pixels) in the image, then change the ‘1’ pixel in the image to a ‘0’;
Matlab programming ---erosionMatlab programming ---erosion
%Read image
I = imread(‘ford.tiff');
figure('Name', 'original');
imshow(I);
%create structuring elements
% 11-by-11 square
se1 = strel('square',11);
%Apply erosion operation
figure('Name', 'Erode');
Ierode1 = imerode(I,se1);
%Show the result image
subplot(1,1,1), imshow(Ierode1), title('11x11 square');
original image (above)
Image after erosion (below)
OpeningOpening
Opening consists of an erosion followed by a dilation and can be used to eliminate all pixels in regions that are to small to contain the structuring element.
In this case the structuring element is often called a probe, because it is probing the image looking for small objects to filter out of the image.
Matlab programming--- openingMatlab programming--- opening
%Read image
I = imread(‘ford.tiff');
figure('Name', 'original');
imshow(I);
%create structuring elements
% 11-by-11 square
se1 = strel('square',11);
%Apply the open opration
figure('Name', 'Open');
Iopen1 = imopen(I,se1);
%Show the result image
subplot(1,1,1), imshow(Iopen1), title('11x11 square');
original image (above)
Image after opening (below)
ClosingClosing
Closing consists of a dilation followed by an erosion and connects objects that are close to each other. It can be used to fill in holes and small gaps.
Matlab programming ---closingMatlab programming ---closing
%Read image
I = imread(‘ford.tiff');
figure('Name', 'original');
imshow(I);
%create structuring elements
% 11-by-11 square
se1 = strel('square',11);
%Apply close operation
figure('Name', ‘Close');
Iclose1 = imclose(I,se1);
%Show the result image
subplot(1,1,1), imshow(Iclose1), title('11x11 square');
original image (above)
Image after closing (below)
Iterative Morphological OperationsIterative Morphological Operations
We can apply one or several operations to an image iteratively.
InputImage ---(apply an operation) outputImage1
---(apply the operation again) outputImage2
…and so on…..until get your desired image
Matlab program Matlab program iterative operation of dilation (1)iterative operation of dilation (1)
Original image after 1 dilation
after 5th dilations after inf dilations
Matlab program Matlab program iterative operation of dilation (2)iterative operation of dilation (2)
Original image after 1 dilation
after 5th dilations after inf dilations
Matlab program Matlab program iterative operation of erosion (1)iterative operation of erosion (1)
Original image after 1 erosion
after 5th erosions after inf erosions
Matlab program Matlab program iterative operation of erosion (2)iterative operation of erosion (2)
Original image after 1 erosion
after 5th erosions after inf erosions
Matlab program Matlab program iterative operation of opening (1)iterative operation of opening (1)
Original image after 1 opening
after 5th openings after inf openings
Matlab program Matlab program iterative operation of opening (2)iterative operation of opening (2)
Original image after 1 opening
after 5th openings after inf openings
Matlab program Matlab program iterative operation of closing (1)iterative operation of closing (1)
Original image after 1 closing
after 5th closings after inf closnings
Matlab program Matlab program iterative operation of closing (2)iterative operation of closing (2)
Original image after 1 closing
after 5th closings after inf closings
Morphological operations Morphological operations on gray-level imageon gray-level image
Original image Image after dilation Image after erosion
My programming filesMy programming files
1. morphor.m
2. bwmorhpr.m
If you are more interested in this topic, you can try to play the source code with a updated Matlab. I’m sure a lot of fun there!
Thank you !