傅里叶逆变换的比例因子(用于卷积目的)

计算科学 matlab 傅立叶分析 傅里叶变换 平滑
2021-12-04 19:50:49

我有一定的二维功能。更准确地说,我没有函数本身,而是矩阵[X,Y,Z], 在哪里X,Y1×n, 和Zn×n.

现在,我想计算一个新矩阵,Z^, 每个点的值是Z- 来自该点周围一个小区域的值。换一种说法, Z^(p)=B(p,r)Z(x,y)dxdyπr2对于一些小固定r.

我决定这样做的方法是通过卷积δ-like 函数,因此通过相关 FFT 变换的乘法。

我发现 FFTZ,以及带底圆柱的 FFTB(0,r), 和体积1. 然后我取 FFT 变换的乘积,然后取逆变换的绝对值Z^.

从视觉上看,结果看起来是正确的,即在绘图时Z^它确实看起来像原来的,只是更“平滑”。当我增加r,结果变得越来越平坦。

但是有一些缩放问题,我的意思是最终结果的缩放完全关闭(数量级),而对于小r我希望范围大致相同。我怀疑这是 FFT 变换的一个已知问题,但我无法找到合适的比例因子。

1个回答

您必须按 FFT 中的元素数量进行归一化。那就是如果你的矩阵的大小是(NxM)您必须通过以下方式标准化您的 FFT(NxM). 您可以通过查看两个矩阵的能量含量来检查这是否有效。