python雷达信 处理,信 处理之功率谱原理与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()

功率谱是功率谱密度(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()

更多阅读

脑机接口BCI学习交流QQ群:903290195

文章知识点与官方知识档案匹配,可进一步学习相关知识Python入门技能树首页概览212131 人正在系统学习中 相关资源:Yalefree雅乐简谱打谱软件_打谱软件-WindowsServer工具类资源…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年2月22日
下一篇 2021年2月22日

相关推荐