python - 低频带通滤波
问题描述
我想知道是否有任何最佳实践来解决我认为可能引起普遍兴趣的以下问题。
我有一个以 40 kHz 采样约 60 秒的信号。该信号包含高达 5kHz 的频率,但我只对它的 40Hz 分量感兴趣。
如何获得稳定的、窄带通滤波(大约 40 Hz)信号,它也与原始信号具有相同的时基(零滞后)。滤波器还应具有线性相位。
计算工作不是问题。
解决方案
使用: https ://docs.scipy.org/doc/scipy/reference/generated/scipy.signal.iirpeak.html设计一个窄带通滤波器 ,然后使用前向后向滤波器 filtfilt 在信号上实现它: https://docs.scipy.org/doc/scipy-0.14.0/reference/generated/scipy.signal.filtfilt.html。
前向后向滤波需要对信号进行分段,但您始终可以生成具有较大重叠的部分。
推荐阅读
- java - 在 Java8 中使用 JAXB schemagen 不会为枚举类型生成 XSD
- c++ - 致力于通过回溯解决 Nqueens 问题,并作为 CSP 特别是最受约束的值
- php - 在另一个类中使用数据库类
- angular - 如何在 Angular 7+ 中捕获 Amplify-Cognito http 调用
- python - jinja2.exceptions.UndefinedError: 'super' 未定义
- javascript - 标记中的 HTML 标签,传单
- javascript - 手风琴展开/折叠所有没有 jQuery
- oracle - 如何解决 Oracle DBMS_LOB 的问题
- javascript - 递归组件和递归嵌套中的Vue拖放
- python - 系统日期更改Python时日期不更新