流媒体和可视化的脑电图数据从缪斯耳机。
muse的Python项目详细描述
葡萄牙语缪斯
一个从MUSE耳机到MATLAB等的流媒体应用程序 平台。在
要求
代码依赖于用于BLE通信的pygatt 和pylsl用于Muse流媒体。要获得最佳结果,请使用BLED112。 我们强烈建议在虚拟环境(VE)上安装。您可以使用Anaconda来构建和管理这些ve, 安装和设置conda环境的说明如下here。在
与Python 3.x兼容
与MUSE MU-02和MU-03
注意:如果遇到任何问题,请首先检查常见问题 然后是this存储库的问题部分
入门
要从MUSE传输到MATLAB或其他平台,需要一个Streamer应用程序。 从Streamer侧发送的数据可以被Receiver应用程序接收和使用。 请看下面的图表:
这个项目有两个部分,第一,连接MUSE的UVic MUSE
通过蓝牙,并通过UDP和LSL传输数据。
第二,一个MATLAB工具箱(和MuseUdp.m
),允许用户接收
UVic MUSE通过UDP协议传输数据。
在下面的部分中,我们将介绍UVic MUSE
然后解释第二部分,MuseUdp。在
UVic MUSE安装
在Windows上,我们建议用户安装Anaconda并运行以下所有命令 (包括可选命令)在Python提示中。您可能需要安装 Microsoft Visual C++ Build Tools(~1GB)来自microsoft网站,如果您不使用Python。在
在MacOS和linux上,安装Anaconda(或miniconda), 打开终端,然后执行以下命令:
如果不想使用虚拟环境,请使用终端(Linux和OSx) 或命令提示符(Windows)并跳过可选步骤。
(可选)创建新的conda环境。在
conda create --name muse_env python=3.7
(可选)激活conda环境
^{pr2}$使用pip
安装UVicMUSE
pip install --upgrade uvicmuse
运行UVicMUSE:
运行并使用UVic MUSE打开终端(Linux&OSx)或命令提示符(Windows) 并键入以下命令:
(可选)激活虚拟环境
^{pr2}$运行UVicMUSE:
uvicmuse
如果在Windows中成功地安装了没有conda的UVicMUSE,则可以通过打开“开始”菜单来运行它 输入uvicmuse
图形用户界面:
流式处理程序:
按照下面所示的步骤来流化MUSE感官数据。记住正确指定必需的条目变量 在进入下一步之前。在
- 搜索以获取可用缪斯的列表
- 联系一位缪斯女神。Required Entries=复选框(UDP、LSL、EEG、PPG、ACC、GYRO)
- 启动UDP和LSL上的流式传输(如果启用)。Required Entries=过滤器(高通、低通、陷波)
注意事项:
- 停止流不会断开MUSE(使用此功能更改过滤器配置)
- 断开与缪斯的连接后需要搜索
接收器工具箱(MuseUdp)
在本节中,我们将解释MATLAB工具箱中可用的方法。接受者的主要责任 连接到UDP套接字(与UVic MUSE相同的套接字)并接收正在从MUSE设备传输的数据。在
MATLAB工具箱
从MATLAB文件交换中加载MuseUdp Toolbox。 在MATLAB上打开并安装工具箱。此外,您需要安装Instrument Control Toolbox 建立UDP连接。在
要查看所有可用的方法(函数),请从MuseUdp创建一个对象并为其调用方法:
mu = MuseUdp();
methods(mu);
要从UVic MUSE获取单个样本,请使用:
mu = MuseUdp();
[data, timestamp, success] = mu.get_xxx_sample()
用eeg
、ppg
、acc
或^{xxx
,采样数据可能有不同的大小,eeg
有5个
每采样一个通道,其余传感器返回3个通道数据。在
要读取块中的采样数据,需要指定块大小并调用mu.get_xxx_chunk(###)
,将xxx
替换为sensor type
和###
和块大小。输出大小size(data)
,对于eeg
将是[chunk_size, 5]
,其他的输出大小是[chunk_size, 3]
。在
*注意:由于UDP协议的缓冲区大小是有限的,因此eeg
的每个样本都包含四个字节的时间戳和
4*5=20字节(总共24B)。由于UDP中的默认缓冲区大小是1kB,所以无法获得大于40个样本的块。
我们建议使用get_xxx_chunk()
的多个实例,但您可以通过调用以下函数来更改缓冲区大小:
mu.set_udp_buffer_size(2048) % 2kB buffer
问题
在MacOSx上:应用程序在运行后崩溃:
pip uninstall serial pyserial
conda uninstall serial pyserial
pip install pyserial esptool
引用UVicMUSE
@misc{UVicMUSE,
author = {Bardia Barabadi, Jamieson Fregeau},
title = {uvic-muse},
month = March,
year = 2020,
}
- 项目
标签: