scipy.signal.
get_window#
- scipy.signal.get_window(window, Nx, fftbins=True)[源代码][源代码]#
返回一个给定长度和类型的窗口。
- 参数:
- 窗口字符串, 浮点数, 或 元组
要创建的窗口类型。更多详情请见下文。
- Nx整数
窗口中的样本数量。
- fftbinsbool, 可选
如果为 True(默认),则创建一个“周期性”窗口,准备与 ifftshift 一起使用,并乘以 FFT 的结果(另请参见
fftfreq
)。如果为 False,则创建一个“对称”窗口,用于滤波器设计。
- 返回:
- get_windowndarray
返回一个长度为 Nx 且类型为 window 的窗口
注释
窗口类型:
kaiser
(需要 beta)kaiser_bessel_derived
(需要 beta)gaussian
(需要标准差)general_cosine
(需要加权系数)general_gaussian
(需要功率, 宽度)general_hamming
(需要窗口系数)dpss
(需要归一化的半带宽)chebwin
(需要衰减)
如果窗口不需要参数,那么 window 可以是一个字符串。
如果窗口需要参数,那么 window 必须是一个元组,第一个参数是窗口的字符串名称,接下来的参数是所需的参数。
如果 window 是一个浮点数,它将被解释为
kaiser
窗口的 beta 参数。上述每种窗口类型也是可以直接调用以创建该类型窗口的函数名称。
示例
>>> from scipy import signal >>> signal.get_window('triang', 7) array([ 0.125, 0.375, 0.625, 0.875, 0.875, 0.625, 0.375]) >>> signal.get_window(('kaiser', 4.0), 9) array([ 0.08848053, 0.29425961, 0.56437221, 0.82160913, 0.97885093, 0.97885093, 0.82160913, 0.56437221, 0.29425961]) >>> signal.get_window(('exponential', None, 1.), 9) array([ 0.011109 , 0.03019738, 0.082085 , 0.22313016, 0.60653066, 0.60653066, 0.22313016, 0.082085 , 0.03019738]) >>> signal.get_window(4.0, 9) array([ 0.08848053, 0.29425961, 0.56437221, 0.82160913, 0.97885093, 0.97885093, 0.82160913, 0.56437221, 0.29425961])