Construyendo Interfaces Controladas por el Cerebro en JavaScript

Rate this content
Bookmark

La neurotecnología es el uso de herramientas tecnológicas para entender más sobre el cerebro y permitir una conexión directa con el sistema nervioso. La investigación en este campo no es nueva, sin embargo, su accesibilidad para los desarrolladores de JavaScript sí lo es.

En los últimos años, los sensores cerebrales se han puesto a disposición del público, con herramientas que hacen posible que los desarrolladores web experimenten construyendo interfaces controladas por el cerebro.

A medida que esta tecnología evoluciona y desbloquea nuevas oportunidades, vamos a analizar uno de los últimos dispositivos disponibles, cómo funciona, las posibilidades que abre y cómo empezar a construir tu primera aplicación controlada por la mente usando JavaScript.

This talk has been presented at JSNation Live 2021, check out the latest edition of this JavaScript Conference.

FAQ

Una interfaz controlada por el cerebro es una tecnología que permite la interacción directa con dispositivos mediante la actividad cerebral, sin necesidad de interacción física convencional como teclados o ratones.

Los datos de la actividad cerebral se capturan mediante sensores cerebrales que contienen electrodos los cuales se colocan en el cuero cabelludo. Estos electrodos transforman las señales eléctricas del cerebro en datos digitales que pueden ser utilizados para interactuar con interfaces o dispositivos.

Los diferentes tipos de electrodos en los sensores cerebrales permiten rastrear distintas áreas del cerebro y, por lo tanto, capturar datos sobre diversas funciones cerebrales como movimiento, sensaciones y procesamiento sensorial, dependiendo de la ubicación de los electrodos.

NeuroCity Notion es un sensor cerebral que permite a los desarrolladores crear interfaces que pueden ser controladas usando la actividad cerebral. Ofrece una API y una UI para visualizar datos cerebrales y entrenar comandos mentales específicos.

Las interfaces controladas por el cerebro tienen aplicaciones en varios campos como la medicina, para detectar estados emocionales o desequilibrios; en juegos, permitiendo controlar acciones solo con el pensamiento; y en la música, donde los músicos pueden usar su actividad cerebral para manipular efectos de sonido.

Los sensores cerebrales externos, a diferencia de los implantes, deben captar datos a través del cuero cabelludo, cráneo y cabello, lo que puede afectar la calidad y precisión de los datos obtenidos, limitando las aplicaciones prácticas en comparación con los implantes directos en el cerebro.

Charlie Gerard
Charlie Gerard
27 min
09 Jun, 2021

Comments

Sign in or register to post your comment.

Video Summary and Transcription

Aprende a construir interfaces controladas por el cerebro usando JavaScript y sensores cerebrales. Entiende las funciones de las diferentes partes del cerebro y cómo se relacionan con la colocación de los sensores. Explora ejemplos de detección de calma y enfoque, así como la API de Kinesis para comandos mentales. Descubre las aplicaciones de las interfaces controladas por el cerebro, como el desplazamiento de páginas web y la autenticación sin contraseña. Entiende los límites y oportunidades del control cerebral y el potencial de usar sensores cerebrales en aplicaciones médicas.

1. Introducción a las Interfaces Controladas por el Cerebro

Short description:

Aprende a construir interfaces controladas por el cerebro usando JavaScript. Charlie Girard, desarrollador frontend senior en Netlify, comparte ideas sobre cómo usar sensores cerebrales para transformar la actividad cerebral en datos digitales. Descubre el NeuroCity Notion, un sensor cerebral comercial, y cómo el número de electrodos impacta en sus casos de uso.

Hola a todos, gracias por unirse a mí hoy para aprender más sobre cómo construir interfaces controladas por el cerebro usando JavaScript. Antes de sumergirnos en este tema, aquí hay un poco más sobre mí. Mi nombre es Charlie Girard. Soy un desarrollador frontend senior en Netlify. También formo parte del grupo de Expertos en Desarrollo Web de Google. Es un grupo de comunidad patrocinado por Google para desarrolladores que desean devolver a la comunidad de diferentes maneras. También soy el autor de un libro sobre TensorFlow.js para desarrolladores de JavaScript. Sobre todo, paso mucho de mi tiempo personal construyendo e investigando prototipos sobre la interacción humano-computadora, que también se llama HCI. Eso es el estudio del diseño y uso de la tecnología informática centrado en las interfaces entre las personas y las computadoras. Puede involucrar muchas cosas como AR, VR, artes interactivas, machine learning, etc. He estado interesado en esto desde que comencé a aprender a code. A lo largo de los años, mi investigación me ha llevado al tema de hoy. No tiene nada que ver con mi trabajo diario en Netlify, pero espero que esta charla les muestre que pueden usar sus habilidades de JavaScript para muchas cosas diferentes. El enfoque de hoy es nuestro cerebro y cómo usarlo para interactuar directamente con las interfaces usando JavaScript. ¿Cómo podemos obtener data directamente de nuestra actividad cerebral y escribir algo de JavaScript code para usarlo para interactuar con interfaces o dispositivos? ¿Cómo obtenemos incluso estos data de nuestro cerebro? Hacemos esto con la ayuda de sensores cerebrales. Estos son dispositivos que contienen electrodos que colocas en el cuero cabelludo. En contacto con la piel, son capaces de transformar las señales eléctricas que provienen del cerebro en data digital con el que podemos trabajar. En esta diapositiva, puse algunos de los sensores cerebrales comerciales que puedes comprar actualmente. Puedes ver que vienen en diferentes formas. Tienen diferente número de electrodos. Eso impactará en lo que puedes rastrear y qué tipo de aplicaciones puedes construir con él. Probablemente hay más sensores cerebrales disponibles por ahí, pero aquí están los que más he oído hablar o jugado con. El que se va a centrar en esta charla es el de la parte inferior derecha. Se llama NeuroCity Notion. Recientemente lanzaron un nuevo modelo llamado Crown. Si alguna vez estás interesado en comprarlo, ahora puede llamarse Crown, pero experimenté con una de sus primeras versiones que se llamaba Notion. Para entender cómo el número de electrodos impacta en los casos de uso, hablemos brevemente sobre cómo funciona. En el contexto del dispositivo Notion, resalté en verde la ubicación de los electrodos basándome en su número de referencia en el sistema EEG 1020. Este es un sistema que es una referencia en neurotecnología, y es una especie de mapa que representa la ubicación de los electrodos en la cabeza de un usuario.

2. Sensores cerebrales y análisis de datos

Short description:

Aprende sobre los diferentes sensores cerebrales y su colocación en la cabeza. Comprende las funciones de las diferentes partes del cerebro y cómo se relacionan con la colocación de los sensores. Explora los datos brutos y las características disponibles en la interfaz de usuario de Neuro CT Notion, incluyendo la detección de concentración y calma. Descubre el proceso de entrenamiento de comandos mentales personalizados utilizando el auricular Notion.

En la parte superior está el frente de tu cabeza y en la parte inferior está más atrás. Cada electrodo tiene un número y una letra de referencia. Entonces, estos son importantes porque te darán una idea del tipo de ondas cerebrales que puedes rastrear dependiendo del área del cerebro que los electrodos están más cerca. Entonces, Notion tiene ocho electrodos, cuatro en el lado izquierdo del cerebro y cuatro en el lado derecho, principalmente enfocados en la parte superior y el frente de la cabeza. Entonces esto es importante saber porque dependiendo de la colocación de los electrodos, obtendrás data de diferentes partes del cerebro. Entonces, significa que lo que puedes interpretar de la data que estás obteniendo variará. Entonces aquí hice una pequeña animation para explicar de qué estoy hablando. Entonces, diferentes partes del cerebro tienen diferentes propósitos. En el frente, tienes el lóbulo frontal, luego el cerebelo está en la parte inferior trasera, el lóbulo parietal en la parte superior, etc. No tienes que saber esto de memoria, pero, y puede que no signifique mucho para ti ahora mismo, pero están a cargo de diferentes funciones fisiológicas. Entonces, por ejemplo, el lóbulo frontal se encarga de movimiento voluntario y concentración y resolución de problemas. El lóbulo parietal en la parte superior está más enfocado en sensaciones y conciencia corporal. Y el lóbulo temporal es el que está al lado que recibe información sensorial de los oídos y procesa esa información en unidades significativas como el habla y las palabras. Entonces, dependiendo de lo que te gustaría rastrear o construir, querrás revisar diferentes sensores cerebrales hacia la posición para ver que es más probable que se estén enfocando en el área del cerebro que te interesa. Por ejemplo, uno de los sensores cerebrales en una de las diapositivas anteriores se llama NextMind y se enfoca principalmente en el lóbulo occipital en la parte media trasera porque afirman estar enfocándose en la visión del usuario para tratar de predecir lo que alguien está mirando. Entonces, de todos modos, ahora que hemos hablado de los sensores cerebrales, ¿cómo se ve para nosotros como desarrolladores de JavaScript? Entonces, con la noción de neuro CT tienes acceso a una UI en la que puedes ver diferentes gráficos. Entonces, aquí está la parte de la UI donde puedes ver tus ondas cerebrales en bruto. Entonces puedes ver las diferentes líneas. Hay ocho de ellos y cada etiqueta responde al nombre de una posición de electrodo basada en el sistema EEG 1020 del que hablé hace unas diapositivas. Entonces esto representa un gráfico de los data en bruto que vienen en vivo del sensor cerebral. Pero en general cuando empiezas en este espacio de neurotecnología no empiezas de inmediato experimentando con data en bruto. La mayoría de los sensores cerebrales por ahí han implementado cosas como detección de concentración o calma que puedes usar sin tener que construir tu propio modelo de machine learning. Entonces, la detección de concentración y calma no necesita ningún entrenamiento porque se basan en un patrón de ondas cerebrales que son bastante comunes entre todos. Sin embargo, los comentarios mentales personalizados tienen que ser entrenados, entonces, ¿qué quiero decir con eso? No te molestes en leer toda la lista, pero para el auricular Notion los comandos que puedes entrenar se centran en imaginar movimientos específicos. Entonces puedes ver morder un limón o pellizcar tu dedo izquierdo o pensar en empujar algo en el espacio. Por ejemplo, aquí está cómo se ve el entrenamiento del comentario mental del pie derecho. Entonces también puedes hacerlo con su API, pero en general para hacerlo más rápido lo haces a través de su UI. Entonces tienes dos animations jugando cada pocos segundos para guiarte en lo que se supone debes hacer. Entonces tienes que alternar entre estados de concentración en ese comentario, así que piensa en golpear tu pie derecho en el suelo y también descansar donde se supone que debes intentar pensar

QnA

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

Creando lo Imposible: Virtualización X86 en el Navegador con WebAssembly
JSNation 2022JSNation 2022
21 min
Creando lo Imposible: Virtualización X86 en el Navegador con WebAssembly
ChirpX is a technology to securely run binary code in the browser, written in C++ and compiled to JavaScript WebAssembly. It can run a full virtualized system in the browser, including Bash and other languages like Python and JavaScript. ChirpX aims for scalability and the ability to work with large code bases, supporting multiprocessing and multithreading. It uses a two-tiered execution engine with an interpreter and a JIT engine. Future plans include running the full X.Org server in the browser and implementing the Windows system call. WebVM, the underlying technology, has a virtual file system backed by Cloudflare.
TensorFlow.js 101: Aprendizaje automático en el navegador y más allá
ML conf EU 2020ML conf EU 2020
41 min
TensorFlow.js 101: Aprendizaje automático en el navegador y más allá
TensorFlow.js enables machine learning in the browser and beyond, with features like face mesh, body segmentation, and pose estimation. It offers JavaScript prototyping and transfer learning capabilities, as well as the ability to recognize custom objects using the Image Project feature. TensorFlow.js can be used with Cloud AutoML for training custom vision models and provides performance benefits in both JavaScript and Python development. It offers interactivity, reach, scale, and performance, and encourages community engagement and collaboration between the JavaScript and machine learning communities.
Makepad - Aprovechando Rust + Wasm + WebGL para construir aplicaciones multiplataforma increíbles
JSNation 2022JSNation 2022
22 min
Makepad - Aprovechando Rust + Wasm + WebGL para construir aplicaciones multiplataforma increíbles
Top Content
Welcome to MakePad, a new way to build UI for web and native using WebAssembly and Rust. JavaScript is not suitable for complex applications like IDEs and design tools. Rust, a new programming language, was used to reimagine MakePad, resulting in a fast and efficient platform. MakePad offers live editing, high CPU performance, and the ability to load native instrument components. The future of MakePad includes an open-source release, a design tool, and support for importing 3D models.
API WebHID: Controla Todo a través de USB
JSNation 2022JSNation 2022
23 min
API WebHID: Controla Todo a través de USB
Today's Talk introduces the webHID API, which allows developers to control real devices from the browser via USB. The HID interface, including keyboards, mice, and gamepads, is explored. The Talk covers device enumeration, input reports, feature reports, and output reports. The use of HID in the browser, especially in Chrome, is highlighted. Various demos showcase working with different devices, including a DualShock controller, microphone, gamepad, and Stream Deck drum pad. The Talk concludes with recommendations and resources for further exploration.
Cómo he estado utilizando JavaScript para automatizar mi casa
JSNation 2022JSNation 2022
22 min
Cómo he estado utilizando JavaScript para automatizar mi casa
The Talk covers various experiments with JavaScript and C++, including controlling lights and creating a car control system. The speaker shares his experiences with home automation and the challenges of hiding wires. He explores using JavaScript with Esperino for face recognition and discusses the benefits and limitations of the platform. The Talk concludes with suggestions for using JavaScript in hardware projects and learning opportunities.
Desarrollo web adaptado para 2024
React Summit 2024React Summit 2024
7 min
Desarrollo web adaptado para 2024
Today's Talk covers native features in browsers, including upcoming ones and the Interop Project. Native features offer speed, compatibility, and improved debugging. Notable examples include dynamic viewport units, flexbox/grid gap, container queries, and motion path. The Interop Project ensures consistent web platform features across different browsers. Upcoming features like native CSS nesting and entry/exit animations are on the horizon.