一、Matlab与eeglab的版本匹配
确定好Matlab和eeglab的版本匹配问题(其他编程软件和软件包也是要这样处理,先确定版本是否匹配或者兼容)
直接可以用到的文件(就是函数调用),是在set path中有路径的(就相当于是电脑的环境变量)
二、数据预处理(降噪)
1. 数据格式转换
导入原始数据
读数据进行处理
导入数据后的显示
附:导入更多厂家格式的数据
进入下载界面后,下载得到.zip压缩包(里面是两个.m文件),将解压后的问价添加到eeglab文件夹中的plugins
之后,重启eeglab,再保存数据得到.set数据即可(转换数据格式,统一为.set格式)
2. 加载.set数据文件
file --> load existing data
edit --> channel loaction(通过eeglab自带的standard文件为各channel配置location)
关于演变电极:
3. 去除无用电极(如果有,即是选做)
选择无用数据段或电极:
先滤波之后,再进行分段或者是降采样。
4. 滤波(用高通加低通代替带通)(同时0.1-40的话,变成带通)
可以二次滤波(但是范围不能一样)
为了取出工频干扰(50Hz),采用带阻去除干扰,区间为[48,52](选择Notch filter the data instead of pass band)
5. 降采样(根据数据的采样率,选做)
后面是对新的数据文件进行命名。
6. 分段(静息态和任务态),基线校正(任务态,静息态不存在基线)
分段是以所选择的刺激marker为0点,选择一个时间段的脑电数据,其中之前的时间点(要保证这一段数据均值为0 --> 基线校正):
- 若ERP,则是100ms~200ms
- 若时域分析,则是500ms,通常是1000ms
后面的分析范围段,是要在两次刺激发生之间。
分段:只保留反应正确的分段,前提:要有反应的marker.
一种解决方法:将刺激marker和反应marker组合成一个marker
mark是指实验或测试中对特定刺激进行标记或记录。
plot data(scroll):
scale范围一般在50-70(channel为60时),根据数据的波动的变化
7. 去坏段 替换坏通道
三明治法:
看数据找坏通道 - 插补坏通道- 看数据去坏段
剔除坏段
marker无效:
插补坏导
去掉坏段
8. RUN ICA
跑出ICA的各成分:
绘制所有成分的地形图:
附:关于ICA跑出的各种干扰的地形图
肌电:
9. 去除伪迹
10. 极端值
± 100uv
11. 重参考(要确定参考的电极数据良好)
average references–>全脑平均的重参考
数据质量:在线电极>参考电极>分析电极
12. 手动浏览
最后检查数据,观察是否预处理成功,也就是看数据处理后的质量如何
附:任务态、静息态数据处理区别
任务态数据二次滤波和二次分段(都会改变原来一次分段基线校正后的均值),所以都需要进行二次的基线校正。
先进行二次滤波,在进行二次分段(因为滤波后还需要基线校正,直接在二次分段时校正即可)
二次滤波:预处理时的频段和分析时频段不一样时
二次分段:分析的ERPs的分段变成[-0.2, 1]
静息态的数据的上述步骤基本一样,只有分段时没有marker标记,所以分段按照代码的方式进行分段。
三、批处理
代码处理框架:
1.
1. 数据格式转化
2. 通道定位 -- 分段
去坏段替坏导(手动处理)
-
- Run ICA
手动去ICA伪迹成分
-
- 极端值
- 重参考
手动浏览
批处理
[外链图片转存中…(img-MKQ6exJe-1742026036544)]
代码处理框架:
1.
1. 数据格式转化
2. 通道定位 -- 分段
去坏段替坏导(手动处理)
-
- Run ICA
手动去ICA伪迹成分
-
- 极端值
- 重参考
手动浏览