我尝试过在Matlab中做垂直线的傅里叶变换。
这是脚本(你可以在下面的截图中看到绘图结果):
A = zeros(100,100);
A(:,10)=1;
A_FFT = abs(fft2(A));
figure, imshow(A,[]);
title('vertical line (A)');
figure, imshow(A_FFT,[]);
title('FFT of Vertical Line (A)');
从理论上讲,是的,我可以理解为什么会出现这样的结果。但是,我需要从数学上证明它。我试着写和求解矩阵A的DFT方程,但仍然得不到正确的结果。有人能帮我从数学上证明这一点吗?
截图:
左:原始垂直线,矩阵A;右: A的DFT,取fft2
发布于 2016-10-30 05:37:18
水平变换给出值(与成比例)
exp(i * (2*pi)/100 *10*k)
而垂直变换(沿着列的常量值)将除第零个系数之外的所有系数设置为零。
因为
abs(exp(i*whateverreal)) == 1
你会得到一条纯白的水平线。
https://stackoverflow.com/questions/40287397
复制相似问题