从fft后获得的频率,幅度和相位重建原始信号。
问候
我正在尝试重建一个信号来自频率,幅度和相位,这是在我做一个信号的fft之后获得的,但当我尝试将fft数据(频率,幅度和相位)组合回来看看是否我得到一个类似的信号,模式有点偏。我认为它有 我的配方可能有点不正确。
我用来组合数据的公式是:
amplitude*sin(2*pi*time*frequency+phase)+amplitude*cos(2*pi*time*frequency+phase);
请注意: 目前我不想使用IFFT,因为我将在计算完成之前编辑幅度和频率
情节图像如下。顶部的是原始信号,底部的是用等式创建的信号。如果你想知道我正在使用matlab,但我认为问题在于等式。
TIA
答案 0 :(得分:2)
IFFT是以下转型的有效实施:
N-1
x[n] = SUM X[k] exp(j*2*pi*n*k/N)
k=0
其中X[k]
是您的FFT结果(复杂幅度),x[n]
是您的时域样本。对于实际输入,可以使用cos
和sin
(或cos
phase
项来重写),但通常更容易坚持复杂的代表性。
[这可以大量矢量化,但我会把它留给你!]
答案 1 :(得分:0)
我不明白你为什么要在你的等式中同时存在一个罪和一个cos项:这应该这样做......
amplitude*sin(2*pi*time*frequency+phase);
除非有一些关于FFT的奇怪之处,否则使用sin和余弦项会导致缩放问题和相移。但是我不知道这是否可以解释你所看到的失真。这可能与您使用的FFT块大小有关。