%下面是一段做fft变换的程序;至于秩的问题,试一下就知道了。
im=imread('c:\1.bmp'); %读入图像
imshow(im);
[m,n]=size(im);
F=fftshift((fft2(double(im))));
m1=floor(m/2);
n1=floor(n/2);
d0=20;
for u=1:m
for v=1:n
d(u,v)=sqrt((u-m1)^2+(v-n1)^2);
if d(u,v)<d0
h(u,v)=1;
else
h(u,v)=0;
end
g(u,v)=h(u,v)*F(u,v);
end
end
butterfilter=ifft2(ifftshift(g));
figure,imshow(uint8(butterfilter));
参考资料:http://zhidao.baidu.com/question/427614589.html?oldq=1