填补信号间隙的最佳方法

时间:2018-02-02 15:08:31

标签: numpy scipy filtering signal-processing mne-python

我有一个numpy 2dim数组,代表一个多通道生物信号。此数组的维数为20 x n_samples,其中列表示:样本编号 - 16个通道数据 - 时间。

鉴于蓝牙连接,我有一些包丢失,所以我有信号缺口。必须将数组导入MNE-Python以进行进一步分析。该库假定采样率是恒定的(假设我们必须每4 ms有一个样本,它无法处理间隙)所以我尝试了3种不同的方法:

  1. 不要填补空白,让信号拼接在一起(MNE Python创建一个数据间隔相等的结构)
  2. 用np.nan填补空白
  3. 用0s
  4. 填补空白

    我的问题是关于我需要对数据应用的过滤。我使用了scipy.welch来获取信号的PSD。似乎带有nan作为填充物的信号比原始信号和填充0的信号更好,但是一旦我尝试获得信号的低通和高通滤波版本的psd,行为就很奇怪。

    有谁知道什么是最好的方法?

    以下是不同填充策略的3张图片。 (最上面的是用MNE库获得的psd,最底层的是scipy.welch)。使用的过滤器是FIR。

    Filled with NAN

    Filled with 0s

    Spliced

0 个答案:

没有答案