该阶段与输入样本中周期信号分量的时间偏移相关。
以下是如何看待这个问题...
首先,回想一下,快速傅里叶变换(FFT)与离散傅里叶变换(DFT)完全相同,只是计算效率更高。 因此,回到基础知识,我们将变换定义为:
Xk (0 <= k <= N-1) = sum for 0 <= n <= N-1 (xn * e ^ (-j * 2 * π * n * k / N))
其中:
xn 是输入样本
Xk 是输出/变换样本
N 是样本数
现在,这个复指数 e ^ (-j * 2 * π * n * k / N) 在 Re / Im 平面上表示圆上的点(半径为1,位于(0,0)处)。 如果您忘记了,请参见
Euler's formula。
对于固定值的
k
(代表输出/变换中感兴趣的特定频率),对于所有
n
,在这个圆上不超过
N/k
个不同的点。
再次查看公式中的总和:
sum
for 0<=n<=N-1(x
n * e
-j * 2*π * n * k/N)
在这个总和中,您通过输入信号x
n来缩放从点(0,0)到上述圆上的点的向量。您正在使这些向量变长或变短。然后将它们加起来。
如果恰好x
n包含具有周期为
N/k
的周期性信号,则该信号的所有最大值都会在圆上的一个点上对齐并相互放大。最小值和信号的所有其他值也有贡献。
简单来说,您在这里做的是将输入 x
n 缠绕在圆上。如果信号中有一个周期性分量,其周期与“周长”(=圆上的点数)相匹配,则由于最大值和最小值的对齐,您会得到该周期/频率的峰值。如果周期不匹配“周长”,则最大值会到处乱跑并互相抵消。这就是傅里叶变换的本质,这也是它如何以及为什么起作用的原因,没有魔法,没有真正复杂的数学,只是将绳子简单地缠绕在卷轴上。
而您在 X
k 中获得的相位仅指示所有最大值对齐的圆上的点。如果将周期性信号在 x
n 中向右或向左移动一个或多个样本,则对齐点也会相应移动,并且相位会相应更改。
这就是几何解释。
现在,您可以将这个相同的东西视为傅里叶变换的数学属性。
如果你有 x
n 和它的变换 X
k=F{x
n},那么 x
n-m 的变换将会是 F{x
n-m} = F{x
n} * e
-j * 2*π * k * m/N = X
k * e
-j * 2*π * k * m/N。这被称为
移位定理/性质。你应该能够轻松地推导出来。e
-j * 2*π * k * m/N 这个因子的幅度为1,只有在乘以 X
k 时才会改变相位。
而相位与频率无关。
此外,您采样信号x
n的最大频率是采样率的一半(实际上,略低于一半,请参见
Nyquist采样定理)。这意味着在您的情况下,傅里叶变换将永远不会给出高于或等于22050 Hz的任何信息,因为所有更高频率的信息都已经丢失到采样中。
当
k > N/2
时,X
k值的一半将给出具有负频率的分量。这是因为在圆上移动点之间的方向反转。因此,尽管输出/变换中有许多样本,但最大频率仍然小于采样率的一半。