Expériences d'interface neuronale JavaScript

L'auteur du document, dont nous publions la traduction aujourd'hui, dit qu'au cours des deux dernières années, il a remarqué un intérêt constant pour les neurotechnologies. Dans cet article, elle souhaite parler de ses expériences avec différents systèmes matériels et logiciels qui vous permettent d'établir une communication entre le cerveau et l'ordinateur.



Contexte


Je n'ai pas de formation informatique de base (j'ai étudié la publicité et le marketing). J'ai maîtrisé la programmation dans les cours de l'Assemblée générale.

Lorsque je cherchais le premier emploi, j'ai commencé à expérimenter avec JavaScript et avec différents appareils. En particulier, mon premier projet a été l'organisation du contrôle robotisé du ballon Sphero par le mouvement des bras à l'aide de Leap Motion .


Balle sphérique entraînée par Leap Motion

C'était ma première expérience en utilisant JavaScript pour gérer quoi que ce soit en dehors du navigateur. Il a immédiatement appelé ce qui m'a «accroché».

Depuis lors, j'ai passé beaucoup de temps à travailler sur des projets interactifs. Chaque fois, prenant un nouveau projet, j'ai essayé de me trouver des tâches de plus en plus complexes. J'étais donc en constante évolution et j'apprenais quelque chose de nouveau.

Après avoir expérimenté divers appareils, à la recherche d'une autre tâche intéressante, je suis tombé sur des capteurs d'activité cérébrale NeuroSky .

Les premières expériences avec un casque neuro


Quand j'étais intéressé par des expériences avec des capteurs d'activité cérébrale, j'ai décidé d'acheter un casque neuro NeuroSky. Elle était beaucoup moins chère que d'autres offres similaires.


Casque NeuroSky Neuro

Je ne savais pas si mes qualifications seraient suffisantes pour écrire au moins quelque chose pour un tel appareil (je viens de terminer les cours de programmation à ce moment-là), alors j'ai décidé de choisir quelque chose de moins cher pour que, au cas où la tâche se révélerait être pour moi, il est extrêmement difficile de ne pas gaspiller trop d'argent. Heureusement, un framework JavaScript a déjà été créé pour fonctionner avec le casque, il était donc assez facile de commencer à expérimenter. En particulier, j'ai utilisé mon évaluation du niveau d'attention pour contrôler la balle Sphero et le quadricoptère Parrot AR.Drone.

Au cours des expériences, j'ai rapidement réalisé que ce neuro-casque n'était pas particulièrement précis. Elle n'a que trois capteurs, elle peut donc obtenir des données assez approximatives sur l'activité cérébrale. L'appareil donne accès aux données brutes de chaque capteur, ce qui permet par exemple de visualiser ces données. Mais le fait que le casque ne possède que trois électrodes ne nous permet pas de tirer de conclusions sérieuses sur la base des données reçues de lui sur ce qui se passe dans le cerveau humain.

Quand j'ai décidé de chercher d'autres appareils pour lire les indicateurs d'activité cérébrale, j'ai trouvé le casque neurotransmetteur Emotiv Epoc . J'ai le sentiment que cette chose a des capacités plus sérieuses par rapport au casque NeuroSky, j'ai donc décidé de l'acheter pour continuer mes expériences.

Avant de parler du fonctionnement d'Emotiv Epoc, je suggère en un mot de parler du fonctionnement du cerveau humain.

Comment fonctionne le cerveau


Je ne peux pas m'appeler un grand connaisseur des neurosciences, donc mon histoire sur le cerveau sera assez superficielle. À savoir, je veux parler de quelques choses de base que vous devez savoir pour ceux qui veulent mieux comprendre comment fonctionnent les casques neuro.
Le cerveau est composé de plusieurs milliards de neurones - des cellules spécialisées qui traitent, stockent et transmettent des informations. Différentes parties du cerveau, constituées de neurones, sont responsables de diverses fonctions physiologiques.


Différentes parties du cerveau (source - macmillan.org.uk)

Par exemple, parlons de la façon dont le cerveau contrôle les mouvements. Des parties du cerveau telles que le cortex moteur primaire et le cervelet sont responsables du mouvement et de la coordination. Les signaux des neurones correspondants affectent les muscles, ce qui entraîne des mouvements.


Anatomie des neurones

Comme je l'ai dit, voici une description extrêmement simple du cerveau, mais pour nous, le plus important est que l'activité des neurones puisse être suivie par électroencéphalographie (EEG), en lisant des indicateurs de l'activité électrique du cerveau depuis la surface du cuir chevelu.

D'autres technologies peuvent être utilisées pour surveiller l'activité cérébrale, mais leur utilisation implique une intervention chirurgicale. En particulier, nous parlons d'électrocortographie - avec cette approche, les électrodes sont appliquées directement sur le cortex cérébral.

Maintenant que nous avons constaté que le cerveau, pendant le travail, génère des signaux électriques qui peuvent être lus, parlons du casque Emotiv Epoc.

Comment fonctionne un casque neuro?


La société Emotiv produit plusieurs types de casques neuro:

  • Aperçu émotif
  • Emotiv Epoc Flex Kit
  • Emotiv epoc

Le casque Epoc possède 14 capteurs (ils sont également appelés «canaux») situés à différents endroits sur la tête.

La figure suivante, à gauche, montre un schéma de placement d'électrodes 10-20 recommandé par la Fédération internationale d'électroencéphalographie et de neurophysiologie clinique. Chaque électrode correspond à une zone spécifique du cerveau. L'utilisation du système 10-20 vous permet de suivre une certaine norme lors de la création de divers appareils et lors de recherches scientifiques sur le cerveau.
La figure de droite montre la disposition des électrodes du casque Emotiv Epoc. Pour le comparer avec le système 10-20, le surlignage est vert et orange.


Comparaison du système international de placement d'électrodes 10-20 et du casque Emotiv Epoc

14 canaux Epoc - ce n'est pas tellement, mais les électrodes sont placées sur le cuir chevelu de manière assez uniforme. Cela nous permet d'espérer qu'avec l'aide d'Epoc, vous pourrez obtenir des informations assez précises sur l'activité cérébrale.

Le casque lit les capteurs à 2048 échantillons par seconde (SPS). Dans le même temps, l'utilisateur a accès à une fréquence d'échantillonnage du signal de 128 ou 256 SPS. L'appareil est capable de capturer les ondes cérébrales avec une fréquence de 0,16 à 43 Hz. Il existe différents rythmes du cerveau, leurs brèves caractéristiques sont illustrées dans la figure suivante.


Types d'ondes cérébrales

Pourquoi est-ce important? Le fait est que, selon l'application à construire sur la base d'un électroencéphalographe, il se peut que nous devions porter une attention particulière aux ondes cérébrales d'une certaine fréquence. Par exemple, si nous devons créer un programme pour aider les méditants, alors, probablement, nous ne nous intéresserons qu'aux ondes thêta, dont la fréquence est de 4 à 8 Hz.

Après avoir compris les principes sous-jacents à l'électroencéphalographie, parlons des capacités d'Emotiv Epoc et des logiciels associés.

Caractéristiques d'Emotiv Epoc


Le logiciel Emotiv n'est pas open source; une licence spéciale est requise pour accéder au signal brut du capteur. Dans des conditions normales, lorsque vous travaillez avec Emotiv Epoc, les options suivantes sont disponibles:

  • Mesure d'indicateurs caractérisant la position de la tête de l'utilisateur dans l'espace à l'aide d'un accéléromètre et d'un gyroscope.
  • Mesure du niveau d'éveil, d'implication, de relaxation, d'intérêt, de stress, de concentration.
  • Reconnaissance des mouvements musculaires du visage, donnant une idée de l'expression faciale de l'utilisateur. Par exemple, nous parlons de cligner des yeux et de sourire.
  • Reconnaissance des commandes mentales (mouvements et virages).

Afin d'utiliser la reconnaissance des commandes mentales, l'utilisateur doit d'abord entraîner le système . Les données d'entraînement sont enregistrées dans un fichier.

Si vous souhaitez développer vos propres programmes pour Emotiv Epoc, vous pouvez utiliser l'API Cortex et le SDK correspondant (son support a été interrompu après la sortie de la version 3.5). Si vous souhaitez utiliser JavaScript, vous pouvez jeter un œil à mon développement - la bibliothèque Epoc.js.

Bibliothèque Epoc.js


Epoc.js est un cadre conçu pour organiser l'interaction avec les appareils Emotiv Epoc et Insight à l'aide de JavaScript. Ce cadre donne au développeur l'accès aux capacités décrites ci-dessus des systèmes Emotiv et permet d'interagir avec l' émulateur .
Voici le projet le plus simple basé sur 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); }); 

Dans cet exemple de code, nous epocjs module Node.js epocjs et instancions l'objet correspondant. Ensuite, nous appelons la méthode connectToLiveData de cet objet, en lui passant le chemin d'accès au fichier avec les données utilisateur obtenues après la formation du système et une fonction de rappel. Un objet événement est transmis à cette fonction qui contient diverses propriétés pouvant être suivies. Par exemple, si nous voulons que le programme réponde au clignotement, la propriété event.blink est event.blink .

Chaque propriété similaire peut être définie sur 0 ou 1. Une unité dans la valeur de la propriété signifie que le système a enregistré l'événement correspondant. Une liste complète de ces propriétés peut être trouvée ici .

La bibliothèque décrite a été créée en utilisant le SDK Emotiv C ++, Node.js et trois modules pour Node.js: Node-gyp, Bindings et Nan. Au cours de son développement, une approche a été utilisée qui peut désormais être considérée comme obsolète. Maintenant, l'utilisation réelle de la N-API .

Après avoir discuté des différentes capacités des neuro-casques et des façons de travailler avec eux par programmation, je vais parler de plusieurs prototypes que j'ai créés qui utilisent une neuro-interface.

Prototypes


▍1. Clavier


Voici à quoi ressemble un clavier qui contrôle les mouvements des yeux.


Clavier prototype contrôlé par les mouvements oculaires

C'était mon premier projet avec Emotiv Epoc. J'étais intéressé de savoir s'il est possible de créer une interface simple à l'aide d'un casque neuro qui permet à une personne d'interagir avec un ordinateur en utilisant les mouvements oculaires. Par exemple, lorsque vous regardez à droite ou à gauche, les touches correspondantes sont mises en surbrillance sur le clavier. Pour "cliquer" sur la touche en surbrillance, vous devez clignoter. La lettre correspondante apparaît dans le champ situé au-dessus du clavier.

Ce projet semble très simple, mais le plus important est qu'il fonctionne.

▍2. Webvr


Dans mon deuxième projet, j'ai utilisé des commandes mentales. En le créant, j'ai voulu comprendre s'il était possible de contrôler un objet situé dans un espace tridimensionnel, en pensant simplement à quelque chose.


Interface Web dirigée par la pensée

Ici, pour créer un environnement tridimensionnel simple, j'ai utilisé la bibliothèque Three.js, la bibliothèque Epoc.js a été utilisée pour reconnaître les commandes mentales et des sockets Web ont été utilisées pour envoyer des données du serveur au client.

▍3. IoT


À partir du troisième projet, je voulais explorer les possibilités de contrôler de vrais appareils à l'aide de commandes mentales. Je suis intéressé par le développement de l'IoT en utilisant JavaScript depuis un certain temps maintenant, donc j'étais intéressé à savoir ce qui se passe si vous combinez le quadrocopter Parrot et un casque neuro.


Quadcopter

Tous les projets décrits ci-dessus, tous les prototypes créés, sont des développements assez simples que j'ai créés afin de tester certaines idées en pratique et d'évaluer les possibilités et les limites des interfaces neuronales.

Limitations de l'interface neuronale


Le mot "neurointerface" semble incroyable, et lorsqu'il s'avère que l'ordinateur peut être contrôlé par le pouvoir de la pensée, il peut sembler que c'est l'avenir, mais, en fait, les technologies de neuro-ordinateur ont encore pas mal de limites.

▍ Besoin de formation


Il est tout à fait normal que les utilisateurs doivent effectuer une formation sur le système, au cours de laquelle les ondes cérébrales sont enregistrées et comparées à certaines équipes, mais pour beaucoup, cette étape est un obstacle à l'adoption de nouvelles technologies. Il m'est difficile d'imaginer que quelqu'un passera du temps à apprendre les systèmes de neuro-ordinateurs, à moins que quelqu'un n'ait vraiment besoin d'un tel système, et en même temps, la précision avec laquelle elle reconnaît les commandes mentales sera à un niveau très élevé.

▍ Retards


Lorsque j'ai développé mon prototype basé sur la perception par l'ordinateur des commandes mentales, j'ai découvert qu'il y avait un certain délai entre le moment où j'ai commencé à penser et le moment où le programme a réagi à cette pensée.

Je pense que le point ici est que l'algorithme d'apprentissage automatique utilisé dans le prototype reçoit des données de l'appareil en temps réel. Pour reconnaître la pensée, dont il avait précédemment étudié la reconnaissance, il a besoin d'indicateurs collectés sur une certaine période de temps.

Cela affecte quels programmes peuvent être construits sur la base de l'interface neuronale. Par exemple, un programme qui aide à méditer semble assez réel, car les retards entre les changements de l'état du cerveau et la réaction du programme n'affecteront pas particulièrement les résultats d'un tel programme. Cependant, si l'on se propose de créer quelque chose comme un fauteuil roulant contrôlé par la pensée, le problème des retards devient beaucoup plus aigu, remettant en cause une telle évolution.

▍ Technologie non invasive et précision


Les scanners EEG sont parfaits pour une utilisation quotidienne dans des situations de la vie quotidienne. Il suffit de mettre le casque en appliquant un gel spécial sur les capteurs, et vous avez terminé. Cependant, le fait que les signaux générés par le cerveau soient lus à partir du cuir chevelu et non, disons, à partir de la surface du cerveau elle-même, altère la précision de ces signaux.

Si nous parlons de la fréquence de prise des indicateurs, alors c'est très bon dans les appareils existants. On ne peut pas en dire autant des caractéristiques spatiales des données obtenues. Les appareils EEG ne peuvent lire que les signaux provenant des parties du cerveau proches de la surface de la tête. Il est impossible de découvrir ce qui se passe dans les structures profondes du cerveau en utilisant une approche similaire.

▍ Acceptation du public


Un casque neuro n'est pas l'appareil le plus joli et le plus familier. Je pense que tant que ces casques ressemblent à ce qu'ils sont maintenant, il est peu probable qu'ils soient portés dans les lieux publics. Au fur et à mesure que la technologie se développe, il est possible que des appareils soient créés qui peuvent être cachés dans des accessoires tels que des chapeaux, mais même ici, vous pouvez rencontrer un problème lié au fait que ces appareils ne seront pas pratiques lorsqu'ils seront portés pendant une longue période.

Les capteurs EEG devraient être assez proches du cuir chevelu pour prendre des indicateurs qualitatifs de l'activité cérébrale. Et si leur pression immédiatement après avoir mis le casque est difficilement perceptible, au fil du temps, cela commence à provoquer une gêne. De plus, si vous devez également appliquer du gel sur les capteurs, cela se transforme en une barrière supplémentaire à la distribution généralisée des casques neuro.

Comme vous pouvez le voir, l'état actuel des choses dans le domaine des interfaces neuronales suggère qu'il est peu probable qu'elles se généralisent. Cependant, si nous parlons de l'avenir, nous pouvons dire que ces appareils ont des perspectives intéressantes.

Capacités d'interface neuronale


Si vous tenez compte de l'état actuel de la technologie et pensez à ce qu'elle pourrait devenir à l'avenir, vous pouvez trouver plusieurs options pour son application.

ElpAider les personnes handicapées


J'aimerais que les neuro-casques aident les personnes handicapées à vivre une vie plus complète et à être plus indépendantes.

C'est exactement ce à quoi je pensais lorsque j'ai créé mon premier prototype - un clavier contrôlé par les mouvements des yeux. Ce développement est loin d'être au niveau où il pourrait être utilisé dans la pratique, mais en travaillant sur ce projet, je voulais savoir si un appareil grand public complètement abordable pouvait vraiment aider quelqu'un. Tout le monde n'a pas accès à des systèmes médicaux complexes, et j'ai simplement été ravi par le fait que le gadget pas si cher, qui peut être acheté gratuitement dans la boutique en ligne, soit capable de résoudre des tâches importantes et nécessaires.

▍ Pratiques mentales


Les pratiques mentales, en particulier - la méditation - c'est le domaine d'application des neuro-casques, qui attire déjà aujourd'hui une certaine attention (par exemple, le casque Muse aide à méditer). Il s'agit d'aider quelqu'un qui veut méditer, à tout faire correctement.

▍Aide à résoudre les problèmes de santé


Si les casques neuronaux pénétraient nos vies autant que les téléphones portables, nous pourrions être en mesure de créer des applications capables de répondre aux problèmes de santé. Par exemple, ce serait formidable s'il y avait des applications qui, basées sur une analyse de l'activité cérébrale, aideraient à combattre les AVC, les crises de panique et les crises d'épilepsie.

▍Augmentation de la productivité du travail


Un casque neuro peut aider à méditer, ce qui signifie qu'avec lui, vous pouvez vraiment savoir à quelle heure de la journée une personne se concentre le mieux. Ces informations, obtenues en portant régulièrement le casque, peuvent vous aider à comprendre quand il est préférable de faire une activité. Vous pouvez même imaginer que l'horaire de travail sera organisé en fonction des caractéristiques individuelles de la personne, ce qui augmentera sa productivité.

▍Art


J'aime, de ma propre initiative, en dehors des heures de travail, explorer les phénomènes qui se trouvent à l'intersection de l'art et de la technologie. Je pense qu'il ne faut pas sous-estimer le travail dans ce sens lié aux interfaces neuronales, car elles, bien qu'elles puissent paraître «frivoles», aident à mieux comprendre les technologies, qui seront utiles dans les cas plus «graves» de leur application.

Combinaison de capteurs d'activité électrique du cerveau avec d'autres capteurs


Récemment, j'ai eu l'idée que les capteurs EEG ne devaient pas être considérés comme quelque chose de complètement indépendant. Notre cerveau perçoit le monde à travers les sens. Il n'est pas capable de voir sans yeux et d'entendre sans oreilles. Par conséquent, si nous voulons tirer le meilleur parti des données sur l'activité électrique du cerveau, nous devrons peut-être suivre d'autres signes vitaux.

Le principal problème ici est que tout cela peut conduire au fait que les gens seront littéralement suspendus avec divers capteurs.


Y a-t-il trop de capteurs ici? (source d'illustration - cognionics.net)

Peut-être que personne ne portera constamment les capteurs représentés sur la figure précédente.

Openbci


Il y a quelques semaines, j'ai acquis quelque chose de nouveau - le package OpenBCI . Ma prochaine étape consiste à étudier les données brutes obtenues à partir des capteurs EEG et à appliquer des méthodes d'apprentissage automatique à ces données. OpenBCI est un projet open source, leur développement me semble donc parfaitement adapté à cette fin. Je n'ai toujours pas beaucoup travaillé avec leur casque, pour l'instant je n'ai que le temps de le connecter à un ordinateur et de le configurer. Voilà à quoi tout cela ressemble.


Openbci

Résumé


L'auteur de ce document dit qu'il continue d'étudier les interfaces neuronales. Nous espérons que son histoire aidera ceux qui sont intéressés par ce sujet, mais n'osez pas procéder à des actions pratiques, faites les premiers pas dans l'application des neuro-casques. Si tout cela vous intéresse, voici une autre de nos publications sur les casques neuro et JavaScript dédiés à Muse.

Chers lecteurs! Envisagez-vous d'expérimenter avec des casques neuro?

Source: https://habr.com/ru/post/fr433874/


All Articles