简介:处理伪影

关于FieldTrip之前介绍过:

《FieldTrip toolbox教程系列(0)-安装、配置与测试》

《FieldTrip toolbox教程系列(1)-预处理-读取连续的EEG和MEG数据》

本教程介绍了如何在FieldTrip中处理伪影的一般方法

由于FieldTrip支持许多不同采集系统的数据,因此数据中的特定伪影可能与伪影有很大不同。因此,我们应该了解前面描述的伪影剔除(自动/手动)过程的不同方法和可变性。

在自动化程序结束时,请记得在剔除伪影后有必要目视检查数据。

背景:什么是伪影?

一般来说,伪影是数据中某些意外或不想要的特性。更具体地说,它可以被称为对我们使用EEG或MEG系统获取的脑信号的不希望有的贡献。伪影可以是生理的,也可以是非生理的。

FieldTrip如何管理伪影?

FieldTrip处理伪影的方法是:

  1. 首先识别它们;

  2. 然后删除它们。

伪影的检测可以通过可视化的方式完成,或者使用自动例程(或者两者的结合)。在知道伪影是什么之后,可以通过以下方式将其删除

1.剔除包含伪影的数据片段(例如短暂的伪影)

2.从数据中减去伪影的时空贡献(例如线噪声)

对于伪影检测,FieldTrip提供的功能取决于我们的数据是连续的还是基于试验的(即分段之间有空隙,也就是不连续),以及数据是存储在磁盘上还是已经存储在内存中。

在不将完整数据读取到内存的情况下检测伪影,以处理太大而无法一次全部存储在内存中的数据集。在连续的数据中检测伪影时。我们可以应用滤波器(例如一个带通滤波器来放大临时通道上的肌肉伪影),而不必担心由于滤波器而产生的边缘效应(即滤波器振铃)。然而,在分段之后将数据存储在内存中是浏览数据的一种非常有效的方式,有助于可视化。因此,总而言之,没有一种检测伪影的最佳方法:它仅取决于数据属性和个人的偏好。

剔除包含伪影的数据段

在这种类型的伪像检测和剔除中,包含伪像的数据片段将被识别并从数据集中删除。例如,完整试验或部分试验将从数据中完全删除。

手动/视觉检测

在人工伪影检测中,用户可以目视检查数据并确定试验或数据段以及受影响的通道和应移除的通道。视觉检查的结果是一系列嘈杂的数据段和通道。

可用于手动伪影检测的功能函数有:

ft_rejectvisual

ft_databrowser

ft_rejectvisual函数仅适用于已读入内存的分段数据(即试验数据)。它允许我们通过一次显示所有通道(每个试验)或一次显示所有试验(每个通道),或显示所有通道和试验的摘要,我们通过它可以浏览MATLAB图中的大量数据。使用鼠标,我们可以选择应从数据中删除的试验和/或通道。此函数直接返回删除了噪声部分的数据,我们无需调用ft_rejectartifact或ft_rejectcomponent。

如果要对连续数据使用ft_rejectvisual,则可以先使用ft_redefinetrial将其分割成一秒的片段,然后调用ft_rejectvisual。关于分段连续数据的问题在常见问题中进行了说明。

ft_databrowser函数适用于连续数据和分段数据,也适用于磁盘上或已读入内存的数据。我们可以通过它来浏览数据并用鼠标选择包含伪影的数据部分。这些时间片段都有标记。与ft_rejectvisual相反,ft_databrowser函数不返回清理过的数据,也不允许删除不良通道(尽管我们可以从可视化中将其关闭)。在检测到带有伪影的时间段之后,调用ft_rejectartifact将它们从数据中删除(当数据已经在内存中)或从试验定义中删除(当数据仍然在磁盘上)。

值得注意的是,ft_databrowser函数还可用于可视化ICA组件的时间进程,从而轻松地允许您识别与眨眼、心跳和线路噪声对应的组件。注意,对数据进行正确的ICA分离需要在调用ft_componentanalysis之前删除非典型工件(例如电极移动、squid jumps)。确定了不良成分之后,可以调用ft_rejectcomponent将数据投影回传感器级别,排除不良成分。[关于手工处理伪影的更多信息可以在可视化伪影剔除教程中找到。]

自动检测

为了加快处理许多数据集或超大型数据集的速度,并方便使用客观标准的工件,FieldTrip还包括一个自动伪影检测功能的集合。尽管自动伪像检测算法可有效处理行为良好的数据中的已知伪像,然而并不推荐将自动检测功能用作默认方法。

大多数自动伪像检测功能基于过滤数据,然后在通道上组合数据。与此相关的参数是各种线性和非线性滤波,并通过配置选项为每个参数设置数据填充选项。例如,在连续数据集中,这些可能是带通滤波器频率或填充长度。

自动伪影检测的可用功能函数有:

ft_artifact_clip

ft_artifact_ecg

ft_artifact_threshold

ft_artifact_eog

ft_artifact_jump

ft_artifact_muscle

ft_artifact_zvalue

请注意,eog,jump和肌肉检测功能只是ft_artifact_zvalue的包装器,其中将filter和padding选项设置为合理的默认值。[关于伪影自动检测的更多信息可以在自动伪影剔除教程中找到。]

从数据中删除伪影

如果使用手动或自动检测包含伪影的时间片段,则通常会继续使用ft_rejectartifact从后续分析中剔除这些时间段。FieldTrip支持可变的试验长度数据,这允许我们剔除那些包含伪影的数据片段,而保留试验的其余部分。如果你的实验是由很长的试验组成的,这是特别有用的。

减去反映伪影的数据的空间/时间/光谱方面

在这种类型的伪像检测和剔除中,将识别包含伪像的数据的空间/时间/光谱方面,并将其从数据集中删除。例如,从数据中减去某些频谱成分,例如线路噪声。

使用ICA识别伪影

另一种常用的方法是使用ICA(独立成分分析)或PCA(主成分分析)等方法对数据进行线性分解。这些方法包括对数据应用一组空间过滤器,之后数据不再以记录的(头皮)通道级别上表示,而是作为一组虚拟通道或组件表示。在ICA分解的情况下,选择滤波器以产生通道级数据中可用的最大时间上独立的信号。某些伪影(例如由眨眼引起的伪影)通常由一些成分反映出来,这些成分在一定的经验下很容易识别。这些可视识别的成分可以从数据中删除,剩下的成分可以投射回传感器级别。

从数据中删除伪影

如果使用ICA来检测伪像,则通常应将分解后的数据(不包括伪像成分)投影回传感器级别。这是通过ft_rejectcomponent完成的。

后面将通过示例脚本来说明如何使用ICA检测和删除EOG和ECG伪影。

示例脚本

如何将头部运动纳入MEG分析

使用独立成分分析(ICA)删除ECG伪像

使用独立成分分析(ICA)去除EOG伪像

获取软件与数据资源

后台回复"FT",即可获取。

参考:

http://www.fieldtriptoolbox.org/tutorial/artifacts/

文章来源于网络,仅用于学术分享,不用于商业行为,若有侵权及疑问,请后台留言!

如需转载请扫下面微信二维码码,备注"转载"

更多阅读

大脑分区与功能简介汇总

第2期 | 国内脑机接口领域专家教授汇总

精彩长文 | 脑机接口技术的现状与未来!

TensorFlow处理运动想象分类任务

ICA处理脑电资料汇总

收藏 | 脑电EEG基础与处理汇总

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

FieldTrip toolbox教程系列(2)-伪影处理简介相关推荐

  1. FieldTrip toolbox教程系列(0)-安装、配置与测试

    FieldTrip是MEG, EEG, iEEG和NIRS分析的MATLAB软件工具箱.它提供预处理和先进的分析方法,如时频分析,使用偶极子的源重建,分布源和波束形成器和非参数统计测试. 下载 首先下 ...

  2. H2教程系列(一) 简介与安装

    H2教程系列文章目录 第一章 H2入门之简介与安装 第二章 H2入门之创建数据库 简介与安装目录 H2教程系列文章目录 一.简介 1.主要特点 2.附加的功能 3.H2数据库中的组件 二.安装 1.下 ...

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

    目录 ICA/BSS的理论与模型 第5步:计算ICA矩阵 第6步:识别伪影成分 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群:941473018 ICA/BSS的理论与模型 ...

  4. 【CSS 教程系列第 12 篇】什么是 CSS 中的伪类选择器

    这是[CSS 教程系列第 12 篇],如果觉得有用的话,欢迎关注专栏. CSS 的选择器有很多,常用的有 元素选择器.id 选择器.class 选择器.后代选择器.子代选择器.并集选择器.交集选择器. ...

  5. eeglab教程系列(15)-绘制独立成分ERP贡献

    要完成该操作,必须保证已加载数据和电极位置数据,同时还要对数据进行提取epoch,并对数据进行ICA处理,操作如下: 加载数据文件:eeglab教程系列(2)-加载.显示数据 加载位置文件:eegla ...

  6. eeglab教程系列(14)-Working with ICA Components

    在本案例前,先要进行进行ICA数据分解 操作: Tools > Run ICA,具体操作参照eeglab教程系列(12)-使用ICA分解数据的第三步. 1.绘制component spectra ...

  7. eeglab教程系列(13)-学习和删除ICA组件

    研究组件属性的操作:Tools > Reject data using ICA > Reject components by map.操作过程如下: 出现如下界面后,点击"OK& ...

  8. eeglab教程系列(12)-使用ICA分解数据

    ICA分解数据 第一步:导入数据eeglab教程系列(2)-加载.显示数据 第二步:根据教程eeglab教程系列(3)-绘制脑电头皮图中导入位置信息. 做完上两步操作后,可以进行ICA数据分解. 第三 ...

  9. eeglab教程系列(7)-数据叠加平均{1}(Data averaging)

    ERP是Event-related Potentials的简称, 事件相关电位, 是一种特殊的脑诱发电位,通过有意地赋予刺激以特殊的心理意义,利用多个或多样的刺激所引起的脑的电位. 1.在头皮图(sc ...

最新文章

  1. Asp.Net MVC4入门指南(3):添加一个视图
  2. python之operator操作符函数
  3. 即时与及时有什么区别_什么是即时配送它和快递有什么不同,镖滴新势力
  4. 当c语言老师遇到网络崩溃,网络教学搞不定?工科教授来支招!
  5. 大数据分析必须要会的python函数操作!!!
  6. 求两条轨迹间的hausdorff距离_「中考专题」瓜豆原理|第二讲 线段型路径轨迹...
  7. python导入data-Python通过load data导入MySQL数据
  8. 再次荣获最受观众喜爱奖
  9. 对 5G “迟钝”的苹果,该如何后来居上?| 极客头条
  10. 为什么红黑树查询快_为什么工程中都喜欢用红黑树,而不是其他平衡二叉查找树呢?...
  11. pycharm的debug
  12. 前端动画大全:css的transition、css3的animation、Jquery的animate、js的setInterval
  13. 在计算机中 总线简称,微机中的总线一般分为几等
  14. 【精华】多目标跟踪MOT
  15. day02 约束、数据库设计、多表查询、事务
  16. 【软件测试】如何定位web前后台的BUG
  17. Cadence常规通孔焊盘的创建
  18. 第5章 C语言的冒泡排序 (二)
  19. EXCEL VBA常用语句100句
  20. android:ellipsize

热门文章

  1. options请求方式
  2. HashMap源码总结
  3. L1正则化和L2正则化的区别
  4. 小学计算机课标教学大纲的依据,中小学教学大纲为何改成课程标准?
  5. Java 模板变量替换——字符串替换器{}、${}、${}map
  6. 财务分润系统哪家好用?
  7. AD10 画封装经验【突出长度的问题】【 PCB中任意形状封装修改网络名】
  8. html5默认加载s文件夹,『总结』web前端开发常用代码整理
  9. Android 手机开启全局调试xposed插件
  10. 香港科技大学陈浩老师招收博士后和博士生