code for performing erosion and dilation without using builtin functions like imdilate or imerode??
Show older comments
code for dilation and erosion without using builtin functions?
3 Comments
John D'Errico
on 5 Mar 2016
Edited: John D'Errico
on 5 Mar 2016
So write one. It is your homework after all. Why not make an effort. If and when you have a real question, then ask it.
Walter Roberson
on 8 Mar 2016
"aaa aaa" commented
then why u r having tis page ..better close it
Walter Roberson
on 8 Mar 2016
"aaa aaa": this facility exists to educate, not to do people's work for them.
When someone has a homework question, then at the very least we expect them to explain what it is they do not understand, at which point we will explain, or we will point them to appropriate documentation.
Answers (3)
aslan memo
on 7 Nov 2019
1 vote
if use this Structuring =[0 1 0;1 1 1;0 1 0]; how to write code ??
1 Comment
Walter Roberson
on 10 Nov 2019
How to write the code to accomplish what purpose?
SIMI M S
on 23 Sep 2016
Edited: Walter Roberson
on 23 Sep 2016
Dilation code
A=imread( 'text.png' );
A=im2bw(A);
%Structuring element
B=[1 1 1 1 1 1 1;];
C=padarray(A,[0 3]);
D=false(size(A));
for i=1:size(C,1)
for j=1:size(C,2)-6
D(i,j)=sum(B&C(i,j:j+6));
end
end
figure,imshow(D);
3 Comments
Faiza Bukenya
on 24 Jan 2018
Edited: Walter Roberson
on 10 Nov 2019
Erosion code
A=imread('faiza.png')
A=im2bw(A);
%Structuring element
B=[1 1 0];
%Pad array with ones on both sides
C=padarray(A,[0 1],1);
%Intialize the matrix D of size A with zeros
D=false(size(A));
for i=1:size(C,1)
for j=1:size(C,2)-2
L=C(i,j:j+2);
%Find the position of ones in the structuring element
K=find(B==1);
if(L(K)==1)
D(i,j)=1;
end
end
end
figure,imshow(D);
Borhan Raad
on 9 Aug 2020
Edited: Walter Roberson
on 9 Aug 2020
does it work with 3x3 Structuring element? if not, what adjustment do we need to make?
Walter Roberson
on 9 Aug 2020
That code is only designed for linear structuring elements. The adjustment to it for a different width of linear structuring element would be
for j=1:size(C,2)-size(B,2)+1
L=C(i,j:j+size(B,2)-1);
Mohammed Hassan
on 21 Feb 2022
0 votes
code for dilation and erosion without using builtin functions ?
1 Comment
Image Analyst
on 21 Feb 2022
movmax() is dilation. movmin() is erosion.
Categories
Find more on Common Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!