正弦信号的外推

信息处理 过滤器 自回归模型 外推
2022-02-07 00:48:08

假设有一个离散信号是正弦曲线的总和,可以用 来描述 ,其中是未知但我的信号的固定参数,是我的采样率,是在时间测量的样本。

s(n)=iAisin(2πfinfs+ϕi)
Ai,fi,ϕifsnt=nfs

在这个信号中,我测量了前个样本(),并且我还在个样本。我现在对估计/预测/推断恰好位于我测量的块之间的单个我不关心间隙中的所有其他样本。Nn=1,2,3...NNn=N+20000,....2N+20000s(n=N+10000)

估计我想要的样本的最佳和最有效的方法是什么?请注意,介于 100 到 1000 和我的采样率之间。Nfs=100MHz

2个回答

一种自然的方法是使用总共个样本的两个块)来估计参数。幅度、频率和相位估计都是教科书式的方程,你可以查到,所以这里的问题是它们都混在一起了。如果您假设您不知道混合了多少正弦曲线,那么您还必须检测存在多少。基本的伪代码是:2NN

Detect how many sinusoids there are
For each sinusoid:
    Estimate amplitude
    Estimate frequency
    Estimate phase
end
Reconstruct signal at n = N + 10000

检测有多少正弦曲线

您可以通过检测信号的 FFT 中有多少个峰值来做到这一点。正弦曲线将在其频率处出现峰值。在峰值处,曲线的斜率将从正变为负,因此斜率在峰值处有过零。对于离散信号,有不同的方法来计算斜率/导数,但我会先从简单的开始,然后再转向更复杂的方法。计算导数的一种简单方法就是差分会发生过零这将为您提供零交叉的数量以及它们发生的位置。xd[n]=x[n]x[n1]xd[n1]>0>xd[n]

编辑

问题中提出的模型是无噪声模型,所描述的检测依赖于此。您仍然可以将这种过零方法用于噪声信号,但需要应用阈值,因为噪声会导致出现许多小峰值。需要阈值以仅保留具有足够能量的阈值。应该选择阈值以满足您想要的一些错误警报度量的概率。

估计 ...

正如我上面提到的,估计正弦曲线的幅度、频率和相位可以通过 FFT 峰值查找方法找到(我们已经找到了峰值的位置),所以我们都准备好了。

重构信号

现在我们有了所有的估计,您可以使用您的估计来计算您的方程。

s^(n+10000)=iA^isin(2πf^i(n+10000)fs+θ^i)

假设鼻窦的数量小于,这个问题就可以通过最小均方来解决。在相等的情况下,应该通过通常的矩阵发明来解决。N

线性形式是通过用余弦ϕi

一旦估计了所有变量,就可以通过将新点简单地替换到表达式中来完成插值。

我认为Kay在最后描述了类似的过程

编辑

另一种选择是在未采样的位置填充零并使用通常的 FFT 频谱估计