scipy.signal.windows.
get_window#
- scipy.signal.windows.get_window(window, Nx, fftbins=True)[source]#
返回给定长度和类型的窗口。
- 参数:
- window字符串、浮点数或元组
要创建的窗口类型。有关更多详细信息,请参见下文。
- Nx整数
窗口中的样本数量。
- fftbins布尔值,可选
如果为 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])