二维傅里叶变换频谱图的直观理解

众所周知:频谱中心代表低频,四周代表高频。
问:那(u,v)一点代表什么?
答:
1.当为水平方向的正弦图片时,二维傅里叶变换后,其只有u方向的频谱值;
2.当为垂直方向的正弦图片是,二维傅里叶变换后,其只有v方向的频谱值;
3.当为y=x(45度)方向的正弦图片时,二维傅里叶变换后,其只有y=x(45度)方向的频谱值;
结论:二维频谱图包含原图不同方向,不同频率的信号的幅值信息。

效果图
在这里插入图片描述

matlab源代码

a=zeros(128);
b=zeros(128);
c=zeros(128);
for i=1:size(a,1)
a(:,i)=cos(2*pi/32*i)+1; % 为了突出原点作为参考,除了余弦我还加了直流分量。
end
for i=1:size(b,1)
b(i,:)=cos(2*pi/32*i)+1; % 为了突出原点作为参考,除了余弦我还加了直流分量。
end
w1=45;
for i=1:size(c,1)
    for j=1:size(c,1)
        c(i,j)=cos(2*pi/32*sin(w1/180*pi)*(j-(1/tan(w1/180*pi))*(i-1)))+1; % 为了突出原点作为参考,除了余弦我还加了直流分量。
    end
end
% f=(a+b)/2;
subplot(321);imshow(a,[])
F = (fftshift(fft2(a)));
subplot(322);imshow(F,[])
subplot(323);imshow(b,[])
F = (fftshift(fft2(b)));
subplot(324);imshow(F,[])
subplot(325);imshow(c,[])
F = (fftshift(fft2(c)));
subplot(326);imshow(F,[])

代码参考

如何理解图像经傅里叶变换后所得频谱图意义?频谱图坐标轴的物理意义是什么?频谱图与原图的对应关系是什么? - Cat food的回答 - 知乎
https://www.zhihu.com/question/264302905/answer/2474993232



230412补gif动图展示频谱方向与原图的关系
在这里插入图片描述
源码

% %旋转显示不同角度傅里叶变换的意义
close;
clear;

I = imread('雀斑.jpg');
I = rgb2gray(I);
[a,b] = size(I);
c=1;d=60;
F = (fftshift(fft2(I)));

% H = ones(a,b);
% H(a/2-c:a/2+c,b/2-d:b/2+d) = 0;

% H = zeros(a,b);
% H(a/2-c:a/2+c,b/2-d:b/2+d) = 1;
H = zeros(a,b);
h=89.999999;
for r=-h:1:h
    k=tan(r/180*pi);
    H=rgb2gray(insertShape(H, 'line', [b,(k*(b-round(b/2))+round(a/2)),0,(k*(0-round(b/2))+round(a/2))],'LineWidth',5));
    %H=rgb2gray(insertShape(H, 'line', [b,0+g,0,a-g],'LineWidth',20));
    Fp = F.*H;

    iF = ifft2(ifftshift(Fp));
    iF = uint8(real(iF));

    figure(1);
    subplot(221);imshow(I);%原图
    subplot(222);imshow(F);%原图频谱
    subplot(223);imshow(iF);%滤波后原图
    subplot(224);imshow(Fp);%滤波后频谱
    saveas(1,'abc.jpg');
    A=rgb2gray(imread('abc.jpg'));
    [Im,map]=gray2ind(A,256);
    if(r+h+1==1)
        imwrite(Im,map,'movefig.gif','DelayTime',0.1,'LoopCount',Inf) %第一帧
    else
        imwrite(Im,map,'movefig.gif','WriteMode','append','DelayTime',0.1) %其余帧
    end
end

230418补:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值