1

根据 fft 后获得的频率、幅度和相位重建原始信号。

问候

我正在尝试根据对信号进行 fft 后获得的频率、幅度和相位来重建信号,但是当我尝试将 fft 数据(频率、幅度和相位)组合回来以查看是否得到类似的信号,模式有点偏离。我认为这与我的公式有关,可能有点不正确。

我用来组合数据的公式是:

amplitude*sin(2*pi*time*frequency+phase)+amplitude*cos(2*pi*time*frequency+phase);

请注意:目前我不想使用 IFFT,因为我将在计算完成之前编辑幅度和频率

该图的图像如下。顶部是原始信号,底部是使用方程式创建的信号。如果您想知道我正在使用 matlab,但我认为问题出在方程式上。 在此处输入图像描述

蒂亚

4

2 回答 2

3

IFFT 是以下转换的有效实现:

       N-1
x[n] = SUM X[k] exp(j*2*pi*n*k/N)
       k=0

X[k]您的 FFT 结果(振幅)在哪里,并且是x[n]您的时域样本。对于纯实数输入,这可以用cosand sin(或cos用一个phase术语)重写,但坚持使用复杂表示通常更容易。

[这可以大量矢量化,但我会留给你!]

于 2011-06-02T00:38:40.190 回答
1

我不明白你为什么要在你的方程中同时使用 sin 和 cos 项:这应该这样做......

amplitude*sin(2*pi*time*frequency+phase);

除非 FFT 有什么奇怪的地方,否则同时使用正弦和余弦项会导致缩放问题和相移。但是我不知道这是否可以解释您所看到的失真。这可能与您使用的 FFT 块大小有关。

于 2011-06-01T22:34:00.527 回答