从生理信号中去除噪声

信息处理 过滤器 噪音 降噪
2022-01-25 19:54:05

我通过肌电传感器收集了一组生理信号。我将在帖子的末尾链接一个在颧肌上收集的信号示例(10 秒)。

当我分析这些数据时,我发现它们包含了大量的噪声(正如你可以从 FFT 图中看到的那样)。

emg 信号图 emg 信号图

emg 信号的 FFT emg 信号的 FFT

如您所见,FFT 中有几个峰值。我的想法是在这些峰值的频率上使用陷波滤波器来删除它们。无论如何,我无法弄清楚如何自动选择这些峰。你有什么建议吗?

此外,有没有更好的方法来清理信号?

注意:每个信号都有不同频率的噪声。使用电池收集数据并避免电流干扰。

谢谢 :)

1个回答

这是一个比乍看起来更棘手的问题。起初这可能会让人感到困惑,但请仔细阅读,我希望它会给出一个好主意。以下是我的经验以及我如何解决类似问题:

  1. 应用一个非常好的带通滤波器来获得感兴趣的频率范围。
  2. 应用非常严格的 DFT 以获得良好的频域分辨率。如果原始信号不够长,您可能希望用零填充原始信号。
  3. 确定要使用的陷波滤波器的带宽。使用陷波滤波器要非常小心,因为它们有一些不方便的特性。
  4. 使用陷波滤波器的宽度计算 DFT 结果的运行窗口总和。
  5. 设置阈值以决定结果中的峰值。
  6. 运行窗口总和应该为您提供峰值所在的值。
  7. 应用为频率设计的陷波滤波器。如果频率在变化,并且必须实时进行滤波,则必须应用自适应滤波器,但这是另一个问题。