matlab脑电图绘画:2D头皮电位拓扑图和3D皮质层拓扑图

article/2025/11/7 18:44:26

今天刚好又再等实验数据,那我就来分享一下最近写论文所涉及到画图的知识好啦!

1. 本文涉及的背景:

        a. 针对脑电正问题模型,设置电偶极子强度计算了头皮电位,为了直观显示绘制了2D的头皮电位拓扑图

        b. 分别激活不同偶极子,分析各偶极子引起头皮电位差的整体情况,分别计算了RDM(相对差异度)和MAG(放大系数),为了直观显示各电偶极子对RDM和MAG的影响情况,需要绘制3D皮层拓扑图。这个不知道大家是否能理解,如果不能理解那就只需要关注一句话,就是绘制了3D皮层拓扑图就是了。

2. 看本文最重要的是看清楚输入

        a. 2D头皮电位拓扑图的输入是:eeglab读入的电极结构体和头皮电位向量

        b. 3D皮层拓扑图的输入是:源模型+各源点的RDM值(为:偶极子数*1的矩阵,也可以是你想要定义的各源点所对应的强度)

3. 所采用的函数:

        a. 2D电位电位拓扑图:eeglab中的topoplot函数

        b. 3D皮层拓扑图:fieldtrip自带函数ft_plot_mesh

     好了,现在准备工作做好了,可以开始了。首先,明明fildtrip里面自带了函数,为什么我要介绍呢?因为再我作图的时候发现:fiedtrip教程中给的作图教程虽然两个图形都包含了,比如可以用函数 ft_topoplotER 但是它的输入不直观,类似于如下的情况

也就是,我不能直接输入我的头皮电位向量值。所以我只好求助于eeglab的绘图函数了,3D图的话我则确实受了fieldtrip函数里面的教程的启发。

那我们直接上代码:

2D头皮电位拓扑图的绘制:

1)首先我们需要上eeglab的官网下载eeglab的工具包,下载链接如下:

https://eeglab.org/others/How_to_download_EEGLAB.html

下载好放在自己的路径下就好了。

2)用eeglab的函数 readlocs 读入导联的模板,比如:

chanlocs = readlocs('D:******\template\electrode\standard_1020.elc');

3)如果你的导联是经过对准后的,那么为了显示位置的准确性,你需要现更新自己chanpos的位置坐标。再这里我们需要注意:topoplot的坐标看的是 theta radius 两栏。而我们fiedtrip中的坐标是用的xyz,因此需要将笛卡尔坐标系转化为极坐标系,而这个转化当然不是自己乱转了,我们采用eeglab自己写的函数 convertlocs 进行转换。代码如下:

 for i=1:channumchanlocs(i).X = elec_aligned.chanpos(i,1);chanlocs(i).Y = elec_aligned.chanpos(i,2);chanlocs(i).Z = elec_aligned.chanpos(i,3);end    % 将chanlocs的 xyz 用自己对准后的 xyz 替换chanlocs = convertlocs(chanlocs, 'cart2all');   %将笛卡尔坐标系转化为极坐标系

4)最后输入chanlocs和自己的导联电位向量就行了

figure
topoplot(potential,chanlocs,'style','both','electrodes','on');

这样就可以画出头皮电位拓扑图了

至于标签什么的,就自己添一下就好了。

3D皮层拓扑图:

这个就很简单了,直接上代码:

ft_plot_mesh(sourcemodel,'vertexcolor',rdm); lighting gouraud; material dull;light

这里的输入一个是sourcemodel,一个是rdm,其中rdm的维度为偶极子数*1,其实就是表示sourcemodel里面每个pos点的强度就可了。其他也没什么可需要注意的了,直接上图。

感觉在这里写的时候好像很轻易似的,但是自己在下面研究的时候花了老鼻子劲了,fieldtrip的教程做得真的不咋地,他的站内搜索功能还时灵时不灵,让人很是无奈啊。今天写出来希望给能跟我一样苦恼的人一点帮助,如有问题也希望大家批评指正,谢谢!

-----------------------------------------------------思想觉悟的分割线----------------------------------------------------

好了正事讲完,这两天感触颇多,和大家共分享一下。

        首先,这两天刷了《觉醒年代》,跟着剧中的人物去经历,去悲喜。内心着实被深深震撼,为那个时代的友谊感动,为那个时代为了家国勇于献身的精神动容,为那个时代大家为了救国不断修炼自身品德的精神而振奋,也被那个时代的和而不同,极具包容性深深吸引,但是也为那个时代的种种病态现象而愤怒伤心……看完之后我想到了一句话:这是最坏的时代,也是最好的时代。那个时代动荡不堪,人民处于水生火热之中,是最坏的时代,却因为有这样一群可爱的人们而让人深深感受到了人性的美好!

        然后,我看到了大家在上面评论说:“你们看到了吗?你们所追求的时代已经来临”,我也不知道是不是真的来了。或许未必,他们所心向往之的那个时代至少应该是一个包容的时代,而现在呢?因为受不了学业压力而自杀的情况频频出现,云南劫持小学生的事件,复旦大学的事件……之前也在朋友圈看到一句话:这个世界好奇怪啊。把好好活着的人往死里逼,然后告诉想死的人好好活着。虽然我觉得无论生活给我们的是什么,我们都不应该轻生,但是当时看到这句话觉得感触和难过。总觉得这个看似言论自由,应该极具包容性的世界似乎比之前更压得人难以喘息,那些所谓的大家都赞同的生活方式深深包围住了我们,使我们不敢越雷池一步。每个人都被推着走,内卷越来越严重,但是有几个人真正问过自己最喜欢,最想要的是什么?

        有时候就在想这真的已经是他们想见的那个时代了吗?如果他们知道自己不惜牺牲生命换回来的和平年代,却有人不好好珍惜自己的生命会不会非常气愤,我们仲甫先生那样的真性情会不会直接破口大骂?这明明应该是一个自由的时代啊,为什么我们却看不到那片广阔的天地?仅仅因为眼前的一时失意就想不开了,我很喜欢仲甫先生在狱里唱的苏轼先生的《定风波》,如果失意了,那“何妨吟啸且徐行”呢?

        最后,我觉得没有接触过那便没有话语权,不管是什么,唯心主义也好,形而上也好,如果你要批评它那便先了解它,仲甫先生对儿子陈延年说的不凡放开眼界多接触一些新思想,愿与诸君共勉!


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

相关文章

Flink-APl

目录 自定义Source Tranform map flatMap Fliter KeyBy 滚动聚合算子(Rolling Aggregation) Reduce Split 和 Select Connect 和 CoMap Union Connect 与 Union 区别 自定义Source flink自定义source接收数据 除了以上的 source 数据来源&a…

代码分享 | EEG数据的等效偶极子源定位

文章来源于微信公众号(茗创科技),欢迎有兴趣的朋友搜索关注。 关于偶极子源定位:是指在 64~128 多导头皮脑电图记录的基础上,运用计算机数学模型推算自发或诱发脑电活动的起源,可用于癫痫外科术前辅助棘波…

fieldset在form中的用法(表单简单实例)

fieldset&#xff1a;对表单进行分组&#xff0c;一个表单可以有多个fieldset。 fieldset标签会在包含的文本和input等表单元素外面形成一个方框&#xff0c;legend元素作为标题。 ​ <html> <head> <meta charset"utf-8"> <title>表单&…

leaflet+turf计算离点距离最近线上的点坐标(leaflet篇.35)

听老人家说:多看美女会长寿 地图之家总目录(订阅之前建议先查看该博客) 文章末尾处提供保证可运行完整代码包,运行如有问题,可“私信”博主。 效果如下所示: 下面献上完整代码,代码重要位置会做相应解释 <!DOCTYPE html> <html>

超详细TMS-EEG数据处理教程(下)

文章来源于微信公众号&#xff08;茗创科技&#xff09;&#xff0c;欢迎有兴趣的朋友搜索关注。 上一期的文章TMS-EEG数据处理教程&#xff08;上&#xff09;中详细地介绍了TMS伪影类型和预处理步骤。这期主要讲了完成数据预处理后&#xff0c;再进行一些&#xff08;后&…

使用freesurfer和3Dslicer进行脑区分割和电极定点(详细版)

一、前期准备 Linux系统安装Freesurfer、MATLAB插件spm12、fieldtrip&#xff0c;Windows下载mricron、Slicer3D&#xff08;需要插件SlicerFreeSurfer&#xff09;软件 文件准备 ct 和mri t1 文件&#xff0c;格式为dicom&#xff0c;需要转换为 nii 格式&#xff08;可在s…

EEGLAB及其插件下载安装

EEGLAB是脑电图&#xff08;EEG&#xff09;信号处理的一个基于Matlab工具箱&#xff0c;有GUI界面可快速实现对EEG信号的时域、频域、时频域处理&#xff0c;其安装包及插件下载方法如下&#xff1a; 零、版本对照 对于旧版的matlab&#xff0c;需要使用对应版本的EEGLAB&am…

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

FieldTrip是MEG, EEG, iEEG和NIRS分析的MATLAB软件工具箱。它提供预处理和先进的分析方法&#xff0c;如时频分析&#xff0c;使用偶极子的源重建&#xff0c;分布源和波束形成器和非参数统计测试。 下载 首先下载相应的软件工具&#xff0c;网址如下(需要填写相关信息)&#x…

Brainstorm + Fieldtrip IEEG定位及分区教程

本文是我进入实验室后&#xff0c;针对原本的配准工具fieldtrip在MNI空间映射上不准确的问题&#xff0c;改用的新工具Brainstorm的教程&#xff0c;但因为该工具基本没有可编程部分&#xff0c;因此依然保留了使用Fieldtrip进行前期acpc定位和批处理导出电极触点所在分区的功能…

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

FieldTrip是MEG, EEG, iEEG和NIRS分析的MATLAB软件工具箱。它提供预处理和先进的分析方法&#xff0c;如时频分析&#xff0c;使用偶极子的源重建&#xff0c;分布源和波束形成器和非参数统计测试。 介绍 ft_preprocessing的一种常见用法是完全读取内存中的连续数据。如果数据集…

MNE溯源fieldtrip官网教程

MNE溯源fieldtrip官网教程 Introduction 在本教程中&#xff0c;您可以找到有关如何使用最小范数估计进行源重构的信息&#xff0c;以重构单个主题的事件相关字段(MEG)。我们将使用预处理教程中描述的数据集(基于触发的试验选择、事件相关平均和平面梯度)&#xff0c;我们还将…

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

简介:处理伪影 关于FieldTrip之前介绍过: 《FieldTrip toolbox教程系列(0)-安装、配置与测试》 《FieldTrip toolbox教程系列(1)-预处理-读取连续的EEG和MEG数据》 本教程介绍了如何在FieldTrip中处理伪影的一般方法 由于FieldTrip支持许多不同采集系统的数据&#xff0c;因此数…

fieldtrip学习——1.坐标系介绍(ctf坐标系和acpc坐标系简介)

-------------------------------------滴&#xff0c;菜鸟要从这里开始学习飞行啦&#xff01;-------------------------------------------- 今天刚好在跑程序就把我之前学习fieldtrip老碰到并且栽了好几次跟头的东西跟大家简单介绍一下啦。 我目前主要需要做的是头模型和…

【源码】FieldTrip:MEG和EEG分析的MATLAB工具箱

FieldTrip是用于MEG和EEG分析的MATLAB软件工具箱&#xff0c;由荷兰奈梅根Donders大脑、认知和行为研究所的一组研究人员与合作机构密切合作开发。 FieldTrip提供MEG、EEG和侵入性电生理数据的高级分析方法&#xff0c;如时频分析、使用偶极子的源重建、分布式源和波束形成器以…

一个可以把Google Docs变成GDrive的工具

如何把Google Docs转换成一个在线存储工具&#xff0c;如传闻中的GDrive? 我们刚刚开发了个Google Docs的客户端软件&#xff1a;GoogleDrive, 网站:http://www.gdocsdrive.com. 欢迎大家试用&#xff0c;多提意见。 对于云存储类的应用&#xff0c;目前有很多著名的厂商的解决…

谷歌colab运行自己的项目的一些细节

1.连接谷歌colab from google.colab import drive drive.mount(/content/gdrive) 2.安装相关的包&#xff0c;版本要对应好&#xff0c;注意卸载掉之前的tf&#xff0c;可能存在版本不对应问题 !pip install keras2.1.0 !pip uninstall -y tensorflow !pip install tenso…

linux挂在谷歌硬盘,【Colab系列】挂载谷歌硬盘详解

讲解对象&#xff1a;【Colab系列】 作者&#xff1a;融水公子 rsgz 文章出处&#xff1a;360doc个人图书馆[其他平台均为盗版] 提醒&#xff1a;建议大家电脑浏览我的网页&#xff0c;因为手机浏览网页 代码会自动缩成一行&#xff0c;很不方便 1 首先&#xff0c;要知道谷歌硬…

linux上使用drive从google drive 下载文件和文件夹

linux上使用drive从google drive 下载文件和文件夹 由于之前要下载Darpa的大型数据集&#xff0c;这个数据集仅仅在google drive上可以获取。但是如果手动下载的话&#xff0c;要么一个个文件自己点击要么就是整个打包。 这样子有几个问题&#xff1a; 速度很慢中间不能关闭…

YOLOv5-4.0-google_utils.py 源代码导读

YOLOv5介绍 YOLOv5为兼顾速度与性能的目标检测算法。笔者将在近期更新一系列YOLOv5的代码导读博客。YOLOv5为2021.1.5日发布的4.0版本。 YOLOv5开源项目github网址 本博客导读的代码为utils文件夹下的google_utils.py文件&#xff0c;更新日期为2021.1.14. google_utils.py …

只有一个源视频的Deepfakes简介

Deepfakes 简介 Deepfakes 是人工智能生成的任何人或名人的合成视频&#xff0c;它冒充真实的人&#xff0c;并让他们采取行动或说出他们从未做过的任何事情。 Deepfake 的创建过程在技术上很复杂&#xff0c;通常需要大量数据&#xff0c;然后将这些数据输入神经网络以训练和生…