bundles / scipy 1.17.1 / scipy / signal / _short_time_fft / ShortTimeFFT / from_window
classmethod
scipy.signal._short_time_fft:ShortTimeFFT.from_window
Summary
Instantiate ShortTimeFFT by using get_window.
Extended Summary
The method get_window is used to create a window of length nperseg. The parameter names noverlap, and nperseg are used here, since they more inline with other classical STFT libraries.
Parameters
win_param: Union[str, tuple, float],Parameters passed to get_window. For windows with no parameters, it may be a string (e.g.,
'hann'), for parametrized windows a tuple, (e.g.,('gaussian', 2.)) or a single float specifying the shape parameter of a kaiser window (i.e.4.and('kaiser', 4.)are equal. See get_window for more details.fs: floatSampling frequency of input signal. Its relation to the sampling interval
TisT = 1 / fs.nperseg: intWindow length in samples, which corresponds to the
m_num.noverlap: intWindow overlap in samples. It relates to the
hopincrement byhop = npsereg - noverlap.symmetric_win: boolIf
Truethen a symmetric window is generated, else a periodic window is generated (default). Though symmetric windows seem for most applications to be more sensible, the default of a periodic windows was chosen to correspond to the default of get_window. This parameter is ignored, if the window name in thewindowparameter has a suffix'_periodic'or'_symmetric'appended to it (e.g.,'hann_symmetric').fft_mode: 'twosided', 'centered', 'onesided', 'onesided2X'Mode of FFT to be used (default 'onesided'). See property fft_mode for details.
mfft: int | NoneLength of the FFT used, if a zero padded FFT is desired. If
None(default), the length of the windowwinis used.scale_to: 'magnitude', 'psd' | NoneIf not
None(default) the window function is scaled, so each STFT column represents either a 'magnitude' or a power spectral density ('psd') spectrum. This parameter sets the propertyscalingto the same value. See method scale_to for details.phase_shift: int | NoneIf set, add a linear phase phase_shift /
mfft*fto each frequencyf. The default value 0 ensures that there is no phase shift on the zeroth slice (in which t=0 is centered). See property phase_shift for more details.
Examples
The following instances ``SFT0`` and ``SFT1`` are equivalent:from scipy.signal import ShortTimeFFT, get_window nperseg = 9 # window length w = get_window(('gaussian_periodic', 2.), nperseg) fs = 128 # sampling frequency hop = 3 # increment of STFT time slice SFT0 = ShortTimeFFT(w, hop, fs=fs) SFT1 = ShortTimeFFT.from_window(('gaussian', 2.), fs, nperseg, noverlap=nperseg-hop)✓
See also
- ShortTimeFFT
Create instance using standard initializer.
- from_dual
Create instance using dual window.
- scipy.signal.get_window
Return a window of a given length and type.
Aliases
-
scipy.signal.ShortTimeFFT.from_window