基于C3和C4通道二阶矩能量的运动想象脑电信号分类系统
1. 项目介绍
本项目设计并实现了一个针对脑电图(EEG)信号的特定分类系统,专注于识别受试者进行左手或右手运动想象的意图。系统利用神经生理学中的事件相关去同步(ERD)现象,即当人想象肢体运动时,大脑对侧运动皮层区域的Mu(8-13Hz)和Beta(13-30Hz)频段能量会发生显著下降。通过定量计算左脑(C3通道)和右脑(C4通道)的二阶矩能量,系统能够快速且有效地辨识受试者的运动倾向。
2. 功能特性
- 模拟信号生成集成:内置模拟数据生成模块,通过合成Mu/Beta基础节律并叠加载波噪声,精准模拟ERD生理现象(对侧能量衰减),便于在无硬件设备的情况下进行算法验证。
- 精细频段过滤:采用4阶巴特沃斯(Butterworth)带通滤波器,严格聚焦于8-30Hz的运动相关频段,有效消除基线漂移和高频噪声干扰。
- 二阶矩特征提取:将复杂的波形信号转化为平滑的能量特征,通过信号平方处理获取瞬时功率,并利用滑动窗口均值化处理,体现信号的统计能量特性。
- 轻量化决策逻辑:基于能量守恒与减弱的对比原理,采用直接比较法进行分类决策,计算资源消耗极低。
- 多维度数据可视化:系统提供典型试验的能量时间曲线图、二阶阶矩特征空间分布图(散点图)以及准确率分析图,直观展现分类效果。
3. 系统要求
- 软件环境:MATLAB R2016b 或更高版本。
- 工具箱需求:Signal Processing Toolbox(信号处理工具箱),用于执行滤波器设计(butter)和零相位滤波(filtfilt)等操作。
4. 实现逻辑与主要计算步骤
#### 第一阶段:参数初始化与仿真建模
系统首先设定采样率为250Hz,定义分析频段为8-30Hz。在模拟数据生成阶段,构造了包含10Hz和20Hz成分的基础信号,通过设置随机种子保证结果可重复性。关键逻辑在于:
- 当模拟左手想象时,对C4通道信号赋予衰减系数(0.6),对C3通道赋予增强系数(1.1)。
- 当模拟右手想象时,逻辑反转,调低C3通道能量。
#### 第二阶段:预处理与频段提取
使用4阶巴特沃斯带通滤波器对C3和C4导联进行处理。为了避免常规滤波产生的相位延迟,系统调用了filtfilt函数进行双向滤波,确保信号波形在时间轴上不发生偏移,这对于准确识别能量变化的时间点至关重要。
#### 第三阶段:二阶矩能量计算
二阶矩在本项目中体现为信号平方的均值。具体步骤为:
- 对滤波后的每个试验(Trial)信号进行平方计算。
- 利用0.5秒的滑动窗口(movmean)计算随时间变化的动态能量曲线,用于可视化。
- 计算整个4秒试验窗口内的平均统计量,作为该试验的最终分类特征:
* 特征1 = Mean(Signal_C3^2)
* 特征2 = Mean(Signal_C4^2)
#### 第四阶段:分类决策与评价
系统通过比较双侧特征值的大小进行推断:
- 若 C3通道能量 > C4通道能量,判定为左手运动想象(因为右脑C4发生了ERD衰减)。
- 若 C4通道能量 > C3通道能量,判定为右手运动想象(因为左脑C3发生了ERD衰减)。
最后,将预测结果与预设标签对比,计算整体准确率。
5. 关键算法与算法细节分析
- ERD 编码机制:这是系统的灵魂。系统没有采用复杂的机器学习模型,而是直接利用生理反馈逻辑。通过人为在模拟数据中植入 $0.6$ 和 $1.1$ 的变动比例,模拟了真实的脑电功率谱密度变化。
- 零相位带通滤波:8-30Hz的滤波范围同时覆盖了Mu节律和Beta节律。这两个节律在运动皮层中对于运动企图最为敏感。
- 特征空间线性可分性:代码中的散点图绘制了以C3能量为横坐标、C4能量为纵坐标的二维空间。理论上,决策边界为一条斜率为1的直线(y=x),该直线能够完美区分两个类别的样本点。
- 滑动窗口均值(Moving Average):在特征展示环节,通过
win_size = fs * 0.5 的窗口处理,滤除了平方运算产生的剧烈波动,使得能量趋势清晰可见。
6. 使用方法
- 启动MATLAB软件。
- 将包含系统代码的工作路径设置为当前路径。
- 在命令行窗口输入主函数指令运行。
- 程序将自动生成包含4幅子图的结果界面,并在命令行显示最终的分类准确率。
- 用户可通过观察“特征空间分布图”来判断C3和C4能量是否存在明显的对等差异。