【问题标题】:Resampling data from 1280 Hz to 240 Hz in python在 python 中将数据从 1280 Hz 重新采样到 240 Hz
【发布时间】:2020-10-27 01:26:41
【问题描述】:
我有一个以 1280 Hz 采样的力数据的 python 列表,我必须让它恰好以 240 Hz 的频率运行,以便与以 240 Hz 拍摄的视频完全匹配。我正在考虑下采样到 160 Hz,然后通过插值上采样到 240 Hz。有没有人对如何去做这件事有任何想法?不需要确切的答案,只需要知道在哪里寻找方法即可。
【问题讨论】:
标签:
python
numpy
scipy
sample-data
sample-rate
【解决方案1】:
不要再下采样和上采样;这会导致不必要的信息丢失。
使用np.fft.rfft 进行离散傅里叶变换;频域中的零填充,以便您将 3x 过采样到 3840 Hz 的采样频率。 (请记住,rfft 将针对偶数个输入样本返回奇数个频率。)您可以在频域中应用低通滤波器,确保在 120 Hz 或以上(Nyqvist频率为 240 Hz 采样率)。现在使用np.fft.irfft 转换回3840 Hz 采样率的时域信号。因为 240 Hz 正好比 3840 Hz 低 16 倍,而且由于低通滤波器保证没有高于 Nyqvist 频率的内容,所以您可以安全地每 16 个采样。