对图像进行二维离散Fourier变换
? ? ? 用函數fft2對圖像進行二維離散Fourier變換。用圖像的形式分別顯示清晰的頻譜幅度和相位。對圖像用窗函數加權,觀察其Fourier變換,解釋加窗前后的變化。對圖像作Fourier變換和反變換。將圖像頻譜的幅度和相位部分分離。分別對幅度部分和相位部分求Fourier反變換,觀察得到的空域結果并解釋所觀察到的現象。
close all;clear all
%-------------------------------------------------------------------------%
%實驗要求:用函數fft2對圖像進行二維離散Fourier變換。用圖像的形式分別顯示清晰的
%頻譜幅度和相位。對圖像用窗函數加權,觀察其Fourier變換,解釋加窗前后的變化。
%對圖像作Fourier變換和反變換。將圖像頻譜的幅度和相位部分分離。分別對幅度部分和
%相位部分求Fourier反變換,觀察得到的空域結果并解釋所觀察到的現象。
%-------------------------------------------------------------------------%
f=imread('test.jpg');
imshow(f);
title('原始圖像');
f=double(f);
F=fft2(f);
fd=abs(fftshift(F));
fdf=ifft2(fd);%對幅度傅里葉反變換
xw=angle(F);
xwf=ifft2(exp(j*xw));
figure;
subplot(2,2,1);
imshow(log(abs(fftshift(F))),[])%顯示頻譜幅度
title('圖像頻譜幅度');
subplot(2,2,2);
imshow(angle(fftshift(F)),[])
title('圖像相位');
%---------------------------
subplot(2,2,3);
imshow(log(1+abs(fdf)),[]);
title('圖像頻譜幅度的逆變換');
subplot(2,2,4);
imshow(xwf,[]);
title('圖像相位的逆變換');
%-----------------------------------
[M,N]=size(f);?
H1=hamming(M);
H2=hamming(N);
HH=H1*H2';
figure,
subplot(2,2,1);
imshow(HH,[]);
title('生成一個圓形的漢明窗');
g=f.*HH;
subplot(2,2,2);
imshow(uint8(g));
title('加漢明窗后的圖像');
G=fft2(g);
subplot(2,2,3);
imshow(log(abs(fftshift(G))),[])%顯示加窗后的頻譜幅度
title('加窗后的頻譜幅度');
subplot(2,2,4);
imshow(angle(fftshift(G)),[])%顯示頻譜幅度
title('加窗后的圖像相位');
%----------------------------------------------------
?
D172?
總結
以上是生活随笔為你收集整理的对图像进行二维离散Fourier变换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于概率统计分析的应用流特征分析
- 下一篇: 采用傅立叶变换空间载波法从强度分布得到相