基于希尔伯特-黄变换(HHT)的脑电信号EEG特征提取系统
项目介绍
本项目实现了一个基于希尔伯特-黄变换(HHT)的脑电信号(EEG)分析与特征提取系统。针对脑电信号的非平稳性和非线性特征,系统通过自适应地将复杂信号分解为具有物理意义的本征模态函数(IMF),并利用希尔伯特变换提取瞬时物理参数。该系统不仅能完成传统的时频分析,还能定量提取反映神经生理状态的关键特征,适用于癫痫检测、脑机接口及睡眠研究等领域的数据预处理与特征构建。
功能特性
- 自适应信号分解:内置经验模态分解(EMD)算法,无需预设基函数,根据信号局部时标特性提取分量。
- 高分辨率时频分析:通过计算瞬时频率和幅值,构建希尔伯特谱,突破傅里叶变换的窗函数约束和海森堡测不准原理的限制。
- 瞬时参数量化:实时提取每个模态成分的瞬时幅值、瞬时相位和瞬时频率,捕捉非平稳信号中的突变信息。
- 多维度特征提取:自动计算各频段成分的能量占比、平均频率及其标准差,为分类算法提供高维特征向量。
- 全方位可视化:集成原始信号观测、IMF模态可视化、希尔伯特时频谱、边际谱及能量分布图。
运行环境
- 软件平台:MATLAB R2016b 及以上版本。
- 工具箱要求:Signal Processing Toolbox(用于信号处理计算)。
实现逻辑与流程
1. 模拟信号仿真
系统首先生成一段包含特定生理意义波形的合成EEG信号,采样频率为500Hz,时长2s:
- Delta波(约2Hz):模拟具有指数衰减特性的低频成分。
- Alpha波(约10Hz):模拟受0.5Hz正弦信号调幅的节律成分。
- Beta波(约25Hz):模拟具有频率调制(1Hz变化率)特征的高频成分。
- 背景噪声:加入适量高斯白噪声以模拟真实的电极采集环境。
2. 经验模态分解算法实现
系统实现了自适应的EMD算法,其核心逻辑如下:
- 极值点检测:通过差分运算寻找信号的局部极大值和极小值点。
- 包络拟合:利用三次样条插值(Spline Interpolation)拟合上下包络线。
- 均值筛选(Sifting Process):计算上下包络均值并减去原始信号,通过迭代(默认10次或满足停止标准)迭代提取IMF分量。
- 残差处理:将提取后的剩余项作为下一级分解的输入,直至满足极值点过少或达到最大层数。
3. 瞬时参数计算
对每一个IMF分量执行希尔伯特变换:
- 解析信号构建:将IMF转化为解析信号形式。
- 相位解包裹:对相位角进行unwrap操作,通过相位差分计算瞬时频率。
- 频率平滑:对异常的瞬时频率值(如负值或超过奈奎氏频率的尖峰)进行截断和修正。
4. 谱分析构建
- 希尔伯特谱(Hilbert Spectrum):在0-60Hz范围内建立高分辨率频率轴,将每个时间点的瞬时幅值投射到对应的频率仓位中,形成能量随时间和频率动态演变的时频分布图。
- 边际谱(Marginal Spectrum):对希尔伯特谱进行全时长积分,反映信号在频率轴上的总能量分布情况。
5. 特征提取模块
系统从每个提取出的IMF中提取三项关键物理特征:
- 能量占比:IMF分量能量占总分解能量的百分比,反映信号的主导成分。
- 平均频率:反映该分量所代表的脑电节律中心频率。
- 频率标准差:反映频率随时间的波动程度,是衡量信号非平稳性的重要指标。
关键函数与算法细节分析
- 信号分解函数:通过嵌套循环实现。外层循环负责控制IMF的解耦层数,内层循环执行筛选过程,通过均值包络的能量比值作为停止准则,确保提取出的分量满足IMF的定义。
- 极值识别逻辑:通过检测信号差分序列的符号变化位置,精确锁定极大值和极小值的索引点,为样条插值提供支撑点。
- 边际谱转换:通过对离散时间点对应的频率映射,实现从时频域向频率域的投影。
使用方法
- 配置MATLAB路径,确保工作目录包含主程序文件。
- 运行主函数,系统将自动生成模拟信号并启动处理流程。
- 控制台将实时打印脑电特征提取报告,列出各IMF的能量与频率特征。
- 系统将依次弹出四个可视化窗口:
- 窗口1:原始信号与分解出的各IMF分量及残差。
- 窗口2:希尔伯特时频谱(热力图形式)与边际谱。
- 窗口3:各模态能量占比的柱状图分布。