f = zeros(30,30);
f(5:24,13:17) = 1;%生成一矩形函数
F0 = fft2(f);%二维傅立叶变换
F2 = log(abs(F0));
F = fft2(f,256,256);%补零操作的二维傅立叶变换
F1 = fftshift(F);%将零频率移到中心位置
figure;
subplot(221);
imshow(f,'InitialMagnification','fit');%以合适窗口大小显示f
subplot(222);
imshow(F2,[-1 5],'InitialMagnification','fit'); %确定像素值的显示范围
subplot(223);
imshow(log(abs(F)),[-1 5]); %对数显示补零变换后的图像
subplot(224);
imshow(log(abs(F1)),[-1 5]); %对数显示频移后的图像
MATLAB图像变换
于 2021-03-24 19:47:58 首次发布
这篇博客探讨了如何使用MATLAB进行二维傅立叶变换,首先创建了一个矩形函数,然后通过fft2进行变换,并应用补零操作和fftshift将零频率移至中心。作者展示了原始图像、对数尺度下的变换图像以及频移后的图像,揭示了频域分析在图像处理中的应用。
摘要由CSDN通过智能技术生成