?? butterworth.m
字號(hào):
%function butterworth
I = imread('lena1.bmp');
data=zeros(256,256); H=zeros(256,256);data1=zeros(256,256);
J=fft2(I);K=fftshift(J);
TYPE=2;
D0=15;
D1=1;
for m=1:256
for n=1:256
data(m,n)=K(m,n);
% for Mm=1:10
% for Nn=1:10
% L=256*rand(1,1);
% K(L,L)=J(Mm,Nn)+100*(rand(1,1)-0.5);
% end
% end
% for mm=1:8
% J(m,n)=I(m,n);
% if mm==1
% K(m,n)=J(m,n)+100*(rand(1,1)-0.5);
% else
% K(m,(n-1)*8+mm)=J(m,n);
% end
% data1(m,n)=21*(1000*J(m,n)/21)/1000;
disabs=sqrt((m-128)^2+(n-128)^2);
%butterworth
if TYPE==1
distance=1/(1+(disabs/D0)^2);
end
%tixing
if TYPE==2
distance=(disabs-D0)/(D1-D0);
end
%gauss
if TYPE==3
distance=exp(-(disabs/D0)^2);
end
H(m,n)=distance;
if TYPE==1
data(m,n)=H(m,n)*K(m,n);
end
if TYPE==3
data(m,n)=H(m,n)*K(m,n);
end
if TYPE==2
if disabs>D0
data(m,n)=0;
elseif disabs>D1
data(m,n)=H(m,n)*K(m,n);
end
end
% if distance>100
% K(m,n)=0;
% end
end
end
JJ=ifftshift(data);
R=ifft2(JJ);
imshow(abs(R),[])
% imshow(data,[])
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -