问题
假设我取一个信号并均匀采样它长达 2 秒。
仅给定这些时间样本,我将如何设计一种算法来找到这对值(频率 = 4.1 Hz,相位 = 2 Rad)?
笔记
我不想要 DFT。DFT 假设信号在边界处是圆形的,并通过在许多频率区间中使用许多值来工作。我想要的是找到最小化输入数据和重建信号之间的均方误差的最佳奇异相位和频率。
我的尝试
我尝试了网格搜索方法。中的1000 个相位和 1000 个频率直到奈奎斯特频率( Hz)
一旦我有了我的 cos 波网格,我就评估了每对的信号(,)
并计算猜测和原始信号之间的均方误差
其中是样本数。
运行这个算法,我发现 MSE 最低的对是 ( = 2.0357..., =4.0938...),MSE 为 0.000247。
这些都是很好的价值观。问题是,它真的很慢。我不禁觉得可能有更好、更优雅的方式来做我想做的事。
我还要提到,虽然它不在这个问题的范围内,但一旦我弄清楚了这个算法,我想要一种方法,我尝试用 N 个正弦波重建一个信号(比如,N=5 会找到5 个正弦波的参数,可以最大限度地减少误差)。