脑电信号的能量谱代码
时间: 2023-07-03 19:23:22 浏览: 178
脑电信号频谱、能量和功率谱密度分析代码
5星 · 资源好评率100%
以下是一个简单的脑电信号能量谱计算的Python代码示例:
```python
import numpy as np
from scipy import signal
# 生成一个随机的脑电信号
sampling_rate = 1000 # Hz
duration = 10 # seconds
num_samples = sampling_rate * duration
time = np.linspace(0, duration, num_samples, endpoint=False)
signal = np.sin(2*np.pi*10*time) + np.sin(2*np.pi*50*time) + np.random.randn(num_samples)
# 计算功率谱密度
frequencies, power_spectrum = signal.welch(signal, fs=sampling_rate, nperseg=sampling_rate)
# 绘制能量谱
import matplotlib.pyplot as plt
plt.figure(figsize=(8, 4))
plt.plot(frequencies, power_spectrum)
plt.xlabel('Frequency (Hz)')
plt.ylabel('Power spectral density (V^2 / Hz)')
plt.show()
```
这个代码使用`numpy`和`scipy`库生成一个包含10秒钟的随机脑电信号,并使用`signal.welch`函数计算其功率谱密度。然后,使用`matplotlib`库将能量谱绘制出来。请注意,这只是一个示例代码,实际的脑电信号能量谱计算可能需要更复杂的处理。
阅读全文