问题描述
我正在尝试从信号中去除噪声 - 由我自己的网络解码。 我在 python 中训练了网络和处理信号,所以我尝试了 scipy.signal 模块来自定义低通滤波器。 关于模块的例子很少,代码非常简单。但是当我把我的信号放到这个过滤器时,它给出了值错误。
代码:
def lowPass_Filter(signal,cutoff,fs,order):
sig = signal
norm_cutoff = cutoff / (0.5 * fs)
b,a = butter(order,norm_cutoff,btype='low',analog=False)
sig = lfilter(b,a,sig)
signal = sig
return signal
signal = lowPass_Filter(input_signal,0.3,float(s_hz),77)
错误:
File "D:\Anaconda\envs\torch\lib\site-packages\scipy\signal\signaltools.py",line 2030,in lfilter
return sigtools._linear_filter(b,x,axis)
ValueError: Could not convert b,and x to a common type
我搜索了补救措施,但找不到带有“常见类型”消息的正确案例。有人说信号的零维可能导致错误,但我使用的信号显示了预期的形状。
我尝试了不同的截止时间和顺序以使其工作。我不知道再尝试了。
任何意见一定对我很有帮助。如果你能看到任何问题,请给我建议。提前致谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)