亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中實現功率譜的原理是什么

發布時間:2021-07-02 15:24:55 來源:億速云 閱讀:570 作者:Leah 欄目:大數據

這篇文章給大家介紹python中實現功率譜的原理是什么,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

功率譜圖又叫功率譜密度圖

功率譜是功率譜密度函數的簡稱,它定義為單位頻帶內的信號功率。它表示了信號功率隨著頻率的變化情況,即信號功率在頻域的分布狀況。

功率譜表示了信號功率隨著頻率的變化關系。常用于功率信號(區別于能量信號)的表述與分析,其曲線(即功率譜曲線)一般橫坐標為頻率,縱坐標為功率。由于功率沒有負值,所以功率譜曲線上的縱坐標也沒有負數值,功率譜曲線所覆蓋的面積在數值上等于信號的總功率(能量)。

python中實現功率譜的原理是什么

知乎用戶CrisYang對功率譜、能量譜、幅值譜之間的關系進行了詳細的說明:

在頻譜分析中幅度和功率是由緊密聯系的兩個不同的物理量:能量能表述為幅值的平方和,也能表述為功率在時間上的積分;功率譜密度,是指用密度的概念表示信號功率在各頻率點的分布情況,是對隨機變量均方值的量度,是單位頻率的平均功率量綱;也就是說,對功率譜在頻域上積分就可以得到信號的平均功率,而不是能量。能量譜密度是單位頻率的幅值平方和量綱,能量譜密度曲線下面的面積才是這個信號的總能量。于是,功率譜、能量譜、幅值譜之間的緊密關系主要表述為:能量譜是功率譜密度函數在相位上的卷積,也是幅值譜密度函數的平方在頻率上的積分;功率譜是信號自相關函數的傅里葉變換,能量譜是信號本身傅立葉變換幅度的平方。

python中實現功率譜的原理是什么

from scipy.fftpack import fft, fftshift, ifftfrom scipy.fftpack import fftfreqimport numpy as npimport matplotlib.pyplot as pltimport warningswarnings.filterwarnings("ignore")fs = 1000#采樣點數num_fft = 1024;"""生成原始信號序列在原始信號中加上噪聲np.random.randn(t.size)"""t = np.arange(0, 1, 1/fs)f0 = 100f1 = 200x = np.cos(2*np.pi*f0*t) + 3*np.cos(2*np.pi*f1*t) + np.random.randn(t.size)plt.figure(figsize=(15, 12))ax=plt.subplot(511)ax.set_title('original signal')plt.tight_layout()plt.plot(x)"""FFT(Fast Fourier Transformation)快速傅里葉變換"""Y = fft(x, num_fft)Y = np.abs(Y)ax=plt.subplot(512)ax.set_title('fft transform')plt.plot(20*np.log10(Y[:num_fft//2]))"""功率譜 power spectrum直接平方"""ps = Y**2 / num_fftax=plt.subplot(513)ax.set_title('direct method')plt.plot(20*np.log10(ps[:num_fft//2]))"""相關功譜率 power spectrum using correlate間接法"""cor_x = np.correlate(x, x, 'same')cor_X = fft(cor_x, num_fft)ps_cor = np.abs(cor_X)ps_cor = ps_cor / np.max(ps_cor)ax=plt.subplot(514)ax.set_title('indirect method')plt.plot(20*np.log10(ps_cor[:num_fft//2]))plt.tight_layout()plt.show()

python中實現功率譜的原理是什么

代碼來源于網絡,本文對代碼進行注釋并整理

python中實現功率譜的原理是什么

功率譜功率譜密度(Power Spectral Density, PSD)函數的簡稱,它定義為單位頻帶內的信號功率。

它表示了信號功率隨著頻率的變化關系,即信號功率在頻域的分布狀況。

功率譜密度的單位用每赫茲的瓦特數(W/Hz)表示,

它的另一種單位 dB,當單位為dB時是因為對數據做了對數處理(10logX)

做對數處理的目的是拉高低振幅成分,便于觀察噪聲中的周期信號

功率譜估計是頻域分析的主要分析手段,我們之前看到的是幅度隨時間變化的腦電波

功率譜展現的是腦電功率隨頻率變化的頻圖。

在睡眠的分期以及智力活動與EEG之間的關系等很多方面,功率譜分析都非常有用。

MNE中專門針對Raw對象(也就是原始腦電信號),有多種繪制PSD圖的方式

1.利用plot_psd()繪制功率譜圖
2.利用plot_psd_topo()在腦地形圖上繪制功率譜圖

下面以plot_psd為例介紹一下繪制PSD的案例。

# 引入python庫import mnefrom mne.datasets import sampleimport matplotlib.pyplot as plt# sample的存放地址data_path = sample.data_path()# 該fif文件存放地址file_name = data_path + '/MEG/sample/sample_audvis_raw.fif'"""讀取數據文件"""raw = mne.io.read_raw_fif(file_name,preload=True)
"""繪制指定通道的功率譜圖"""picks = ['eeg']raw.plot_psd(picks=picks)plt.show()

python中實現功率譜的原理是什么

"""設置更窄頻率范圍設置fmin和fmax來指定頻率的跨度。"""picks = ['eeg']#raw.plot_psd(picks=picks,fmin=0,fmax=100)raw.plot_psd(picks=picks,fmin=0,fmax=80)plt.show()

python中實現功率譜的原理是什么

關于python中實現功率譜的原理是什么就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

怀集县| 北碚区| 简阳市| 青岛市| 宜都市| 凌云县| 新建县| 彰武县| 务川| 莫力| 新龙县| 枞阳县| 康定县| 丽水市| 汶川县| 任丘市| 黎平县| 司法| 烟台市| 津南区| 彭山县| 商都县| 上林县| 筠连县| 丹凤县| 澄迈县| 罗城| 恭城| 托里县| 民和| 社会| 松阳县| 页游| 和平县| 天台县| 胶州市| 土默特右旗| 西丰县| 徐州市| 威宁| 泸州市|