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)