urish/muse-js

Raw EEG processing

oori opened this issue · 4 comments

oori commented

Raw EEG is cool, but FFT'ed absolute readings are more practical.. I'm not sure if it should be included in this package, or via external dependency (eeg-processing.js and eeg-algorithms.js), but I'm adding this issue here as placeholder because the need is real.

Looking at muse-io - Muse Elements Data for couple of processed streams that would be great to mirror:
/muse/elements/*_absolute (relative are easy to calculate from these)
/muse/elements/horseshoe ffff, /muse/elements/is_good iiii
Muscle Movement: /muse/elements/blink i, /muse/elements/jaw_clench i

Your package has a potential to solve a big problem, as muse left the 2016 headset without muse-io, nor a normal desktop SDK (no mac/linux, win10 UWP sucks..) your solution is better for developers who need to package client-apps, and not simply run single-machine research.

Thanks!

urish commented

Thank you for your feedback! You can actually already stream the data to lsl with muse-lsl, which is built on top of this library, and I am working on a browser-based solution as well, where I will investigate filtering, etc.

I believe it makes more sense to have the eeg algorithms implemented in their own package, so one could reuse them with different headsets. Some of the algorithms (such as horseshow, blink, jaw_clench) are calculated inside the muse client library, so they will have to re-implemented in JavaScript (or we can also find a C implementation and compile to Web Assembly). Of course, if you have any good references to share I'd love to learn 👍

oori commented

EEG Pipes is (currently) the best fit.

urish commented

Nice! Thanks for sharing :)

check out https://github.com/tanvach/muse-fft if you find it helpful in any way.