比较2个一维信号

Tob*_*ner 5 algorithm signal-processing

我有以下问题:随着时间的推移,我有2个信号.它们来自同一个来源,因此它们应该是相同的.我想检查一下他们是不是真的.

并发症:

  • 它们可以用不同的采样率来测量
  • 开始/结束时间不相关.测量不是同时开始并且同时结束.
  • 两个信号之间可能存在时间偏移.

我的想法是用傅里叶变换,卷积和统计方法进行比较.有人可以给我发一些链接,我可以找到更多关于如何处理这个问题的信息吗?

Mik*_*ola 4

您只需移动它们以使它们的质心对齐即可轻松校正相位。(或者,在傅里叶域中,只需乘以第一个系数的相位的倒数。)

类似地,如果您想排列仅给出部分数据的图像,您可以只进行互相关并取最大值(这在傅立叶域中也很容易做到)。

这个过程中唯一棘手的部分就是处理采样率。现在,如果您先验地知道采样率是多少(并且它们通过有理数相关),则可以使用 sinc 插值/下采样将它们重新调整为通用采样率:

https://ccrma.stanford.edu/~jos/st/Bandlimited_Interpolation_Time_Limited_Signals.html

如果你不知道采样率,你可能会有点搞砸了。从技术上讲,您可以尝试对信号的所有不同重新缩放进行暴力强制,但这样做往往要么很慢,要么给出平庸的结果。

作为最后一个建议,如果您只想精确匹配声音,您可以尝试使用倒谱并验证信号的峰值是否足够接近于一定的容差范围。这种类型的分析在声音和语音识别中大量使用,并进行了一些改进以使其在本地运行。它最适合处理调频数据,例如语音和音乐:

http://en.wikipedia.org/wiki/倒谱