scipy.signal.ShortTimeFFT.

from_window#

метод класса ShortTimeFFT.from_window(win_param, fs, nperseg, noverlap, *, symmetric_win=False, fft_mode='onesided', mfft=None, scale_to=None, phase_shift=0)[источник]#

Создайте экземпляр ShortTimeFFT используя get_window.

Метод get_window используется для создания окна длиной nperseg. Имена параметров noverlap, и nperseg используются здесь, поскольку они более соответствуют другим классическим библиотекам STFT.

Параметры:
win_param: Union[str, tuple, float],

Параметры, передаваемые в get_window. Для окон без параметров, это может быть строка (например, 'hann'), для параметризованных окон — кортеж (например, ('gaussian', 2.)) или одиночное число с плавающей запятой, определяющее параметр формы окна Кайзера (т.е. 4. и ('kaiser', 4.) равны. См. get_window для получения дополнительной информации.

fsfloat

Частота дискретизации входного сигнала. Её связь с интервалом дискретизации T является T = 1 / fs.

nperseg: int

Длина окна в выборках, что соответствует m_num.

noverlap: int

Перекрытие окон в выборках. Относится к hop увеличить на hop = npsereg - noverlap.

symmetric_win: bool

Если True тогда генерируется симметричное окно, иначе генерируется периодическое окно (по умолчанию). Хотя симметричные окна кажутся для большинства приложений более разумными, выбор по умолчанию периодического окна был сделан для соответствия умолчанию в get_window.

fft_mode'twosided', 'centered', 'onesided', 'onesided2X'

Режим БПФ для использования (по умолчанию 'onesided'). См. свойство fft_mode подробности.

mfft: int | None

Длина БПФ, используемого, если требуется дополненный нулями БПФ. Если None (по умолчанию), длина окна win используется.

scale_to‘magnitude’, ‘psd’ | None

Если не None (по умолчанию) оконная функция масштабируется, так что каждый столбец STFT представляет либо спектр 'амплитуды', либо спектральную плотность мощности ('psd'). Этот параметр устанавливает свойство scaling к тому же значению. См. метод scale_to подробности.

phase_shiftint | None

Если установлено, добавить линейную фазу phase_shift / mfft * f для каждой частоты f. Значение по умолчанию 0 гарантирует отсутствие фазового сдвига на нулевом срезе (где t=0 центрировано). См. свойство phase_shift для получения дополнительной информации.

Смотрите также

scipy.signal.get_window

Возвращает окно заданной длины и типа.

from_dual

Создать экземпляр с использованием двойного окна.

ShortTimeFFT

Создать экземпляр с помощью стандартного инициализатора.

Примеры

Следующие экземпляры SFT0 и SFT1 эквивалентны:

>>> from scipy.signal import ShortTimeFFT, get_window
>>> nperseg = 9  # window length
>>> w = get_window(('gaussian', 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)