code for performing erosion and dilation without using builtin functions like imdilate or imerode??

code for dilation and erosion without using builtin functions?

3 commentaires

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.
"aaa aaa" commented
then why u r having tis page ..better close it
"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.

Connectez-vous pour commenter.

Réponses (3)

if use this Structuring =[0 1 0;1 1 1;0 1 0]; how to write code ??
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 commentaires

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);
does it work with 3x3 Structuring element? if not, what adjustment do we need to make?
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);

Connectez-vous pour commenter.

Question posée :

le 5 Mar 2016

Commenté :

le 21 Fév 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by