基于小波变换的脑电信号(EEG)多分辨率分析系统
项目介绍
本项目是一个用于脑电信号(EEG)处理的综合分析方案。通过利用离散小波变换(DWT)的多分辨率特性,系统能够将高度非平稳的EEG信号分解为具有特定物理意义的生物学节律。该方案不仅涵盖了从原始数据获取到最终特征提取的全流程,还通过信号重构技术实现了高效的去噪与信号增强。系统旨在为临床癫痫检测、睡眠自动分期、脑机接口(BCI)及情感计算等研究提供核心算法支撑。
功能特性
- 多维度信号仿真:能够合成包含Delta、Theta、Alpha、Beta、Gamma五种标准脑电节律的模拟信号,并自动叠加基线漂移、工频干扰(50Hz)及高斯白噪声。
- 高精度预处理:集成趋势项去除算法(Detrend)与IIR陷波器,有效滤除低频漂移与电力线干扰。
- 多层级节律提取:利用db4小波基进行7层深度分解,精确覆盖0.5Hz至128Hz的频率范围。
- 定量特征评价:自动计算各频带的能量分布、标准差及信息熵,量化大脑活动状态。
- 性能评估闭环:通过计算处理前后的信噪比(SNR)以及SNR提升度,直观展示算法的去噪性能。
- 全方位可视化:提供原始与去噪信号对比、子带重构波形、能量占比饼图以及各级小波细节系数分布图。
实现逻辑与流程
系统代码通过以下逻辑步骤实现EEG信号的多分辨率分析:
- 环境参数初始化:设定采样频率为256Hz,信号时长为4秒,并预定义db4为小波分析的基础函数。
- 模拟EEG源生成:通过正弦函数叠加合成不同频率的典型节律(2Hz, 6Hz, 10Hz, 20Hz, 40Hz),并人工加入0.2Hz的基线漂移和50Hz的窄带噪声。
- 信号预处理:
- 使用线性去趋势函数清除信号在时间轴上的零漂。
- 设计并应用二阶IIR陷波滤波器,精准消除采样频率导致的工频干扰。
- 小波分解执行:执行7层离散小波分解(wavedec),将信号剥离成近似系数(Approximations)与细节系数(Details)。
- 生物节律重构:
-
Gamma (32-128Hz):通过D1与D2细节分量重构。
-
Beta (16-32Hz):由D3细节分量重构。
-
Alpha (8-16Hz):由D4细节分量重构。
-
Theta (4-8Hz):由D5细节分量重构。
-
Delta (0-4Hz):综合D6、D7细节分量与A7近似分量实现完整重构。
- 统计特征计算:
-
能量:计算各分量的平方和。
-
标准差:反映分量幅值的波动程度。
-
简易信息熵:基于归一化能量分布计算Shannon熵,表征信号的复杂度。
- 数据可视化与报告:生成双窗口图形界面,对比时域波形并展示能量分布百分比,同时在控制台输出各项性能指标分析报告。
关键技术与算法分析
- 离散小波变换(DWT):与传统的短时傅里叶变换不同,本项目采用的小波变换能够在高频部分提供高时间分辨率,在低频部分提供高频率分辨率,完美契合EEG信号的瞬态特性。
- Daubechies小波(db4):选用db4小波基是因为其具有良好的正则性和紧支撑性,与EEG信号的波形特征高度匹配。
- 基于能量的信息熵算法:系统通过计算各采样点平方能量在总能量中的占比,利用 $- sum p log_2(p)$ 公式计算熵值,该指标能有效区分正常脑电与突发病理波(如癫痫放电)。
- 信号质量评估(SNR):通过建立“纯净信号之和”与“噪声/残差”的比例,科学评估了小波分解与陷波处理后的信号保真度。
系统要求
- 软件环境:MATLAB R2016a 或更高版本。
- 必备工具箱:Wavelet Toolbox(小波工具箱)、Signal Processing Toolbox(信号处理工具箱)。
- 硬件配置:标准个人计算机,内存4GB以上即可满足计算需求。
使用方法
- 启动MATLAB软件。
- 将系统脚本代码所在的文件夹添加至MATLAB搜索路径。
- 在命令行窗口直接调用主函数运行。
- 系统将自动弹出两个可视化波形窗口,并在控制台打印详细的脑电节律特征报告。