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)[源代码]#

计算短时傅里叶变换 (STFT)。

scipy.signal.stft() 的 JAX 实现。

参数:
  • x (Array) – 表示输入值的时间序列的数组。

  • 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 是分段时间的数组,Zxxx 的 STFT。

返回类型:

tuple[Array, Array, Array]

另请参阅

jax.scipy.signal.istft():逆短时傅里叶变换。