scipy.signal.firwin2¶
- scipy.signal.firwin2(numtaps, freq, gain, nfreqs=None, window='hamming', nyq=None, antisymmetric=False, fs=None)[源代码]¶
- 冷杉过滤采用窗口法设计。 - 从给定的频率 freq 以及相应的增益 gain ,此函数构造具有线性相位和(近似)给定频率响应的FIR过滤。 - 参数
- numtaps集成
- 冷杉过滤中的点击次数。 numtaps 必须小于 nfreqs 。 
- freq类阵列,一维
- 频率采样点。通常为0.0到1.0,其中1.0表示奈奎斯特。奈奎斯特的频率是一半 fs 。中的值 freq 必须是非递减的。一个值可以重复一次以实现不连续。中的第一个值 freq 必须为0,最后一个值必须为 - fs/2。值0和- fs/2不能重复。
- gainarray_like
- 过滤在频率采样点获得收益。根据过滤类型的不同,会应用某些增益值限制,有关详细信息,请参阅注释。 
- nfreqs整型,可选
- 用于构建过滤的插值网格的大小。对于最有效的行为,这应该是2加1的幂(例如,129、257等)。缺省值是不小于的最小2次方加1 numtaps 。 nfreqs 必须大于 numtaps 。 
- windowString or(String,Float)或Float或None,可选
- 要使用的窗口函数。默认值为“Hamming”。看见 - scipy.signal.get_window有关可能值的完整列表,请执行以下操作。如果无,则不应用任何窗口函数。
- nyq浮动,可选
- Deprecated. Use `fs` instead. 这是奈奎斯特的频率。输入的每个频率 freq 必须介于0和0之间 nyq 。默认值为1。 
- antisymmetric布尔值,可选
- 产生的脉冲响应是对称的还是反对称的。有关更多详细信息,请参阅注释。 
- fs浮动,可选
- 信号的采样频率。输入的每个频率 cutoff 必须介于0和0之间 - fs/2。默认值为2。
 
- 退货
- tapsndarray
- 作为一维长度数组的FIR过滤的过滤系数 numtaps 。 
 
 - 注意事项 - 根据给定的一组频率和增益,在频域中构造期望的响应。逆FFT被应用于期望的响应以创建相关联的卷积核,并且第一 numtaps 此核的系数,按 window ,则返回。 - 杉木过滤将具有线性相位。过滤的类型由‘NUMBALTPS’的值和 antisymmetric 旗帜。有四种可能的组合: - 奇数 numtaps , antisymmetric 为假,则生产I型过滤 
- 甚至 numtaps , antisymmetric 为假,则生产类型II过滤 
- 奇数 numtaps , antisymmetric 是真的,生产的是III型过滤 
- 甚至 numtaps , antisymmetric 是真的,生产的是IV型过滤 
 - 除类型I滤波器外,所有滤波器的幅值响应均受以下限制: - 类型II--奈奎斯特频率为零 
- 类型III--零频率和奈奎斯特频率为零 
- 类型IV--零频率时为零 
 - 0.9.0 新版功能. - 参考文献 - 1
- 奥本海姆和谢弗,“离散时间信号处理”,普伦蒂斯-霍尔,恩格尔伍德悬崖,新泽西州(1989)。(例如,参见7.4节。) 
- 2
- “数字信号处理的科学家和工程师指南”,CH。17.http://www.dspguide.com/ch17/1.htm 
 - 示例 - 响应为1开的低通冷杉过滤 [0.0,0.5] ,并且随着时间的推移呈线性下降 [0.5、1.0] 从1到0: - >>> from scipy import signal >>> taps = signal.firwin2(150, [0.0, 0.5, 1.0], [1.0, 1.0, 0.0]) >>> print(taps[72:78]) [-0.02286961 -0.06362756 0.57310236 0.57310236 -0.06362756 -0.02286961]