带 EEG 集成的桌面应用程序研究
目录:
概述
本指南的目的是演示如何使用桌面应用程序设置一个简单的 EEG 集成研究。
注意:有关桌面应用程序的更多信息,包括安装指南和应用程序功能的概述,请参阅此页面。
注意:有关桌面应用程序的更多信息,包括安装指南和应用程序功能的概述,请参阅此页面。
研究设置
在研究设置标签下,在 实验功能
列中,向下滚动到 Lab-Streaming-Layer
选项并激活它。有关这些设置的更多信息,请访问此页面。
然后将弹出此文本框,您可以在其中命名输出流。在这里,我们创建了一个单独的流,并保留了默认名称和选项。
在研究设置中创建输出流以建立与 EEG 的连接。
通常,您要为 Labvanced 中生成的事件设置输出流,并将其作为标记流发送到您记录的 EEG,以标记事件,从而可以对 EEG 数据进行与事件相关的分析。设置完成后,您可以在该流上发送单个标记,使用 Labvanced 事件系统非常简单。
简单研究设置
为了本指南的目的,我们将快速设置一项关于 bouba-kiki 效应 的研究,以便为讨论提供基础,并为设置与 EEG 相关的事件以基于以下内容发送标记提供基础:
- 展示了哪种刺激类别(即,bouba 类别 = 圆形; kiki 类别 = 尖锐形状)
- 图片被点击的时间
要查看我们如何设置刺激(用于上下文),请参见该视频的 04:19
分钟标记:
刺激上传过程的快速描述(基于上述视频):
- 从试验系统中,我们创建级别并将其命名为‘bouba’,用于圆形刺激图像,然后创建另一个级别并将其命名为 ‘kiki’ 用于尖锐形状刺激图像。
- 现在在试验系统中显示的 Bouba 条件下,我们单击它并选择对象,然后上传相关的图像文件,选择选项以:i.) 创建与刺激数量相同的试验 ii.) 自动分配它们。
- 然后,我们对另一个条件重复相同的操作,方法是选择条件下的对象并重复该过程。
此时,我们有一个简单的研究,有两种刺激。在我们设置事件(即将到来的部分)之后,最终任务将看起来像这样,点击图像将研究向前移动到下一个试验,同时发送 EEG 标记。
事件设置
现在,对于事件,主要思想是我们希望根据参与者看到的图像种类/类别发送一个 EEG 标记,以及图像点击时发送一个标记。
事件 1:发送标记(帧/刺激出现)到 EEG
对于第一个事件,我们希望 EEG 知道:a) 刺激出现的帧何时开始,但 b.) 知道刺激属于哪个图像类别(即 bouba 或 kiki)。
触发器
Trial and Frame Trigger
→On Frame Start
选择帧开始作为触发器,以确定第一个 EEG 标记的创建时间。
动作
由于我们希望在条件之间切换,我们将需要一个 if/then 动作,在编辑器中:
Control Action
→Requirement Action (If…Then)
要指定第一个条件,我们调用相应的因子变量并将其设为 'bouba'。在编辑器中,通过以下步骤完成:
- 点击
+ Requirement
- 在左侧铅笔图标:
Variable
→Select Variable
选择factor1_tg1_task0
- 在右侧铅笔图标:
Constant Value
→String
→ 输入字符串 bouba
注意:在实验设计过程中,您应该为您的因子赋予唯一且描述性的名称。在上面的示例中,我们使用了默认名称 factor1_tg1_task0 ,但为了结构合理的设计,您应该为您的因子赋予更准确的名称以反映类别(如 '形状')。
一旦满足此 IF
条件,我们 THEN
想要发生以下情况:
Add Action
API Actions
→Send LabStreamingLayer Marker
- 选择之前在‘研究设置’中为此目的创建的流(即 labvanced_stream_1)
- 发送的值:
Constant Value
→String
→ 输入单词 bouba
根据图像刺激条件类型指定 LSL 标记。
我们通过单击 + Add Else If Case
选项为 kiki 条件重复此过程。
工作流程提示:不要为 ‘kiki’ 条件创建第二个事件。而是复制上面的事件(使用顶部的重复图标,在单词 `IF` 旁边),并简单地更改字符串以对应于另一个因子或刺激类型,即 'kiki'。
总结
截至目前,我们已经设置 Labvanced 以在帧开始时(即刺激出现时)发送 EEG 标记(基于刺激形状类型)。
事件 2:参与者响应
现在我们想发送一个标记并测量一些更动态的东西,即图像被点击的时间。在这里,我们还可以量化反应时间并前进到下一个实验(这一切都是基于鼠标点击图像)。
我们可以创建另一个事件,当图像被点击时,EEG 接收到‘点击’的标记。
触发器
User Input
→Mouse Trigger
+ Add Target
→ 选择图像对象(image_1)
选择图像点击作为创建第二个标记的触发器。
动作 1(发送 '点击' 标记到 EEG)
通过以下方式创建新标记:
API Actions
→Send LabStreamingLayer Marker
- LSL 流: 选择
labvanced_stream_1
- 发送的值:
Constant Value
→String
→ 输入单词 Click
动作 2(记录反应时间)
使用 Set / Record Variable
并创建一个标量和数字的变量,以记录从帧开始的鼠标触发时间:
+ Action
Variable Actions
→Set / Record Variable
Select
(绿色按钮) →+ New Variable
(右上角)- 名称: RT
- 格式: 标量
- 数据类型: 数字
- → ‘确定’
- 铅笔图标 →
Trigger (Mouse)
→Trigger Time (From Frame Onset)
动作 3(跳转到下一个实验)
+ Action
Jump Actions
→Jump To
→Next Trial
按照此程序,您的事件将如下所示:
鼠标点击目标图像时应发生的三个动作:i.) 发送标记到 EEG,量化反应时间,并移动到下一个实验。
总结
上述事件的触发是点击特定图像,随后应有以下动作:向 EEG 发送直接的 '点击' 标记,记录帧开始的反应时间(以毫秒为单位)并存储在变量 'RT' 中,然后实验将转移到下一个试验。
此时,一个非常简单的研究设置已经完成,并具备向 EEG 发送标记的结构和能力!
- 两种不同的刺激类型
- EEG 根据以下内容接收标记:
- 显示的刺激类型
- '点击' 发生的时间
- 研究记录反应时间并设置了导航
本地模式
现在在桌面应用程序中,切换回 '本地' 模式显示正在发生同步。
研究正在加载并在桌面应用程序中更新。
几秒后,更新后的研究已被下载,因此在本地版本中反映所有在线所做的更改。
让我们继续进行 EEG 记录会话。
EEG 数据记录会话
要开始 EEG 数据记录会话,当然我们需要上述 Labvanced 研究(及其结构和发送标记的事件)。但是我们还需要一些补充程序(免费),以便为 EEG 注入标记,以及可视化和潜在分析数据的工具。
EEG 设备(Muse 2 EEG)
在本演示中,我们使用的是 Muse 2 EEG 可穿戴耳机。打开 BlueMuse(免费的)程序(用于 Muse 2 EEG 头戴式耳机),单击‘开始流’选项。将弹出第二个窗口,显示 4 个不同的流:EEG 通道、加速度计、陀螺仪等,以及它们各自的采样率。
在 BlueMuse 中启动流(右侧窗口),流出现(左侧窗口)。
这两个窗口现在可以最小化。
Lab 记录器
我们将使用的下一个工具是 Lab 记录器(免费的),这是您可以用来记录您刚刚连接的 LSL 数据流的 LSL 记录软件,并将其保存在 .XDF 文件中。
如果您已经启动了 EEG 系统并启动了 LSL 流,则将在这里看到它们。此时,Labvanced 流尚未启动,因为研究尚未开始。因此,必须启动研究才能启动该流。
顶部流(红色)尚未启动,因为研究尚未开始。启动研究将使该流变为绿色。在右侧,您可以指定保存数据的位置。
一旦研究开始(即在 Labvanced 中打开研究并按 记录
)。一旦研究开始并在等待大厅中,您可以单击 Lab 记录器中的 ‘更新’ 按钮,您就可以看到 Labvanced 流现在已准备好。
注意:在 Lab 记录器程序的右侧,您可以指明文件路径并选择在计算机上保存 Labvanced 流和 EEG 以及其他时间序列源的合并数据流文件的位置。
现在在 Lab 记录器程序中单击 开始
(左上角)以开始记录。
大脑视觉
为了查看一些内容,例如 LSL 流的实时馈送,您需要启动另一个工具,例如 Brain Vision Analyzer(免费的),这是我们在这里使用的 Brain Products 的工具,它提供了一个漂亮的可视化,展示正在记录的内容。
点击 连接
后,所有流应在此处显示。您也可以单击 Labvanced 流并单击 确定
。
现在,我们可以开始实验并开始记录和可视化 EEG 数据!
Brain Vision 中的 EEG 实时流的预览。
当研究中有点击或响应时,您将在 Brain Vision 程序底部的 EEG 流中看到标记出现。
在这个尺度上,“点击”标记和条件标记并不是那么独特。这是因为在点击图像后的毫秒内,为新试验设置了条件标记,因此它们在这里一起出现,视觉上重叠。
在 Labvanced 中创建的标记根据条件类型和点击出现在底部。
总体来说,运作得很顺利!
完成记录
现在研究结束了。我们可以通过点击 Lab 记录器程序中的 停止
来停止数据记录。创建并保存文件需要几秒钟。
EEG 数据分析
EEGLAB 独立版
我们想展示的最后一件事是如何分析 EEG 数据。当然,有很多方法可以分析 EEG 数据,比如使用 Python、R 或 MatLab。
我们将使用来自加州大学圣地亚哥分校 (UCSD) 的 EEGLAB 独立版(免费的),它不需要 MatLab 或许可证,仅需一个运行时环境,因此您可以直接检查数据记录。
使用 EEGLAB 独立版选项,所有插件,例如用于加载 .XDF 文件(这是 Lab 记录器的输出格式),都可以直接加载。
从 文件
选项中,转到 导入数据
→ 使用 EEGLAB 函数和插件
→ 从 .XDF 到 . XDFZ 文件
选项,并找到早先指定的用于保存的 Lab 记录器中的文件。然后加载它。对话框将出现以命名导入和数据集。
一旦文件打开,将出现与每个片段的帧数以及事件数量等相关的信息。
来自 EEGLAB 独立版的数据集 [test_1] 的预览。
我们可以转到绘图
→ 通道数据(滚动)
,这是对记录数据的良好概述,您可以查看数据。
打开通道数据并查看记录会话。标记以粉色和绿色列出在顶部。
我们现在不做任何分析,但从这里您可以使用时间戳和片段数据集执行有趣的操作。EEGLAB 提供了丰富的材料和 教程,涵盖广泛的主题。
例如,在 绘图
菜单项下,您可以看到许多选项。这是基于记录数据的某种频谱图。
基于此演示中记录的数据使用 EEGLAB 独立版创建的示例图。
我们希望这对您有所帮助,并展示使用 Labvanced 桌面应用程序快速设置 EEG 研究的方式。谢谢!