JavaScript神经接口实验

该材料的作者(我们今天将其翻译发表)说,在过去的几年中,他注意到对神经技术的稳定兴趣。 在本文中,她想谈谈她使用各种硬件和软件系统进行的实验,这些系统可以让您在大脑和计算机之间建立通信。



背景知识


我没有基础的计算机教育(我研究过广告和市场营销)。 我掌握了大会课程的程序设计。

在寻找第一份工作时,我开始尝试使用JavaScript和其他设备。 特别是,我的第一个项目是使用Leap Motion通过手臂运动来组织Sphero机器人控球。


跳跃运动驱动的Sphero球

这是我第一次使用JavaScript来管理浏览器之外的内容的经验。 它立即称呼“钩住”了我。

从那以后,我花了很多时间从事交互式项目。 每次接受一个新项目时,我都试图为自己寻找越来越复杂的任务。 因此,我一直在不断发展和学习新的东西。

在尝试了各种设备之后,为了寻找另一个有趣的任务,我遇到了NeuroSky脑活动传感器。

神经耳机的首次实验


当我对脑活动传感器的实验感兴趣时,我决定购买NeuroSky神经耳机。 她比其他类似的要便宜得多。


NeuroSky神经耳机

我不知道自己的学历是否足以为这种设备编写至少一些东西(当时我刚刚完成编程课程),所以我决定选择更便宜的东西,以防万一任务变得如此艰巨。对我来说,不浪费太多钱是极其困难的。 幸运的是,已经创建了一个可与耳机配合使用的JavaScript框架,因此开始进行实验非常容易。 特别是,我用注意力评估来控制Sphero球和Parrot AR.Drone直升机。

在实验过程中,我很快意识到这种神经耳机并不是特别准确。 她只有三个传感器,因此她可以获得关于大脑活动的相当粗略的数据。 该设备可以访问每个传感器的原始数据,例如,可以可视化该数据。 但是头戴式耳机只有三个电极这一事实使我们无法根据从头戴式耳机接收到的关于人脑中发生的数据得出任何严肃的结论。

当我决定寻找其他设备来读取大脑活动指标时,我发现了Emotiv Epoc神经耳机 。 我感觉到,与NeuroSky耳机相比,该产品具有更强大的功能,因此我决定购买它以继续进行实验。

在讨论Emotiv Epoc的工作原理之前,我先简单地说一下关于人脑的工作原理。

大脑如何运作


我不能称自己是神经科学的伟大鉴赏家,所以我关于大脑的故事将是很肤浅的。 也就是说,对于那些想更好地了解神经耳机工作原理的人,我想谈谈一些基本的知识。
大脑由数十亿个神经元组成,神经元是处理,存储和传输信息的专门细胞。 大脑的不同部分(由神经元组成)负责各种生理功能。


大脑的不同部位(来源-macmillan.org.uk)

例如,让我们谈谈大脑如何控制运动。 大脑的部分,例如初级运动皮层和小脑负责运动和协调。 相应神经元的信号影响肌肉,从而导致运动。


神经元解剖

就像我说的那样,这是对大脑的非常简单的描述,但是对我们来说最重要的是,可以通过从头皮表面读取大脑的电活动指标,通过脑电图(EEG)来跟踪神经元的活动。

其他技术可用于监视大脑活动,但它们的使用涉及外科手术。 特别是,我们正在谈论脑电描记术-通过这种方法,将电极直接应用于大脑皮层。

现在,我们发现大脑在工作过程中会产生可读取的电信号,下面我们来谈谈Emotiv Epoc耳机。

神经耳机如何工作?


Emotiv公司生产几种类型的神经耳机:

  • 情感洞察力
  • Emotiv Epoc Flex套件
  • 情感时代

Epoc耳机在头部的不同位置具有14个传感器(也称为“通道”)。

下图左图显示了国际脑电图学和临床神经生理学联合会推荐的10-20个电极放置方式。 每个电极对应于大脑的特定区域。 使用10-20系统可使您在创建各种设备和进行大脑科学研究时遵循特定标准。
右图显示了Emotiv Epoc耳机的电极布局。 为了与10-20系统进行比较,高亮显示为绿色和橙色。


国际10-20电极放置系统和Emotiv Epoc耳机的比较

14个Epoc通道-不多,但电极均匀地放在头皮上。 这使我们希望,在Epoc的帮助下,您可以获得关于大脑活动的相当准确的信息。

耳机以每秒2048个样本(SPS)的速度读取传感器。 同时,用户可以使用128或256 SPS的信号采样频率。 该设备能够捕获频率为0.16至43 Hz的脑电波。 大脑有多种节律,其简要特征如下图所示。


脑电波的类型

为什么这很重要? 事实是,根据需要基于脑电图仪构建的应用程序,我们可能需要特别注意一定频率的脑电波。 例如,如果我们需要创建一个程序来帮助冥想者,那么大概我们只会对频率为4-8 Hz的theta波感兴趣。

在了解了脑电图的基本原理之后,让我们谈谈Emotiv Epoc和相关软件的功能。

Emotiv Epoc功能


Emotiv软件不是开源的;访问原始传感器信号需要特殊许可。 在正常情况下,使用Emotiv Epoc时,可以使用以下选项:

  • 使用加速度计和陀螺仪测量表征用户头部在空间中位置的指示器。
  • 测量唤醒,参与,放松,兴趣,压力,注意力的水平。
  • 识别面部肌肉运动,从而了解用户的面部表情。 例如,我们正在谈论眨眼和微笑。
  • 识别心理命令(动作和转弯)。

为了使用心理命令的识别,用户必须首先训练系统 。 训练数据另存为文件。

如果要为Emotiv Epoc开发自己的程序,则可以使用Cortex API和相应的SDK(在3.5版发行后不再提供其支持)。 如果要使用JavaScript,可以看一下我的开发-Epoc.js库。

Epoc.js库


Epoc.js是一个框架,旨在使用JavaScript组织与Emotiv Epoc和Insight设备的交互。 该框架使开发人员可以访问Emotiv系统的上述功能,并允许与仿真器进行交互。
这是基于Epoc.js的最简单的项目:

const epoc = require('epocjs')(); epoc.connectToLiveData('path/to/profile/file', function(event){  var action = event.blink === 1 ? 'blinking' : 'not blinking';  console.log(action); }); 

在此代码示例中,我们插入Node.js epocjs模块并实例化相应的对象。 然后,我们调用此对象的connectToLiveData方法,将其路径传递给文件,其中包含训练系统后获得的用户数据和回调函数。 事件对象传递到此函数,其中包含可以跟踪的各种属性。 例如,如果我们希望程序响应闪烁,则event.blink属性。

每个相似的属性都可以设置为0或1。该属性值的单位表示系统记录了相应的事件。 这些属性的完整列表可以在此处找到。

所描述的库是使用Emotiv C ++ SDK,Node.js和Node.js的三个模块创建的:Node-gyp,Bindings和Nan。 在其开发过程中,使用了一种现在可以认为已过时的方法。 现在可以实际使用N-API了

在讨论了神经耳机的各种功能以及以编程方式使用它们的方法之后,我将讨论我创建的使用神经接口的几个原型。

样机


▍1。 琴键


这是控制眼睛运动的键盘的外观。


通过眼球运动控制的原型键盘

这是我使用Emotiv Epoc的第一个项目。 我很想知道是否有可能使用允许用户通过眼动与计算机交互的神经耳机创建简单的界面。 例如,当您向右或向左看时,键盘上相应的键会突出显示。 为了“点击”突出显示的键,您需要眨眼。 相应的字母出现在键盘上方的字段中。

这个项目看起来非常简单,但是最重要的是它可以工作。

▍2。 网络录像机


在第二个项目中,我使用了心理命令。 创建它之后,我想了解一下是否可以控制位于三维空间中的对象。


思想驱动的Web界面

在这里,为了创建一个简单的三维环境,我使用了Three.js库,Epoc.js库用于识别思维命令,Web套接字用于将数据从服务器发送到客户端。

▍3。 物联网


从第三个项目开始,我想探索使用思维命令控制真实设备的可能性。 我对使用JavaScript进行物联网开发很感兴趣,所以我很想知道如果您将Parrot直升机和神经耳机结合起来会发生什么。


四旋翼

上面描述的所有项目,创建的所有原型都是我创建的非常简单的开发,目的是在实践中测试一些想法并评估神经接口的可能性和局限性。

神经接口限制


“神经接口”一词听起来很神奇,当事实证明计算机可以由思想的力量来控制时,这似乎是未来,但实际上,神经计算机技术仍然有很多局限性。

training需要培训


用户必须进行系统培训,这是很正常的事情,在此期间,必须记录脑电波并将其与某些团队进行比较,但是对于许多人来说,此步骤是采用新技术的障碍。 我很难想象有人会花时间训练神经计算机系统,除非有人真的需要这样的系统,并且与此同时,她识别出心理命令的准确性将非常高。

▍延误


当我根据计算机对心理命令的理解来开发原型时,我发现在我开始思考的那一刻到程序对该思想做出反应的那一刻之间存在一些延迟。

我认为这里的要点是原型中使用的机器学习算法实时从设备接收数据。 为了认识到他以前研究过的思想,他需要在一定时间内收集指标。

这会影响可以基于神经接口构建哪些程序。 例如,一个帮助冥想的程序看起来很真实,因为大脑状态变化和程序反应之间的延迟不会特别影响这种程序的结果。 但是,如果人们着手制造受思想控制的轮椅之类的东西,那么延误的问题就变得更加尖锐,从而使这种发展受到质疑。

▍无创技术和准确性


脑电图扫描仪非常适合日常生活中的日常使用。 通过在传感器上涂抹特殊的凝胶剂就足以戴上耳机,然后就完成了。 但是,大脑产生的信号是从头皮读取的,而不是从大脑本身的表面读取的,这削弱了此类信号的准确性。

如果我们谈论采用指标的频率,那么在现有设备中就非常好。 关于获得的数据的空间特性,不能说相同的话。 脑电图设备只能读取源自大脑靠近头部表面的部分的信号。 使用类似的方法不可能找出大脑深层结构中正在发生的事情。

▍公众认可


神经耳机不是最漂亮和最熟悉的设备。 我认为,只要这些头戴式耳机看起来像现在一样,就不太可能在公共场所佩戴。 随着技术的发展,可能会制造出可以隐藏在帽子等附件中的设备,但是即使在这里,您也可能会遇到这样的问题,即长时间佩戴这些设备会带来不便。

脑电感应器应该非常接近头皮,以定性地显示大脑活动。 如果戴上耳机后几乎感觉不到他们的压力,随着时间的流逝,它会开始引起不适。 此外,如果您还需要在传感器上涂抹凝胶,这将成为神经耳机广泛分布的又一障碍。

如您所见,神经接口领域的当前状况表明它们不太可能普及。 但是,如果我们谈论未来,那么我们可以说这类设备具有有趣的前景。

神经接口功能


如果考虑到当前的技术状况并考虑它们将来可能会变成什么样,则可以为它们的应用找到几种选择。

▍帮助残疾人


我希望使用神经耳机来帮助残疾人过上更充实的生活,变得更加独立。

这正是我创建第一个原型时所想的-由眼球运动控制的键盘。 我的这项开发工作远没有达到实际应用的水平,但是在进行该项目时,我很想了解一种完全负担得起的消费电子设备是否真的可以帮助某人。 并非每个人都可以使用复杂的医疗系统,而令我感到很高兴的是,可以在网上商店免费购买的价格不贵的Gizmo能够解决重要且必要的任务。

▍心理实践


心理练习,特别是-冥想-这是神经耳机的应用领域,如今已经引起了人们的关注(例如, Muse耳机有助于冥想)。 这是关于帮助想要冥想的人,做正确的一切。

▍帮助解决健康问题


如果神经耳机能够像手机一样渗透到我们的生活中,那么我们也许能够创建能够应对健康问题的应用程序。 例如,如果有一些应用基于对大脑活动的分析,能够帮助对抗中风,惊恐发作和癫痫发作,那就太好了。

labor提高劳动生产率


神经头戴式耳机可以帮助冥想,这意味着您可以真正找出一个人一天中什么时候最专注。 通过定期戴上耳机获得的这些信息可以帮助您了解何时最好进行一些活动。 您甚至可以想象,工作时间表将根据人员的个人特征来组织,这将提高其工作效率。

▍艺术


我喜欢主动在下班时间探索艺术与技术交汇处的现象。 我认为,不应低估与神经接口相关的这一方面的工作,因为它们虽然看起来“轻而易举”,但有助于更好地理解技术,这将在更“严重”的应用场合中发挥作用。

大脑电活动传感器与其他传感器的组合


最近,我想到了不应将EEG传感器视为完全独立的传感器。 我们的大脑通过感官感知世界。 他没有眼睛就看不见,没有耳朵就听不到。 因此,如果我们想充分利用大脑电活动的数据,则可能需要追踪其他生命体征。

这里的主要问题是,所有这些都可能导致人们实际上会被各种传感器所困扰。


这里传感器太多吗? (插图来源-cognionics.net)

也许没有人会持续佩戴上图中描绘的传感器。

Openbci


几周前,我获得了一些新东西-OpenBCI软件包 。 我的下一步是研究从EEG传感器获得的原始数据,并将机器学习方法应用于这些数据。 OpenBCI是一个开源项目,因此在我看来,他们的开发非常适合此目的。 我仍然没有对他们的耳机进行太多工作,因为现在我只有足够的时间将其连接到计算机并进行配置。 这就是它的样子。


Openbci

总结


该材料的作者说,他继续研究神经接口。 我们希望她的故事能对那些对此主题感兴趣的人有所帮助,但又不敢进行实际操作,将其应用于神经耳机的第一步。 如果您对所有这些内容都感兴趣, 是我们的另一本有关Muse的神经耳机和JavaScript出版物。

亲爱的读者们! 您打算尝试使用神经耳机吗?

Source: https://habr.com/ru/post/zh-CN433874/


All Articles