编写程序计算图像的二维离散傅里叶变换。
%A= imread('autumn.tif');%206*345,计算时间较长
A=imread('eye.bmp');%26*38本例使用
B=rgb2gray(A);
B=double(B);
s=size(B);%行列值
F=zeros(s);
M=s(1); N=s(2);
for u=0:M-1
for v=0:N-1
k=0;
for x=0:M-1
for y=0:N-1
k=B(x+1,y+1)*exp(-j*2*pi*(u*x/M+v*y/N))+k;
end
end
F(u+1,v+1)=k;
end
end
C=fft2(B);
subplot(2,2,1); imshow(A)
subplot(2,2,2); imshow(C)
subplot(2,2,3); imshow(F)
评论0