Functii Liniare Utilizate in Prelucrari Imagistice

You might also like

You are on page 1of 5

Functii liniare

1. Binarizare
function out = binarizare(in,a,L);
for i=1:size(in,1)
for j=1:size(in,2)
if(in(i,j)>0 && in(i,j)<a)
out(i,j)=L-1;
if(in(i,j)>a&& in(i,j)<L-1)
out(i,j)=0;
end
end
end
end
%out=binarizare(a,100,256)
%extragere zone albe

2.Negativizare
function out=negativizare(in);
for i=1:size(in,1)
for j=1:size(in,2)
out(i,j)=256-in(i,j);
end
end
end

3.Clipping
function out=clipping(in,a,b,Ta,Tb,L)
% pentru extragere zone de opacitate/ albe: out=clipping(a,50,256,50,230,256)
for i=1:size(in,1)
for j=1:size(in,2)
if (in(i,j)>=0)&&(in(i,j)<a)&&(in(i,j)>=b)&&(in(i,j)<=L-1)
out(i,j)=0;
else
out(i,j)=Ta+(Tb-Ta)/(b-a)*(in(i,j)-a);
end;
end;

end;
end

4.Slicing
function out=slicing(in,a,b,L)
% pentru extragere zone de opacitate/ albe: out=slicing(a,100,180,256);
for i=1:size(in,1)
for j=1:size(in,2)
if (in(i,j)>a)&&(in(i,j)<b)
out(i,j)=L;
else
out(i,j)=0;
end;
end;

end;
end

5.Stretching
function out=stretching(in,a,b,Ta,Tb,L)
% pentru extragere zone de opacitate/ albe:
out=stretching(a,80,180,50,230,256);
for i=1:size(in,1)
for j=1:size(in,2)
if (in(i,j)>=0)&&(in(i,j)<=a)
out(i,j)=0;
end;
if (in(i,j)>a)&&(in(i,j)<b)
out(i,j)=Ta+(Tb-Ta)/(b-a)*(in(i,j)-a);
end;
if (in(i,j)>=b)&&(in(i,j)<=L-1)
out(i,j)=L;
end;
end;
end;
end

You might also like