我有多个真实的音频信号,我正在接受 FFT。尽管它们不是来自相同的记录,但这些信号代表相同的东西(生物学上)。有人告诉我,我可以将这些 fft 组合起来并将它们平均在一起,以获得平均信号的良好表示。我正在考虑为此目的使用 matlab 函数“pwelch”,但我有很多问题,我无法通过谷歌搜索找到答案。
我已经用matlab函数'pwelch'对ffts本身进行了平均以减少噪音。将它们组合在一起时,我应该只使用普通 FFT 的输出而不是 pwelch (P) 的输出吗?
我的信号长度不完全相同,这将使它们无法组合成矩阵。我应该在平均之前将它们全部剪成相同的长度吗?或者有没有办法解决这个问题?
我如何实际结合它们?我在想这样的事情:
:
avg = (abs(P1) + abs(P2) + abs(P3)) / 3;
然后像这样使用函数 pwelch:
[Pavg, Favg] = welch(avg,ones(SegmentLength,1),0,NFFTavg,fs,'power');
任何见解或帮助将不胜感激。谢谢!