图像傅里叶变换

I = imread('F:/lena.jpg');
I=rgb2gray(I);
F = fftshift(fft2(I));                     % 对图像进行二维 DFT(fft2),并移至中心位置
magn = log(abs(F));                        % 加 log 是便于显示,缩小值域
phase = log(angle(F)*180/pi);              % 转换为度数

subplot(2, 2, 1), imshow(I, []), title('原图像')
subplot(2, 2, 2), imshow(log(F), []), title('图像频谱')
subplot(2, 2, 3), imshow(magn, []), title('图像幅度谱')
subplot(2, 2, 4), imshow(phase, []), title('图像相位谱')

 

 2.下面利用图一的幅度谱结合图二的相位谱,再利用reverse dft。

I = imread('F:/box.png');
I=rgb2gray(I);
G=imread("F:/lena.jpg");
G=rgb2gray(G);
G=imresize(G,size(I));

F1=fft2(I);
GF1=fft2(G);

II=ifft2(abs(F1).*exp(1j*angle(GF1)));
GG=ifft2(abs(GF1).*exp(1j*angle(F1)));

subplot(1, 2, 1), imshow(II), title('图像1幅度加图二相位')
subplot(1, 2, 2), imshow(GG), title('图像1相位加图二幅度')

 

 可见相位控制着纹理结构。

posted @ 2021-11-07 20:09  为红颜  阅读(231)  评论(0编辑  收藏  举报