手把手教你EEG脑电数据预处理-操做篇

点击上面"脑机接口社区"关注咱们
python

更多技术干货第一时间送达算法


感谢简书ID:亚内士多德数据库

受权分享微信


EEG脑电数据预处理-操做篇


关于EEG数据预处理的原理,前面已经介绍过了,你们能够查看《手把手教你EEG脑电数据预处理-原理篇》。下面是亚内士多德分享的操做篇。网络


基本步骤

  • 定位通道位置app

  • 删除无用通道机器学习

  • 滤波svg

  • 分段学习

  • 基线校订测试

  • 重参考

  • 下降采样率

  • 插值坏导

  • 独立主成分分析

  • 剔除坏段



导入数据

选择要导入的数据格式


接下来会弹出一个对话框,是否要对数据进行选择性导入,通常都是所有导入,直接点OK便可。


接下来又会再弹出一个对话框,是否要对数据进行命名。基本上在EEGLAB的每一步操做以后都会弹出这样的对话框,询问你是否须要对新产生的数据进行命名,根据本身须要选择便可。


对数据进行初步认识


  • channel per frame:64   指导入的数据有64个通道

  • frames per epoch:一段数据的总长度,是439880采样点

  • epochs:指当前数据的段数,原始数据尚未进行分段,所以显示只有一段

  • events:检测到当前数据一共有202个events

  • sampling rate(HZ):数据的采样率为1000HZ

  • epoch start和epoch end: 这个的分段是从0秒开始,到439.879秒结束。尚未进行分段因此看这个数值没有意义

  • reference: 指数据的参考点,重参考后会显示重参考的电极点,或者average,目前尚未进行重参考因此是unknown

  • channel locations:是否有对通道进行定位,目前显示没有,定位后会显示为yes

  • ICA weights:是否对数据进行了ICA独立主成分分析,分析后会显示yes

  • dataset size:数据的大小


电极定位

默认文件是standard-10-5-cap385.elp,点击肯定便可

channel locations


channel locations


点击OK以后能够进入下一步查看数据

channel locations info


若是检查到某个电极点的坐标信息为空白(如上图所示),多是该通道的名称在加载的模板文件中找不到,那么

  • 若是肯定该通道是根据国际排布系统来肯定的,那能够修改label名称后再点击下方的look up locs来更新通道位置信息,好比上图的VEO改成VEOG,而后更新位置信息以后就能够看到了

  • 若是不是国际排布系统,能够向厂家要电极的坐标位置信息

  • 若是知道该电极点的精确坐标,能够手动输入

  • 双侧乳突的电极点位置可能会根据脑电系统的不一样而不一样,好比TP9 TP10,A1 A2, M1 M2这三对都是指双侧乳突

更新后的电极点坐标


移除无用电极

此处咱们要移除掉两个眼电数据

select data


select data


select data


重参考

此处要将数据转换为双侧乳突平均参考,即TP9,TP10

re-reference


re-reference


重采样

不必定每一个数据都须要进行重采样,可根据须要进行。

re-sampling


re-sampling


滤波

此处选择默认的滤波器进行0.1-30Hz的滤波

filter


依次在第一框中填入0.1和第二个框中填入30进行计算,两个一块儿填表明进行带通滤波,建议分开进行

filter


分段和基线校订

extract epochs


extract epochs


点击OK后会弹出下一个要求基线校订的对话框,默认是event前的数据做为基线来进行校订,点击OK便可。

baseline correction


插值坏导

对数据进行检查,若是发现某个通道的数据坏了,能够用插值的方式来进行校订,此处要校订的通道为FC3,选择插值的通道为它周围的四个电极点,F3,FC1,C3,FC5


  • 第一种方法是代码操做

EEG.data(a,:,:) = mean(EEG.data([b c d],:,:)) ;

其中a表明坏掉的电极点数值,b c d 表明要进行插值平均的电极点数值
若是不肯定通道数值是多少,能够经过Plot - channel locations - by name 来进行查看。


画出通道图以后,能够经过单击通道名字来查看通道数值

channel name


channel name


因此这句代码为

EEG.data(17,:,:) = mean(EEG.data([8 18 26 16],:,:)) ;

这句代码的意思是指,第17个通道的数值,用第8,18,26,16这四个通道数值的平均值来代替。


  • 第二种方法是面板操做,用eeglab的默认算法进行

interpolate electrodes


interpolate electrodes


ICA

使用ICA算法剔除伪迹,此步操做耗时较长

run ICA


由于咱们有一个坏通道的数据是用其余通道的数据生成的,至关于咱们损失了一个有效通道数据,而ICA默认是在全部通道都是有效数据的状况下进行的,因此此处咱们须要进行一些修改,在'extended', 1后面加上'pca', 59,中间用逗号和空格隔开,逗号要用英文输入法下的

run ICA


点击肯定以后会出现一个对话框,显示正在进行ICA计算,计算结束后该对话框会消失

run ICA


在跑完ICA以后建议保存当前数据,在进行伪迹剔除操做。这样作能够保证在剔除不当的时候随时回到未剔除的状态下从新进行选择。

此时会保存为eeglab的.set的格式文件

save dataset


在跑完ICA以后就能够用ICA进行伪迹剔除了

reject ICA


选择要画出的成分数,此处咱们选择默认状态

plot ICA


eeglab提示咱们一张画布只能画下35个图,剩下的会在第二张画布中画出,点击OK便可

plot ICA


plot ICA


此时咱们能够对全部的ICA成分进行查看和标记,点击成分数字,会出现该成分的详细状况。若是以为该成分表明伪迹成分,想要剔除的话,能够先将它标记起来。标记的方式是单机下方绿色的ACCEPT,单击以后会变成红色的REJECT

plot ICA


这一步须要对每个成分进行查看和判断,而后将想要剔除的成分先标记起来。ICA能够进行眼电伪迹,肌电伪迹,坏导伪迹以及心电伪迹等的辨识与剔除,可是此处咱们只进行眼电伪迹的剔除,咱们将第一个成分和第13个成分标记起来,标记了的成分数会变成红色。而后点OK。此时尚未进行剔除操做。

mark ICA


除了上面那种方式以外,还可使用逐个成分画出的方式来查看和标记

plot ICA


plot ICA



剔除ICA成分


remove ICA


eeglab默认两个框都是同样的信息,此时记得把第二个框的信息给清除掉

remove ICA


在接下来的对话框里,咱们能够对剔除了ICA成分和未剔除的数据进行比较

check data


红色表明未剔除的数据,蓝色表明剔除后的数据

全部通道的ERP图


从红色框中的部分能够看到,咱们仍是颇有效地剔除了眼动伪迹的

全部通道单个trial的图


检查确认无误后点击accept进行剔除操做


剔除坏段

  • 绝对阈值法
    此处咱们选择剔除掉超出±100μV的trial。

reject epoch


reject epoch


目视检查法


channel data


逐个trial进行查看,若是发现有伪迹过大的trial想要剔除的话,单击该trial,它会变成黄色。选择完全部trials后,点击下方的reject便可。此处选中的两个trials仅仅做为演示用。

reject trials


保存数据

至此EEG数据的预处理就基本完成了,咱们能够再次将这个数据保存起来,以供下一步操做。


更多阅读

手把手教你EEG脑电数据预处理-原理篇

浙大“强基计划”-脑科学与脑医学方向

ERP大神Steven Luck的线上ERP免费训练营调查

北大读博手记:怎样完成本身的博士生涯?很是具备指导性!

如何识别ICA成分

letswave7中文教程1:软件安装与脑电数据导入

letswave7中文教程2:脑电数据预处理-通道位置分配

letswave7中文教程3:脑电数据预处理-ICA去除伪影

letswave7中文教程4:脑电数据预处理-时域分析

此次我终于弄懂了院士、杰青、长江、百千万人才的区别了以及评选有多难了?评选条件了解一下

眼动追踪与VR

DEAP数据集--一个重要的情绪脑电研究数据集(更新)

EEG数据、伪影的查看与清洗

什么是EEG以及如何解释EEG?

Python-可视化Evoked数据

应用深度学习EEGNet来处理脑电信号

一种基于脑电图情感识别的新型深度学习模型

脑机音乐接口,高效检测用户的情绪状态

将深度学习技术应用于基于情境感知的情绪识别

EEG信号特征提取算法

EEGNet: 神经网络应用于脑电信号

信号处理之倒频谱原理与python实现

信号处理之功率谱原理与python实现

脑电信号滤波-代码实现

运动想象系统中的特征提取算法和分类算法

特征提取算法 | 共空间模式 Common Spatial Pattern(CSP)

功率谱估计-直接法原理与案例

MNE中文教程(16)-脑电数据的Epoching处理

DEAP数据库介绍--来自于音乐视频材料诱发获得的脑电数据

PsychoPy安装与测试案例

PsychoPy文字刺激、图片刺激和光栅刺激

Python机器学习算法随机森林判断睡眠类型


脑机接口BCI学习交流QQ群:941473018

微信群请扫码添加,Rose拉你进群

(请务必填写备注,eg. 姓名+专业/领域+单位)

长按加群

长按关注咱们


本文分享自微信公众号 - 脑机接口社区(Brain_Computer)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索