jax.scipy.signal.istft#
- jax.scipy.signal.istft(Zxx, fs=1.0, window='hann', nperseg=None, noverlap=None, nfft=None, input_onesided=True, boundary=True, time_axis=-1, freq_axis=-2)[原始碼]#
執行反向短時傅立葉轉換 (ISTFT)。
JAX 實作的
scipy.signal.istft()
;計算jax.scipy.signal.stft()
的反向。- 參數:
Zxx (Array) – 要重建訊號的 STFT。
fs (ArrayLike) – 時間序列的取樣頻率 (預設:1.0)
window (str) – 應用於每個區段的資料錐形窗。可以是視窗函數名稱、指定視窗長度和函數的元組,或陣列 (預設:
'hann'
)。nperseg (int | None) – STFT 中每個區段的資料點數量。如果
None
(預設),則值由Zxx
的大小決定。noverlap (int | None) – 區段之間重疊的點數 (預設:
nperseg // 2
)。nfft (int | None) – STFT 中使用的 FFT 點數。如果
None
(預設),則值由Zxx
的大小決定。input_onesided (bool) – 如果為 True (預設),將輸入解譯為單邊 STFT (僅正頻率)。如果為 False,將輸入解譯為雙邊 STFT。
boundary (bool) – 如果為 True (預設),則假設輸入訊號在其邊界處已由
stft
延伸。如果為 False,則假設輸入訊號已在邊界處由 stft 截斷。time_axis (int) – Zxx 中對應於時間區段的軸 (預設:-1)。
freq_axis (int) – Zxx 中對應於頻率箱的軸 (預設:-2)。
- 傳回:
長度為 2 的陣列元組
(t, x)
。t
是訊號時間的陣列,而x
是重建的時間序列。- 傳回型別:
另請參閱
jax.scipy.signal.stft()
:短時傅立葉轉換。範例
示範這給出
stft()
的反向>>> x = jnp.array([1., 2., 3., 2., 1., 0., 1., 2.]) >>> f, t, Zxx = jax.scipy.signal.stft(x, nperseg=4) >>> print(Zxx) [[ 1. +0.j 2.5+0.j 1. +0.j 1. +0.j 0.5+0.j ] [-0.5+0.5j -1.5+0.j -0.5-0.5j -0.5+0.5j 0. -0.5j] [ 0. +0.j 0.5+0.j 0. +0.j 0. +0.j -0.5+0.j ]] >>> t, x_reconstructed = jax.scipy.signal.istft(Zxx) >>> print(x_reconstructed) [1. 2. 3. 2. 1. 0. 1. 2.]