基于MATLAB中fft2函数的二维图像数据的频谱生成代码

如何利用MATLAB中的fft2函数对二维的图像数据进行频域变换

clc

clear all
close all
I = imread('testwomen.jpg');    %读取源图像
size(I) %显示图像采样值
figure(1);
imshow(I);
title('the original photo')
%---------------------------
I1 = I(:,:,1);
fftI = fft2(I1);
A1 = abs(fftI);         %取模值
B1 = (A1 - min(min(A1))) / (max(max(A1)) - min(min(A1))) * 255;  %归一化显示
figure(2)
imshow(B1);
title('the frequency spectrum without shiftfft()')
%---------------------------
sfftI = fftshift(fftI);
A = abs(sfftI);
B = (A - min(min(A))) / (max(max(A)) - min(min(A))) * 255;
figure(3)
%imshow(B,[0,255]);  
imshow(B);

title('the frequency spectrum with shiftfft()')

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值