75

7 Javascript EEG Mind Reading Libraries for 2018

 5 years ago
source link: https://www.tuicool.com/articles/hit/NNj2yyF
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

7 Javascript EEG Mind Reading Libraries for 2018

Useful JS libraries for exploring human-brain signals and reading people’s minds.

R7nyumv.jpg!web
“Cool headset right?”

Electroencephalography is a method of monitoring electrical activity in the human brain. It can be used to detect conditions like epilepsy or a brain tumor, to research cognitive aspects of the brain activity, or to learn how the brain reacts to external stimulation like music or images.

Although somewhat crude compared to other methods, it’s also useful for working the other way around- translating brain activity into actions using external devices (like a laser-equipped robot army).

MathLab, python and even R are often popular languages for working with EEG signals as development in the field (led by projects such as openBCI ). Much like inIOT,ML and other research areas, Javascript also kicks in .

As part of working on Bit , we always try to find the frontier of JS applications. So, here are some Javascript libraries and experiments for working with EEG we found particularly cool. Your’e welcome to suggest more useful projects!

1. Muse-js

2M3eMn6.gif
An example taken from this great post: https://medium.com/@urish/reactive-brain-waves-af07864bb7d4

Muse-js is a JavaScript Library for the 2016 Muse EEG Headset (using web Bluetooth). Inspired by the muse-lsl python library, muse-js is built by @urish with a humble vision in mind: communicating directly from your brain to your webpage. Why not?

Muse-js enables web developers to connect, analyze and visualize EEG data with tools like the web browser, RxJS and Angular. Apart from working with “ordinary” brain signals and communicating them to the web, muse-js also handles EEG signals related to eye-movement, which is not only super-cool but also very useful in cutting edge cognitive studies. Give it a go.

2. Wits

jI3Qn2N.gif

Born as a part of Brain-Bits, wits is a Node.js library that reads EEG signals with Emotiv EPOC EEG headset. It’s implemented as a native C module for raw performance (based on openyou/emokit-c ), handles a raw EEG data stream of 14 electrodes with 128Hz sample rate and provides a thoughtful API for end users. Here’s an example, and you’re welcome to give it a try.

const mind = require('wits')
mind.open()
mind.read(console.log)

3. Brain-monitor

a6rYjeB.gif

Brain-monitor is in fact a terminal app written in Javascript that displays human-brain EEG signals in real time. It works with Emotiv EPOC EEG headset, analyzing a Raw EEG data stream of 14 electrodes with 128Hz sample rate and processes additional information such as head-orientation and even battery level for your headset. A cool choice for CLI lovers.

4. Brain-bits

n2emAjU.gif

Created by the author of wits and brain-monitor, brain-bits is an P300 online spelling mechanism for Emotiv headsets. The project is basically an Electron app which runs Node on the backend and Vue.js on the front-end, making use of native modules for Node.js and brain.js for the neural network and d3 for drawing the EEG electrode monitor. You can see a live demo and learn more from the author in this talk given at the 2018 Amsterdam JS conference.

5. EEG-101

eiuyIbU.png!web

EEG-101 is an interactive neuroscience tutorial app using Muse and React Native to teach EEG and BCI basics. It teaches the basics of EEG, including where signals come from, how devices work, and how to process data. Built with React Native for Android, the project contains a general purpose binary classifier for EEG data, it streams data from the Muse headset with the LibMuse Java API. A nice way to pick-up and play EEG works.

6. EEG pipes

7nANr2j.png!web

This project provides pipeable RxJS operators for working with EEG data in Node and the Browser, with features such as FFT, PSD and Power Bands, Buffering and Epoching, IIR Filters and more. Note that an Observable of EEG data is required, which can be done using fromEvent from RxJS in order to push callback events into an Observable stream. Enjoy.

7. Open BCI & JS

Open BCI is a project built to provide open-source brain-computer interfaces and low-cost hardware. Created by a group of engineers, researches and makers who “share an unfaltering passion for harnessing the electrical signals of the human brain and body to further understand and expand who we are”.

As such, it’s creating a base for a wide verity of implementations for working with all kinds of EEG-related hardware and software. Some of which, are awesome Javascript implementations for EEG proccessing, visualizing and more working with anything from Node.js to Angular 4. Here are some.

Meet Bit

Bit helps your team build applications faster by turning components and modules into building blocks which can be easily shared, developed and used anywhere to build new projects. Try Bit with Javascript, React and more.


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK