scipy.signal.windows.

get_window#

scipy.signal.windows.get_window(window, Nx, fftbins=True, *, xp=None, device=None)[source]#

返回给定长度和类型的窗口。

参数:
window字符串,浮点数或元组

要创建的窗口的类型。有关更多详细信息,请参见下文。

Nxint

窗口中的样本数。

fftbinsbool,可选

如果为 True(默认),则创建一个“周期性”窗口,准备好与 ifftshift 一起使用,并乘以 FFT 的结果(另请参见 fftfreq)。如果为 False,则创建一个“对称”窗口,用于滤波器设计。

xparray_namespace, 可选

可选的数组命名空间。应与数组 API 标准兼容,或由 array-api-compat 支持。默认值:numpy

device: any

输出的可选设备规范。应与 xp 中支持的设备规范之一匹配。

返回值:
get_windowndarray

返回长度为 Nx 和类型为 window 的窗口

注释

窗口类型

如果窗口不需要任何参数,则 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])