1、学习Matlab

EEGLAB图形界面建立在强大的Matlab脚本语言之上。要使用EEGLAB构建宏命令和执行自定义和自动化处理的全部功能,就需要能够在Matlab中操纵EEGLAB数据结构。由于时间限制,这个wiki没有提供关于Matlab脚本语言的介绍。相反,用户需要在开始研究之前熟悉Matlab。

2、安装EEGLAB和教程文件
首先下载包含教程数据集的EEGLAB(30MB),附下载地址。
(https://sccn.ucsd.edu/eeglab/downloadtoolbox.php)
解压EEGLAB时,您将获得一个名为“eeglabxxxx”的文件夹(注意:当前版本号“xxxx”将有所不同)。在Windows下,Matlab通常建议将工具箱放在Application/MatlabRxxxx/toolbox/文件夹中(注意:该名称应随Matlab版本的“xxxx”而变化)。在Linux中,Matlab工具箱文件夹通常位于/usr/local/pkgs/Matlab rxxxx/toolbox/和Mac中的“/Application/Matlab_rxxxx”。您也可以将文件夹放在路径上的任何其他位置。

3、启动Matlab和EEGLAB
这里我们将启动Matlab和EEGLAB。
关键步骤1:启动Matlab
Windows:开始,找到Matlab并运行它。
Mac:从dock或应用程序文件夹中的Matlab图标开始。
Linux:打开一个终端窗口,输入“matlab”,然后按enter键。

关键步骤2:切换到EEGLAB目录(文件夹)
您可以通过单击屏幕右上角标有“…”的按钮来浏览目录。这将打开下面的窗口。双击目录即可进入。双击文件夹列表中的“.”可将您提升到上一个层级的目录。一旦找到你想要的文件夹或目录,点击OK。或者,从命令行使用“cd”(change direction)来到达所需的目录。

关键步骤3:启动EEGLAB
在Matlab命令行中输入“eeglab”,然后按enter键。EEGLAB将自动添加到Matlab路径中。

下面的蓝色主EEGLAB窗口将弹出,它有七个菜单标题:文件、编辑、工具、绘图、研究、数据集、帮助,按典型的(从左到右)使用顺序排列。

探索尝试(可选):将EEGLAB添加到Matlab路径
您可能需要将EEGLAB文件夹添加到Matlab搜索路径中,以便下次启动Matlab时能够直接打开EEGLAB。如果您是通过Matlab的图形界面启动的,请转到“文件”菜单项并选择“设置路径”。这将打开以下窗口。

或者,如果从命令行运行Matlab,键入“pathtool”并单击return;这也将调用此窗口。单击标记为Add folder的按钮并选择文件夹“eeglabxxxxx”,然后单击“确定”(EEGLAB将负责添加其子文件夹本身)。在pathtool窗口中点击save,这将使EEGLAB调用函数“EEGLAB”在以后的Matlab命令行中可用。注意,如果您安装的是更新版本的EEGLAB,最好从Matlab路径中删除旧版本(选择,然后点击删除),以避免调用过时的例程。最好不要添加“eeglab”路径及其子文件夹,而是让eeglab管理路径(当您启动“eeglab”时,它会自动添加所需的路径。

4、打开现有数据集
关键步骤4:加载示例EEGLAB数据集
选择菜单项“文件”,然后按子菜单项“加载现有数据集”。在本教程的其余部分中,我们将使用约定:Menu_item>Submenu_item来引用菜单选择(例如,这里选择Load existing dataset子目录来加载数据集)。
在Unix中,将弹出以下窗口:

要了解如何从您自己的数据创建EEGLAB数据集,请参阅有关导入数据和数据事件的教程:
https://sccn.ucsd.edu/wiki/A01:_Importing_Continuous_Epoched_Data
选择文件”eeglab_dataset.set”,位于EEGLAB的“sample_data”文件夹中,也可以在此处下载:
https://sccn.ucsd.edu/mediawiki/images/9/9c/Eeglab_data.set)
然后导入EEGLAB.当数据集被EEGLAB加载时,EEGLAB主窗口显示关于它的相关信息——它的通道数、采样率等。

5、事件标签
在教程数据集中脑电图事件结构字段type、position和latency是为数据集中标记的154个事件中的每个事件指定的。我们接下来编辑事件标签的值。
选择菜单Edit > Event Values 以调出一个窗口,在其中我们可以读取和编辑这些值:

按上面的>、>>、<和<<键来滚动选择标签。现在,我们将简要描述生成示例数据集的实验。

6、示例实验描述
在这个实验中,有两种类型的事件“square”和“rt”;“square”事件对应于显示器中绿色正方形中填充的方块的出现,“rt”表示被试按下按钮。
方块可以显示在屏幕上的五个正方形中的任何一个,一个是绿色的,其他四个是蓝色的,沿着水平轴分布。这里我们只考虑左侧的表示,即位置字段所指示的位置1和位置2(水平视角分别约为5.5度和2.7度)。
在这个实验中,受试者仅关注计算机屏幕上的一个选定位置(绿色方块),只有当方块出现在这个位置时,他们才会快速按下拇指按钮。他们将忽略其他位置(蓝色方块)出现的圆圈。为了减少下载和处理所需的数据量,此数据集仅包含单个受试者左视野注意位置的目标(即“正方形”)刺激。关于这个实验的更多细节,见Makeig等人(Science,2002,295:690-694)。
在EEGLAB数据集中使用事件时,有两个必需的事件字段:type和latency,以及任意数量的其他用户定义的信息字段。这里必须理解字段的名称是由创建数据集的用户定义的,并且可以根据需要创建、保存和加载任意多个事件字段。
还要注意,type和latency(小写)是EEGLAB明确识别的两个关键字,除非导入epoch事件信息,否则这些字段必须由用户定义(注意:如果只定义了field latency,那么EEGLAB将为每个事件创建一个常量默认值为1的字段类型)。除非定义了这两个字段,否则EEGLAB将无法正确处理事件以提取epochs、绘制反应时间等。导入数据教程将解释如何导入事件信息和定义字段。

7、关于此数据集
这里我们描述如何编辑和查看描述当前数据集并作为该数据集的一部分存储的文本字段,选择Edit > About this dataset 。弹出一个文本编辑窗口,允许用户编辑当前数据集的描述。
对于示例数据,我们输入了以下描述,完成后按SAVE。

8、滚动查看数据
在这里,我们将学习如何可视化和拒绝连续EEG通道数据的选定部分。
选择Plot > Channel data (scroll),这将弹出eegplot()下面的滚动数据显示窗口,请注意,此示例数据文件包含的看起来是连续的EEG数据。
为了减少下载时间,这个“伪连续”EEG数据集实际上是通过连接80个独立的3秒数据周期(稍后我们将再次分开)来构建的,这解释了在某些数据通道中可能会看到的一些突然跳变。

绘图窗口的右侧是垂直刻度值(及其单位微伏),表示垂直刻度条的“振幅”。在这种情况下,该值为80(微伏)。同样的值也显示在右下角的编辑框中,我们可以按照下面的说明更改它。通过反复单击“-”按钮或从键盘编辑文本值,将”scale”编辑文本框的值更改为大约50,然后按Enter键更新滚动窗口。

要调整显示的时间范围(即水平刻度),请选择eegplot()菜单项Settings > Time range to display,然后将所需窗口长度设置为“10”秒,如下所示:

然后按OK使指示的更改生效。

要调整显示的通道数,请选择菜单项Settings > Number of channels to display,然后输入要在屏幕上显示的所需通道数(例如“16”)。

减少显示的通道数将返回一个滚动窗口,在绘图的左侧有一个垂直的通道设置滑块。使用它可以在所有通道中滚动显示(垂直)。

要放大数据窗口的特定区域,请选择菜单项Settings > Zoom off/on > Zoom on。现在使用鼠标,在数据区域周围拖动一个矩形以放大它。滚动窗口现在看起来可能与下面的类似。单击鼠标右键再次缩小。使用Setting > Zoom off/on > Zoom off菜单项关闭缩放选项。
要在数据上显示水平(x)和垂直(y)栅格线,请选择Display > Grid > X grid on 或Display > Grid > Y grid on. 。重复此过程以关闭任一网格线。

另外,使用者也可以删除(REJECT)连续数据的任意部分。
关闭当前的窗口,并在主EEGLAB窗口中选择Tools > Reject Continuous Data by eye。出现警告消息则单击继续。要REJECT选定的数据部分,首先在感兴趣的时间区域水平拖动鼠标(按住鼠标左键),将其标记为REJECT。如果您愿意,可以用这种方式标记多个要REJECT的区域。要撤消REJECT标记,请单击标记的区域。

注意:必须禁用缩放以选择部分数据。
现在,要删除标记的数据区域,请单击(右下角)REJECT按钮(上图)。将创建一个新的数据集,删除标记的区域。注意:EEGLAB还将向新数据集事件列表添加新的“REJECT边界”事件,并将这些事件链接到包含在脑电图结构。REJECT边界事件确保后续的数据选择不会跨越非连续的REJECT边界。有关REJECT连续数据区域和数据时期的更多详细信息,请参阅数据REJECT教程。
单击下面的”OK”以创建新的数据集,并删除标记的数据部分。

按”OK”创建新数据集,EEGLAB主窗口现在看起来像:

由于我们执行此删除只是为了说明目的,请通过选择主窗口菜单项Datasets > Dataset 1: Continous EEG data 切换回原始数据集。要删除新创建的第二个数据集,请选择File > Clear dataset(s) 或 Edit > Delete dataset(s),然后输入数据集索引“2”,如下所示,然后按“OK”。

第二个数据集现在将从EEGLAB/Matlab工作区中删除。
(注意:在删除第二个数据集之前,不必切换回第一个数据集。通过输入由空格分隔的索引,也可以从该窗口中一次删除多个数据集。)

EEGLAB合辑 | 第一节 往EEGLAB导入数据相关推荐

  1. EEGLAB合辑 | 第七节 绘制 ERP图像

    为了对ERP效应有一个更好理解,EEGLAB 有一个比较有特色的功能,即绘制 ERP图像.这个ERP图像是一个 2-D图像,其中的横轴是每个epoch的时刻值,纵轴是各个epoch的编号,而该图像中的 ...

  2. 知识图谱应用合辑第一篇:多模态知识图谱的使用领域及最新进展

    1.知识图谱的多模态数据来源 本节探讨多模态知识图谱的问题.前面曾多次提到,知识图谱的数据来源不仅仅是文本和结构化数据,也可以是图片.视频和音频等视觉或听觉形式的数据.多模态就是指视觉.听觉和语言等不 ...

  3. 【太极创客】零基础入门学用Arduino 第一部分 合辑笔记

    [太极创客]零基础入门学用Arduino 第一部分 合辑 笔记大多整理于B站评论区 https://www.bilibili.com/video/BV164411J7GE/?spm_id_from=3 ...

  4. eeglab学习记录(1)-eeglab安装+导入EDF数据

    一.安装Matlab和EEGlab 使用软件:Matlab R2014a +EEGLab V13.6.5 Matlab R2014a 安装:https://blog.csdn.net/qq_29540 ...

  5. eeglab中文教程系列(11)-使用ICA分解数据

    目录 ICA分解数据 绘制component headplots 本教程为脑机学习者Rose发表于公众号:脑机接口社区 .QQ交流群:903290195 ICA分解数据 第一步:导入数据eeglab教 ...

  6. OpenCV仿射变换 SURF特征点描述合辑

    原文:http://blog.csdn.net/poem_qianmo/article/details/33320997?utm_source=tuicool&utm_medium=refer ...

  7. 第一章、第一节 Angular基础

    第一章.第一节 Angular基础 让我们先来看看Angular是如何实现组件模式的. 组件模式 Angular 应用程序使用组件模式.你可能听说过这个模式,它不仅用于软件开发,还用于制造.建筑和其他 ...

  8. 【合辑】数字高程模型科普

    [合辑]数字高程模型科普 文章目录 一.数字高程模型的提出.演变.重要性及定义 二.DEM的重要性 三.DEM的主要采集方式 3.1 摄影测量方法 3.2 合成孔径雷达干涉测量方法 3.3 机载激光扫 ...

  9. 合辑 | 必知的200+基础技术词汇,你知道多少?

    简介: 覆盖Java.Python.前端.数据库.linux.k8s.云原生.微服务八大技术领域的开发者词条,帮你搞懂专业名词! 第一节:Java篇(46个) 1.Java Java是一种广泛使用的计 ...

  10. 【重识云原生】第二章计算第一节——计算虚拟化技术总述

    云平台计算领域知识地图: ​ 楔子:计算虚拟化技术算是云计算技术的擎天之柱,其前两代技术的演进一直引领着云计算的发展,即便到了云原生时代,其作用依然举足轻重. 一.计算虚拟化技术总述 1.1 虚拟化技 ...

最新文章

  1. node mongoose_如何使用Express,Mongoose和Socket.io在Node.js中构建实时聊天应用程序
  2. Microsoft 服务器产品端口
  3. BNUOJ 6038 - Reaux! Sham! Beaux!(模拟)
  4. Servlet页面间对象传递的方法
  5. 【JS 逆向百例】网洛者反爬练习平台第六题:JS 加密,环境模拟检测
  6. CountDownLatch 介绍与举例实现
  7. 新版CSDN中如何快速转载别人的CSDN博客,详细方法与步骤!!!
  8. excel vba真正的动态数组实例-按需定义数组大小
  9. C#中的文件流和文本流
  10. python画柱状图-Python Excel 绘制柱形图
  11. 服务器安装mysql文档_Linux 服务器安装MySQL数据库
  12. 远程协同网络架构photon cloud
  13. 桌游跑团用roll点器,可以自己设置色字的数量和种类
  14. postman接口测试七
  15. UNI-APP实现扫描二维码
  16. 网吧电脑装linux系统下载,网吧游戏服务器操作系统用的是LINUX系统
  17. Android Launcher分析和修改5——HotSeat分析
  18. C++打卡4-宝箱密码
  19. ubuntu安装discourse论坛----结合在apache服务上建立虚拟主机
  20. 解决IIS存储空间不足的问题

热门文章

  1. Qt/QML离线地图瓦片下载工具(瓦片地图)
  2. 谷歌强烈推荐!浏览器助手,让你的浏览器至少提升10个档次!
  3. IDEA 之because it is included into a circular dependency循环依赖的解决办法
  4. 金融理财软件测试项目,大学生创新创业大赛金融理财项目创业计划书18-23-879(15页)-原创力文档...
  5. 【Android 教程系列第 32 篇】如何查看本地已安装的 java jdk 都有哪些版本
  6. Apizza--特别好用的 Http请求模拟工具 PHP写接口然后测试详细教程
  7. 软件编码测试要点总结
  8. 简明Python教程链接
  9. FFmpeg下载秒级 支持各个平台各个版本
  10. win7下载原型软件Axure