我读了一篇关于脑机接口的论文。在本文中,作者报告了“每个信号都经过了 8 阶带通 Chebishev I 型滤波器的滤波,该滤波器的截止频率为 0.1 和 10 Hz,并已根据高截止频率进行抽取”。我试图用 scipy 设计这个过滤器:
import scipy.signal as signal
signal.cheby1(8,0.05,[0.1,10.0],btype='band',analog=0,output='ba')
结果是:
Warning: invalid value encountered in sqrt
(array([ nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan]), array([ nan, nan, nan, nan, nan, nan, nan, nan, nan, nan, nan,
nan, nan, nan, nan, nan, nan]))
我没有信号处理方面的背景,所以我实际上不知道自己在做什么。我不知道他们是否使用了 IIR 或 FIR 滤波器,或者我是否必须缩放截止频率,或者我是否使用了错误的纹波。我希望你能帮助我。