【个人博客主页源码】【2021测算源码新版】【公司mybatis封装源码】EEG伪迹滤波 源码_eeg信号滤波

时间:2024-11-15 05:39:48 分类:javascript源码跟踪 来源:溯源码信息消除方法

1.EEGLAB系列教程4:在 EEGLAB 中预处理数据1
2.如何使用Cartool工具包分析EEG源成像?
3.基于Matlab、迹滤EEGLab和ERPlab的波源偏侧化差异波(N2pc/Pd/CDA )成分分析方法
4.手把手系列教程||使用EEGLAB2023版对脑电数据进行预处理

EEG伪迹滤波 源码_eeg信号滤波

EEGLAB系列教程4:在 EEGLAB 中预处理数据1

       大家好,我是信号陈锐,今天要分享的滤波是EEGLAB数据预处理的第一步——滤波与重参考。在实际数据分析中,迹滤原始数据通常需要进行预处理以去除噪声和伪迹,波源个人博客主页源码保证信号的信号准确性。

       首先,滤波滤波是迹滤关键步骤。通过高通和低通滤波,波源我们可以选择性地保留大脑神经元产生的信号脑电图(EEG)信号。高通滤波可以去除线性趋势,滤波推荐先使用低通滤波(如Hz),迹滤然后在第二次操作中应用高通滤波,波源避免斜率问题。信号在Tools → Filter the data → Basic FIR filter中,设定好高通截止频率(0.1Hz),然后查看过滤后的数据光谱。

       陷波滤波,即带通滤波,常用于去除Hz或Hz的线路噪声。在处理工频信号对EEG信号的干扰时,这种技术非常有效。

       接下来是重参考,这涉及到将EEG信号从特定的参考电极(如乳突)转换到平均参考。在Tools → re-reference中,可以调用pop_reref函数,创建平均参考。在第一次操作时,会弹出窗口,确认是否将当前参考通道添加到平均参考中。之后,可以随时选择新的2021测算源码新版参考或撤销操作。

       如果在采集时使用了在线参考电极,需要将其添加到离线数据中,可以通过Edit → Channel location编辑通道,添加新通道并设置为参考,如Cz。最后,在重参考界面选择保留旧参考,选择所需的在线电极。

       重参考数据时,可以考虑使用双侧乳突或在无穷远处进行参考变换,以获得更准确的信号表示。这一步完成后,数据预处理基本完成,为后续分析奠定了坚实基础。

如何使用Cartool工具包分析EEG源成像?

       脑电图(EEG)作为重要的神经活动检测手段,其源成像的精确性一直是研究者关注的重点。本文详细讲解了如何使用Cartool工具包进行EEG源成像的分析步骤,包括预处理、滤波、电极插值、ICA分析,以及后续的空间和时间滤波、头部模型构建等。

       首先,预处理阶段处理原始数据,去除伪迹,如电源线干扰和生理信号干扰。时间滤波中,Cartool采用2阶IIR巴特沃思滤波器,优化频率响应,确保伪迹消除。下采样则用于降低内存需求,公司mybatis封装源码同时保持必要的时间分辨率。

       电极插补和ICA分析用于检测并校正伪迹,尤其是眼球运动和心跳等信号。Cartool的ICA处理部分是半自动的,人工检查是必要的。空间滤波则通过间隔加权平均值来平滑异常值,确保源定位的准确性。

       对于可能的不良时段,Cartool提供了自动检测和标记功能,基于信号的统计分析来识别。头部模型构建基于MRI,涉及电导率参数估计,以及电极位置的精确匹配。

       最后,Cartool支持从多通道EEG数据到源分布的逆解过程,包括正则化优化和结果标准化,以提供更准确的源定位和神经活动解读。源定位结果可以是矢量形式或标量形式,具体取决于分析需求。

       通过Cartool,EEG源成像得以从原始数据走向精确分析,对临床癫痫研究和实验神经科学研究都具有重要意义。通过逐步解析,Cartool简化了复杂的EEG源成像过程,使得研究人员能够更有效地探索大脑活动的深层信息。

基于Matlab、EEGLab和ERPlab的偏侧化差异波(N2pc/Pd/CDA )成分分析方法

       N2pc、Pd、CDA均属于偏侧化差异波成分,它们代表着视觉目标在左侧视野与右侧视野(例如,威胁刺激在右侧时,左侧电极点为对侧,神马影视修复源码右侧电极点为同侧)之间的波幅差异。在进行此类ERP成分研究时,必须对左右视野呈现的刺激进行不同的Marker标记,并在分析时分别标记为left和right。

       因此,偏侧化差异波成分的分析比其他常见ERP成分(如N1、P3)更为复杂。齐森青博士曾分享过《N2pc与CDA的BP软件分析方法》[详情可见:brain.com/thread-... ]。然而,考虑到当前脑电数据分析软件的发展更新,本文将基于Matlab、EEGLab和ERPlab等较受欢迎的脑电数据分析软件,讲解偏侧化差异波(N2pc/Pd/CDA)成分分析方法。

       偏侧化成分的分析方法基本一致,即一通百通。因此,我们将以N2pc成分为讲解的重点。N2pc是大脑后部对侧比同侧更负的偏侧事件相关电位,其计算方式为:左半球对侧波与右半球对侧波的平均减去左半球同侧波与右半球同侧波的平均。(如下图以CDA的计算为例,N2pc的计算相同)。

       来源:Luria, R., Balaban, H., Awh, E., & Vogel, E. K. ().The contralateral delay activity as a neural measure of visual workingmemory. Neurosci Biobehav Rev, , -.

       为了便于重复本教程中的基本步骤,进一步交流和学习,我们选取了三名被试的脑电数据作为示例数据(下载链接为:osf.io/8pu6t/,点击文末阅读原文即可跳转)。示例数据来源于:罗禹, 念靖晴, 鲍未, 张静静, 赵守盈, 潘运, 许爽, 张禹. (). 急性应激损害对威胁刺激的注意解除. 心理学报, (1): -.在示例数据中,我们以威胁刺激呈现的位置区分左侧和右侧视野,正确反应试次的Marker值为,错误反应的Marker值为,无反应的Marker为。在进行偏侧化差异波成分分析时,我们一般只分析正确反应的源码导出页面跳转试次(研究有特殊需求的除外)。在示例数据中,Marker或Trigger的信息如下,即实验条件设置如下:

       实验条件设置:

       恐惧-中性:

       Threat-congruent

       恐男-中男,目标刺激在左边:1-

       恐女-中女,目标刺激在左边:5-

       中男-恐男,目标刺激在右边:4-

       中女-恐女,目标刺激在右边:8-

       Threat-incongruent

       恐男-中男,目标刺激在右边:2-

       中男-恐男,目标刺激在左边:3-

       恐女-中女,目标刺激在右边:6-

       中女-恐女,目标刺激在左边:7-

       Threat-Threat

       恐男-恐男,目标刺激在左边:9-

       恐男-恐男,目标刺激在右边:-

       恐女-恐女,目标刺激在左边:-

       恐女-恐女,目标刺激在右边:-

       Neutral-Neutral

       中男-中男,目标刺激在左边:-

       中男-中男,目标刺激在右边:-

       中女-中女,目标刺激在左边:-

       中女-中女,目标刺激在右边:-

       注:1- 为刺激呈现位置,-为探测刺激出现的位置

       在本次教程中,我们将分为一般ERP成分的分析过程和偏侧化差异波成分的分析过程两个主要部分。

       第一部分:一般ERP成分的分析过程

       主要过程:

       1.数据导入。

       2.加载电极点。

       3.滤波[高通滤波(0.1Hz,dB/octave)和低通滤波(Hz,dB/octave)]。

       4.以双侧乳突(M1/M2)平均进行离线重参考,HEO和VEO不进行重参考。并创建Reference.txt。

       5.创建Elist_N2pc.txt。

       6.创建Bins_N2pc.txt。

       7.分段&基线校正

       8.基于分段数据的伪迹检测和拒绝。

       9.试次叠加平均

       具体过程

       1.打开Matlab,然后在Command中输入eeglab,打开EEGLAB。

       2.使用EEGLAB导入数据,示例数据的采集设备为NeuroScan,因此数据导入的步骤依次为:File – Import data-Using EEGLAB function and plugins – From Neuroscan .CNT file。(PS:不同脑电采集设备采集的数据请使用对应的数据导入方式,具体的可查阅EEGLAB help)

       2.加载电极点位置信息,步骤依次为:Edit – Channel Locations

       3.对数据进行滤波,在示例数据中我们将分别进行高通滤波(0.1 Hz, dB/octave)和低通滤波( Hz, dB/octave)。

       3.1 高通滤波

       3.2 低通滤波

       4.对数据进行离线双侧乳突重参考,水平眼电和垂直眼电电极点除外。

       对水平眼电和垂直眼电不进行重参考。删除VEO、HEO两个电极点中下图中蓝色的选中部分

       最终保留如下图所示的内容

       将重参考文件保存到对应的文件夹中备用。

       保存后,点击run运行。

       5.对Marker值进行条件还原或赋值。左侧(Marker:1、2、5、6)和右侧(Marker:3、4、7、8)视野,正确反应试次的Marker值为,错误反应的Marker值为,无反应的Marker为。

       参照下图操作依次进行,最终如下图所示。

       6.我们需要对相同的条件进行打包,即建立BinList。打开记事本,输入如图所示的内容。并保存到对应的位置备用。

       Binlist的更多操作可以查阅:github.com/lucklab/erpl... & github.com/lucklab/erpl...

       之后,我们将导入刚刚保存的Bins_N2pc.txt文件。

       上图为实验中的被试在各条件下正确反应的试次数。

       7.接下来时分段和基线校正。刺激出现前 ms到刺激出现后 ms为时间窗口对连续数据进行分段,并选取–~0 ms脑电作为基线。

       8.伪迹拒绝

       8.1 用Moving Window Peak-to-Peak对VEO进行伪迹拒绝

       8.2 用Step-Like artifacts对HEO进行伪迹拒绝。

       9.试次叠加平均,得到一般的ERP成分。

       第二部分:偏侧化差异波成分的分析过程

       主要过程:

       1.定义电极点位置和刺激呈现的视野位置。

       1.1 分别选取除中线外,需要进行分析的左/右侧电极点。

       1.2 分别选取左右视野呈现的试次条件。

       最终界面如下图所示。

       2.计算对侧和同侧的平均波幅

       3.进行偏侧化差异波计算,用对侧减去同侧。

       4.保存最终的数据

       5.画个图形确认一下。

       扩展阅读:

       EEG/ERP研究中如何获得稳定可信的结果或效应

       荐书EEG/ERP书籍(海外篇)

       脑电数据分析中如何获取相对干净的数据结果?

       ERP数据分析中N2pc/Pd成分置换检验的实现

       ERPLAB中计算差异波(即:对侧减同侧;N2pc\Pd\CDA)

手把手系列教程||使用EEGLAB版对脑电数据进行预处理

       手把手指导:EEGLAB 版脑电数据预处理实战

       在探索神经科学的奇妙世界中,EEGLAB 版为我们提供了一套强大的工具。首先,确保你的计算环境已准备就绪:安装最新版本的Matlab(Ra以上),并下载官方发布的EEGLAB ,或者通过公众号获取包含插件的资源。别忘了添加loadcurry插件,只需在File > Manage EEGLAB extensions中轻松完成。

       接下来,我们以一个静息态EEG数据为例,Hz采样,可从公众号获取。使用loadcurry插件导入Neuroscan curry8格式的数据,如数据文件名sub1.cdt,记得设置KeepTriggerChannel为True,CurryLocations选择False。

       预处理步骤

       首先,对数据进行基本的处理:使用Tools > Change sampling rate功能,将数据降采样至Hz,代码示例如下:

EEG = pop_resample(EEG, );

       对于批量处理,记得编写脚本以节省时间,特别是当数据量大的时候。接着,对数据进行滤波:

       带通滤波:1-Hz,使用Tools->Filter the data->Basic FIR filter,输入这两个频率值,确保滤波设置正确。

       陷波滤波:针对Hz干扰,再次使用Filter the data,选择Notch滤波,清除Hz的噪声。

       接下来,根据需要剔除无关电极,如M1和M2,通过Edit->Select data,选择并删除这些不需要的电极,代码如下:

EEG = pop_select( EEG, 'rmchannel',{ 'M1', 'M2'});

       在数据预处理的过程中,检查和处理坏导坏段至关重要。通过Plot->Channel data,调整时间范围和电极显示,发现并标记不良数据段,然后使用相应工具进行删除。

       去伪迹与ICA应用

       ICA(独立成分分析)是去伪迹的关键步骤。使用pop_runica工具运行ICA,注意识别眼动伪迹,如水平和垂直眼动。数据质量会影响伪迹提取的准确性,通过贝叶斯理论或经验判断,谨慎处理ICA成分。对于大量成分,推荐使用ICLabel插件,其能自动识别高达%的眼动伪迹,并允许用户自定义阈值进行标记。

       设置ICA阈值:从%到%不等,根据研究需求调整。部分不完全分离的ICA可能会导致脑信号损失,所以在分析时需留意。

       完成ICA去伪迹后,可以对数据进行重参考,如全脑平均,代码如下:

EEG = pop_reref(EEG, []);

       对于多被试数据,虽然预处理流程看起来复杂,但大部分步骤可以自动化。建议为每个阶段创建文件夹结构,如降采样、ICA处理、伪迹去除和重参考等,便于后期追踪和修改。

       最后,确保你的数据清晰明了,按照以下步骤操作:

       将cdt文件转换为set文件,Hz采样,移除无用电极,存入 "_step1" 文件夹。

       在_eeglab中检查和处理坏导、坏段,存入 "_preica" 文件夹。

       从 "_preica" 文件夹读取set文件,运行ICA,结果存入 "_ica" 文件夹。

       使用ICLabel处理并保存处理后的数据,自定义阈值去除伪迹。

       在每一步操作后,都要检查数据状态,确保正确无误。记得用pop_subcomp(EEG, [], 0)进行伪迹去除,pop_reref(EEG, [])执行全脑重参考,eeg_checkset(EEG)检查数据,最后用pop_saveset(EEG)保存处理结果。至于获取教程数据,只需输入"EEG预处理数据"即可。

       至此,预处理工作已经完成,你已经掌握了EEGLAB 版的基本操作。期待你在神经科学探索的道路上取得丰硕的成果。

       Part4 感谢

       感谢你跟随我们的EEGLAB 预处理教程,如果你发现任何问题或有改进的建议,欢迎随时指正。祝你科研之路顺利!