jax.scipy.signal.stft#
- jax.scipy.signal.stft(x, fs=1.0, window='hann', nperseg=256, noverlap=None, nfft=None, detrend=False, return_onesided=True, boundary='zeros', padded=True, axis=-1)[source]#
计算短时傅里叶变换 (STFT)。
JAX 实现
scipy.signal.stft()
.- 参数:
x (数组) – 表示输入值时间序列的数组。
fs (ArrayLike) – 时间序列的采样频率(默认值:1.0)。
window (str) – 应用于每个段的数据锥形窗口。可以是窗口函数名称、指定窗口长度和函数的元组或数组(默认值:
'hann'
)。nperseg (int) – 每个段的长度(默认值:256)。
noverlap (int | None | None) – 段之间重叠的点数(默认值:
nperseg // 2
)。nfft (int | None | None) – 如果需要零填充 FFT,则使用的 FFT 长度。如果为
None
(默认值),则 FFT 长度为nperseg
。detrend (bool) – 指定如何对每个段进行去趋势化。可以是
False
(默认值:不进行去趋势化)、'constant'
(去除均值)、'linear'
(去除线性趋势)或一个可调用的函数,该函数接受一个段并返回一个去趋势化的段。return_onesided (bool) – 如果为 True(默认值),则为实数输入返回单边频谱。如果为 False,则返回双边频谱。
boundary (str | None) – 指定输入信号是否在两端扩展,以及如何扩展。选项包括
None
(不扩展)、'zeros'
(默认值)、'even'
、'odd'
或'constant'
。padded (bool) – 指定输入信号是否在末尾用零填充,以使其长度成为 nperseg 的倍数。如果为 True(默认值),则填充后的信号长度为
nperseg
的下一个倍数。axis (int) – 计算 STFT 的轴;默认情况下,在最后一个轴 (-1) 上计算。
- 返回:
一个长度为 3 的数组元组
(f, t, Zxx)
。f
是样本频率的数组。t
是段时间的数组,Zxx
是x
的 STFT。- 返回类型:
另请参阅
jax.scipy.signal.istft()
: 逆短时傅里叶变换。