色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

python 短時傅里葉

老白2年前11瀏覽0評論

Python是一種廣泛使用的編程語言,具有豐富的庫和工具。短時傅里葉(Short-time Fourier transform,簡稱STFT)是一種在頻域分析信號的技術,它可以分析非平穩信號的頻譜結構。Python提供了多種實現STFT的方法,其中最常見的是使用SciPy庫。

# 導入必要的庫
import numpy as np
from scipy.signal import stft
import matplotlib.pyplot as plt
# 創建一個輸入信號
time = np.linspace(0, 10, 1000)
signal = np.sin(2*np.pi*5*time) + np.sin(2*np.pi*10*time)
# 計算STFT
f, t, Zxx = stft(signal, fs=1000, nperseg=100)
Zxx = np.abs(Zxx)
# 繪制結果
fig, ax = plt.subplots()
ax.pcolormesh(t, f, Zxx)
ax.set_ylabel('Frequency [Hz]')
ax.set_xlabel('Time [sec]')
plt.show()

在代碼中,我們首先創建一個包含兩個正弦波的輸入信號,然后使用SciPy庫中的stft函數計算STFT。該函數可以通過fs參數指定采樣率,nperseg參數指定每個窗口的長度(默認為256),并返回STFT帶有可選的復數值,表示幅度和相位信息。我們只保留幅度信息,并使用pcolormesh函數繪制STFT的結果。該函數為時域和頻域之間的二維顏色圖譜。

總體而言,使用Python實現STFT是一種強大的方法,可以幫助分析非平穩信號的頻譜結構,并從中獲取有關信號的有用信息。