ICA独立成分分析去除EEG伪影

article/2025/11/9 5:34:45

目录

      • 介绍
      • ICA假设
      • 方法
      • 组件投影
      • 实验数据样本
        • 移除眨眼和肌肉伪影
        • 一些严重污染的脑电数据

本分享为脑机学习者Rose整理发表于公众号:脑机接口社区 .QQ交流群1:903290195(已满,请加群2),群2:941473018

介绍

眼动,眨眼,肌肉,心脏和线的噪音会严重污染脑电图活动,这在脑电解释和分析中会产生非常严重问题。研究人员已经提出了许多方法来消除EEG记录中的眼球运动和眨眼伪像:

1)仅仅剔除受污染的脑电图epochs会导致收集到的信息大量丢失。
2)通常对EEG和眼电位(EOG)记录上进行时域或频域回归,以获得表征EEG伪影在EEG通道中的出现和扩散的参数。但是,EOG记录也包含大脑信号,因此要消退EOG活性也会不可避免地要从每个记录中减去相关EEG信号的一部分。

由于许多噪声源(包括肌肉噪声,电极噪声和线路噪声)都没有明确的参考通道,因此无法使用回归方法来消除它们。

研究人员提出还有一种更好的选择,就是将ICA方法应用于多通道EEG记录,并通过消除人为因素对头皮传感器的影响,从EEG记录中删除各种伪影。研究结果表明,ICA可以有效地检测,分离和消除EEG记录中的各种伪迹,其结果与使用基于回归或基于PCA的方法获得的结果相比更具有优势。

ICA假设

基于ICA的伪影校正可以通过线性分解从EEG数据中分离并去除多种伪影。ICA方法基于以下假设:
1)在头皮上记录的时间序列是时间上独立的大脑和伪迹活动的空间稳定混合物,
2)并且大脑,头皮和身体不同部位产生的电势之和为在电极上呈线性关系,
3)从源到电极的传播延迟可以忽略不计。

上面的假设2和3对于EEG(或MEG)数据是非常合理的。给定足够的输入数据,第一个假设也是合理的。该方法使用由ICA算法得出的空间滤波器,并且不需要每个伪像源提供参考通道。一旦从数据中提取了不同大脑和伪影源的独立时程,就可以通过消除伪影源的贡献来得出伪影校正的EEG信号。

方法

下图显示了该过程的示意图。在EEG分析中,输入矩阵X的行是记录在不同电极上的EEG信号,列是在不同时间点记录的测量值(左)。ICA找到一个“分解”矩阵W,该矩阵将多通道头皮数据分解或线性分解为时间上独立且空间固定的分量之和。输出数据矩阵的行U = WX,是ICA分量激活的时间过程。逆矩阵的列inv(W)给出了每个头皮传感器(右)上各个分量的相对投影强度。这些头皮重量赋予每种成分的头皮形貌,并为这些成分的生理起源提供证据。例如:

眼球运动应主要投射到具有低通时程的额叶部位。
眨眼应该投射到额叶部位,并具有较大的点状激活。
颞肌活动应投射到频谱峰值在20Hz以上的颞位。
在这里插入图片描述

组件投影

将激活称为未混合成分时间过程矩阵
W = w e i g h t s ∗ s p h e r e ; W = weights * sphere; W=weightssphere;
a c t i v a t i o n s = W ∗ d a t a ; activations = W * data; activations=Wdata;
权重逆矩阵
W i n v = i n v ( W ) ; Winv = inv(W); Winv=inv(W);
(或Winv = pinv(W);如果组件的数量少于通道的数量),则第i个独立分量到原始数据通道上的投影为
p r o j e c t i o n = W i n v ( : , i ) ∗ a c t i v a t i o n s ( i , : ) ; projection = Winv(:,i) * activations(i,:); projection=Winv(:,i)activations(i,:);
第i个分量的投影是分量激活的第i行(即分量时间过程),activations(i,:)与逆矩阵的第i列(即分量头皮图),Winv(:,i)的外积。投影的分量数据具有与原始数据相同的大小,具有相同的基础(即,每行是单个电极,与原始数据相同),并按原始数据单位(例如uV)缩放。标度信息和极性分布在激活波形和映射之间。这意味着分量的真实大小(和极性)由其投影的大小(和极性)给出。
在这里插入图片描述
对于上面显示的数据,所有头皮图都是从31个EEG通道内插,并参考原始的右乳突参考。 对于每个分量,头皮映射图的振幅(由右侧面板的单独缩放的彩色条给出)给出了由垂直蓝线标记的时间点上组件投影的大小。

上面,通过将选定的非伪影ICA成分的总和投影回头皮,获得了无伪影事件相关的大脑信号,
c l e a n d a t a = W i n v ( : , a ) ∗ a c t i v a t i o n s ( a , : ) ; clean_data = Winv(:,a) * activations(a,:); cleandata=Winv(:,a)activations(a,:);
其中[a]为所选非伪影成分数的向量。工具箱中包含一个函数icaproj(),它在一行代码中计算投影。
c l e a n d a t a = i c a p r o j ( d a t a , W , a ) ; clean_data = icaproj(data,W,a); cleandata=icaproj(data,W,a);
在实践中,关键是要确定哪些成分是伪影的。上面,研究人员列出了一些他们发现有用的启发方法。

实验数据样本

移除眨眼和肌肉伪影

下图显示了记录的EEG时间序列的3秒部分及其ICA分量激活,四个选定分量的头皮形貌以及通过从数据中删除四个选定EOG和肌肉噪声分量而获得的伪影校正后的EEG信号。EEG数据(左)中1.8秒的眼睛运动伪影与ICA分量1和2(左中)隔离。头皮图(右中)表明这两个成分说明了EOG活性向额叶部位的扩散。
在这里插入图片描述
消除上面显示的头皮图的四个伪像成分,然后将其余成分投射回头皮通道,即可产生不含这些伪像的伪像校正EEG数据(右)。

请注意,从额叶通道(Fp1,Fp2左面板)中删除眨眼活动可以清楚地显示在原始数据中模糊不清的眨眼过程中发生的额叶alpha活动。

还要注意常规的右额颞颞肌尖峰分量#13(中间部分),尽管很难在原始数据中看到(例如,在通道T4中),但仍通过ICA与其他活动完全分开。

一些严重污染的脑电数据

在这里插入图片描述
(A)由于不良的数据采集设置而导致的EEG时间序列损坏的五秒钟部分;(B)ICA提取的噪声成分(右图)。©通过去除六个选定成分,通过ICA校正伪影的相同EEG信号;以及(D)原始和伪影校正的EEG记录的频谱分析。请注意,与(A)相比,EEG活动更为明显,特别是在通道1和2中,并且降低了线路噪声(60 Hz)和混叠线路噪声频率(接近12 Hz,105 Hz,135 Hz)。

参考文献
Jung T-P, Makeig S, Humphries C , Lee TW, McKeown MJ, Iragui V, and Sejnowski TJ, “Removing Electroencephalographic Artifacts by Blind Source Separation,” Psychophysiology, 37:163-78, 2000 (.pdf, 1.3Mb).
Jung T-P, Makeig S, Westerfield W, Townsend J, Courchesne E, and Sejnowski TJ, "Removal of eye activity artifacts from visual event-related potentials in normal and clinical subjects,"Clinical Neurophysiology 111:1745-58, 2000 (.pdf, 4.9Mb).
Makeig S, Bell AJ, Jung T-P, and Sejnowski TJ, “Independent component analysis of Electroencephalographic data.” Advances in Neural Information Processing Systems 8, 145-151,1996.
Jung T-P, Humphries C, Lee TW, Makeig S, McKeown MJ, Iragui V, and Sejnowski TJ, “Extended ICA Removes Artifacts from Electroencephalographic Recordings”, Advances in Neural Information Processing Systems 10:894-900, 1998.
Jung T-P, Humphries C, Lee TW, Makeig S, McKeown MJ, Iragui V, and Sejnowski TJ, “Removing Electroencephalographic Artifacts : Comparison between ICA and PCA”, In: Neural Networks for Signal Processing VIII, 63-72, 1998.
Jung T-P, Makeig S, Westerfield M, Townsend J, Courchesne E, and Sejnowski TJ, “Analyzing and Visualizing Single-trial Event-related Potentials,” In: Advances in Neural Information Processing Systems, 11:118-24, 1999.
参考于 https://cnl.salk.edu/~jung/artifact.html

本文章由脑机学习者Rose笔记分享,QQ交流群1:903290195(已满,请加群2),群2:941473018
更多分享,请关注公众号


http://chatgpt.dhexx.cn/article/IxIE96CS.shtml

相关文章

fMRI独立成分分析方法(ICA)工具GIFT

软件下载连接: Software - TReNDS (trendscenter.org)https://trendscenter.org/software/下载完成后,在MATLAB中添加其路径即可。 在MATLAB命令行输入gift。打开窗口页面: 1、点击setup ICA Analysis 新建一个gica文件夹,存储…

《大话脑成像》之:独立成分分析

少年,我看你骨骼精奇,是万中无一的武学奇才,维护世界和平就靠你了,我这有本武林秘籍《九阴真经之万军丛中听声辩位分筋错骨取敌将首级之盲源分离大法》,简称,《独立成分分析》,见与你有缘&#…

独立成分分析(Independent Component Analysis,ICA)模型介绍

独立成分分析ICA模型 1 历史背景2 ICA基本模型3 独立与不相关 \qquad 1 历史背景 \qquad 独立成分分析思想和方法最早源于上世纪八十年代几个法国学者的研究工作,尽管当时他们并没有命名其为ICA;在1986年举行的神经网络计算会议上,法国学者Heraull和Jutt…

【详细版】独立成分分析:算法和应用(一)

独立成分分析:算法和应用 翻译原文自己的理解 原文:Independent component analysis: algorithms and applications 作者:A. Hyvarinen, E. Oja 时间:2000年 注:详细版原文太长,分两篇来写;另外…

Python专栏 | MNE数据预处理方法——独立成分分析

关注微信公众号:脑机接口研习社 了解脑机接口最近进展 系列文章目录 Python专栏 | 脑电图和脑磁图(EEG/MEG)的数据分析方法之载入数据 Python专栏 | MNE脑电数据(EEG/MEG)可视化 文章目录 系列文章目录预处理(Preprocessing) 预处理&#x…

学习笔记 | 独立成分分析(ICA, FastICA)及应用

学习笔记 | 独立成分分析[ICA, FastICA]及应用 1 背景说明 2 算法原理 2.1 ICA简介 2.2 形式化表达 3 算法步骤与代码 4 算法改进:FastICA 5 ICA实例与应用 6 小结 概要: 这篇博客和博客学习笔记|主成分分析[PCA]及其若干应用属于一个系列&#xf…

ICA独立成分分析去除脑电伪影

今天分享的这篇利用独立成分分析ICA去除EEG伪影是翻译自jung大神的一篇文章。 目录 1 介绍 2 方法 3 实验数据样本 1 介绍 眼动,眨眼,肌肉,心脏和线的噪音会严重污染脑电图活动,这在脑电解释和分析中会产生非常严重问题。研究…

独立成分分析(ICA)

1.概念 独立成分分析是从多元(多维)统计数据中寻找潜在因子或成分的一种方法.ICA与其它的方法重要的区别在于,它寻找满足统计独立和非高斯的成分。这里我们简要介绍ICA的基本概念、应用和估计原理。 1.1 多元数据的线性表示 统计数据处理及相关领域中的一…

独立成分分析ICA系列2:概念、应用和估计原理.

1.概念 独立成分分析是从多元(多维)统计数据中寻找潜在因子或成分的一种方法.ICA与其它的方法重要的区别在于,它寻找满足统计独立和非高斯的成分。这里我们简要介绍ICA的基本概念、应用和估计原理。 1.1 多元数据的线性表示 统计数据处理及相关领域中的一…

详解独立成分分析

最近在学习数据降维的一些方法(有关数据降维的其他内容请看这篇文章),虽然独立成分分析不算是严格意义上的降维方法,但是它和PCA有着千丝万缕的联系,所以打算专门写一篇文章来学习ICA的相关知识,看了挺多的关于ICA的博文&#xff…

独立成分分析

在已知语音信号方向的情况下,波束形成能明显改善语音质量,提高信噪比;然而在实际环境中,人可能是走动的,即使坐立不动,由于身体的扭曲使得语音到达阵列的方向也是变化的,此时波束形成效果受到限…

独立成分分析(Independent Component Analysis,ICA)原理及代码实现

过程监控中会用到很多中方法,如主成分分析(PCA)、慢特征分析(SFA)、概率MVA方法或独立成分分析(ICA)等为主流算法。 其中PCA主要多用于降维及特征提取,且只对正太分布(高…

清理vdbench后台进程

当我们打开一个终端,用nohup运行vdbench程序。断开连接后,你发现你写的配置文件有误,想关闭已有的vdbench进程。你重新连接上终端,咦,我的jobs命令怎么没有显示我的nohup任务呢?这是因为你的nohup任务的sh进…

Nas性能测试工具-vdbench

版本: vdbench50406 简介: vdbench是一个 I/O 工作负载生成器,用于验证数据完整性和度量直接附加和网络连接的存储的性能。它是一个免费的工具,容易使用,而且常常用于测试和基准测试。 配置参数: 大文…

Linux中vdbench的安装与使用

vdbench是一个 I/O 工作负载生成器,用于验证数据完整性和度量直接附加和网络连接的存储的性能。它是一个免费的工具,容易使用,而且常常用于测试和基准测试。 可以使用vdbench测试磁盘和文件系统的读写性能。 环境:Ubuntu 16.04 …

vdbench和fio测试磁盘性能的对比总结

vdbench和fio测试磁盘性能的对比总结 一、安装 1、安装vdbench,首先安装java:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 其次下载vdbench安装包并进行安装:http://pan.baidu.com/s/1b7XooY&am…

vdbench使用

简介 vdbench是一个 I/O 工作负载生成器,用于验证数据完整性和度量直接附加和网络连接的存储的性能。它是一个免费的工具,容易使用,而且常常用于测试和基准测试。 可以使用vdbench测试磁盘和文件系统的读写性能。 名词解释 vdbench中常用的…

vdbench测试SSD快速入门

介绍 vdbench是一个I/O工作负载生成器,通常用于验证数据完整性和度量直接附加(或网络连接)存储性能。它可以运行在windows、linux环境,可用于测试文件系统或块设备基准性能。我们下面主要以块设备为介绍对象。 下载及安装 下载…

vdbench多主机运行指导

测试工具之vdbench多主机运行 本文介绍vdbench在多机环境下的操作和配置,以及本人在配置过程中遇到的问题和解决方法。 文章目录 测试工具之vdbench多主机运行前言一、vdbench在linux环境下多机运行1.环境参数2.配置说明二、vdbench在windows环境下多机运行1.环境参数2.配置…

Vdbench工具安装使用

一、 概述 1.1 内容简介 Vdbench 是一个命令行使用程序,旨在帮助工程师和客户生成用于验证存储性能和存储数据完 整性的磁盘 I/O 负载。还可通过输入文本文件指定 Vdbench 执行参数。它是一个免费的工具,容 易使用,而且常常用于测试和基准测试…