Brainwave Analyzer


#1

New open source, free software for brainwave analysis:

The Brainwave Analyzer at http://brainwaves.io/wp/

Direct link is: http://brainwaves.io/wp/brainwave-analyzer.html

Can import csv data files in 3 formats:

  • OpenVibe

  • Mindwave Reader 512 verion 2.0

  • Mindwave Reader 512 version 1.0

For complete instructions see:

http://brainwaves.io/wp/brainwave-analyzer-help/

Anyway this is new software, everyone is invited to check it out.

Hope you’ll let me know what you think, any suggestions, questions, etc…

Katie

P.S. Github is:


#2

Very cool! I just tested out the web version with the sample data (I don’t have mindwave, and I’m running linux), and it has features I haven’t seen in other EEG post-analysis software.

My only feedback, from a cursory view, is that it would be neat to be able to zoom in on the first plot — or have an adjustable y-axis scale, like on the other two. Also, on my screen, the plots looked a touch blurry; not enough to be a problem, but enough to be noticeable. (They look fine when I view the image by itself, so maybe it’s just that they’re not being displayed at their exact resolution.)

What operating systems are supported, or do you plan to support? You mention that you’ll have more EEG readers over time — is support for OpenBCI on the roadmap?

Thanks for releasing this as free software!


#3

Hi curiositry, thanks for your kind feedback!

“it has features I haven’t seen in other EEG post-analysis software.”

Yes, that’s why I hired Nayuki to write this program. There is not a lot of EEG post-analysis software out there unless you have very large budget or have access to Matlab. And what I could find was generally pretty difficult to use and understand (for me anyway).

The Brainwave Analyzer is written in Javascript which should work with most Operating Systems. But unfortunately the Mindwave hardware only works with Windows (XP, Vista, 7) and Mac (OS X).

As for OpenBCI, I’ve ordered the Ganglion Board which it supposed to arrive sometime in November, so looking forward to trying it out! If OpenBCI data can be exported in a format that would allow band analysis, then I would definitely be interested in an OpenBCI version of the Brainwave Analyzer.

As for an adjustable x-axis for the first plot, that is definitely doable. I’ll add it to my list for future upgrades. Also if you click on, for example “Delta”, it will make the Delta band disappear, and same for the other bands, in case you want to look at just 1 or 2 or 3 bands at a time.

And let me know if you have anymore suggestions!

Katie


#4

Great to hear you have an OpenBCI board on the way, and that it might be supported by Brainwave Analyzer in the future!

OpenBCI doesn’t crunch EEG “band” data for you the way the NeuroSky does, but you can compute it from the raw OpenBCI data. You just need to bandpass the signal (for each band) and then take the amplitude. (This is easy in Python — see https://github.com/curiositry/EEGrunt/blob/master/EEGrunt.py#L258 — but I haven’t tried it in JavaScript.)

You could consider adding links to the project’s GitHub repository (for anyone who’s curious about the code) and the live version to your above post. It’s nice that it can be run on the web without any installation. Speaking of which, it might be worth talking about the security of the hosted app (so users know whether the data they run through the online version remains private).

I also like that you can specify the start and end frequency for each “band”, since there’s no “standard” for what frequency range constitutes which band. I didn’t notice this last time.


#5

Hi curiositry

“You just need to bandpass the signal (for each band) and then take the amplitude. (This is easy in Python — see https://github.com/curiositry/EEGrunt/blob/master/EEGrunt.py#L258 — but I haven’t tried it in JavaScript.)”

Ha, easier said than done! But I”m game to give that a try once my OpenBCI arrives. Will probably pester you with questions at that point.

“You could add a link to the project’s GitHub repository to your above post, for anyone who’s curious about the code, and a link to the live version.”

Excellent advice, I just did that (Alpha Gamma Waves is my old blog, Brainwaves.io is my new improved version).

“Speaking of which, it might be worth talking about the security of the hosted app (so users know how whether the data they run through the online version remains private).”

I just added Stat Counter (http://statcounter.com/) code (to myonline version) so that I can see how much attention the Brainwave Analyzer is getting. But I’m definitely not capturing uploaded data, plus any captured data would be pretty meaningless without context. At some point I do want to setup an upload area for anyone who wants to upload screenshots of experimental results and details of the experiment.

But for anyone concerned about security, they can just download The Brainwave Analyzer from Github (Github version does not have the Stat Counter code) and without need of the internet.

“I also like that you can specify the start and end frequency for each “band”, since there’s no “standard” for what frequency range constitutes which band. I didn’t notice this last time”

Yes, I had just uploaded the flexible band version, which is probably why you didn’t notice it earlier. I had always assumed that band ranges were standardized, but they definitely are not., so that’s why I asked Nayuki to add the band flexibility version.

In the world of EEG, band definitions seem to be pretty much anything goes!

Bye for now,

Katie


#6

Maybe you should submit a pull request to add it to NeuroTechX’s curated list of BCI resources?


#7

Hi curiositry

Thanks, great advice, I put in the pull request.

Also added a few more blog posts:


#8

3 posts were split to a new topic: Gamma neurofeedback with Bioexplorer


#9

Hi

I’ve add a few more blog posts:

On the effects of AC electricity:

Noise from Electricity – Part 1

http://brainwaves.io/wp/blog/2017/01/29/noise-from-electricity-part-1/

Noise from Electricity – Part 2

http://brainwaves.io/wp/blog/2017/02/26/noise-from-electricity-part-2/

Thanks to Pedro Morais and Joël Caserus for kind blog mentions:

Brainwave-JCP

http://brainwaves.io/wp/blog/2017/01/18/brainwave-jcp/

BRAIN-COMPUTER INTERFACES over EEG – Blog

http://brainwaves.io/wp/blog/2017/05/08/brain-computer-interfaces-over-eeg-blog/


#10

I’m planning to ask Nayuki to make an upgraded version of the Brainwave analyzer with the following changes:

  • Instead of importing csv or txt files, it would import EDF and BDF files. Thus it could analyze readings from any EEG machine that saves to EDF or BDF. (Note, I’ll still keep the present Mindwave version going.)

  • Able to display results for multiple channels.

  • Notch filter for AC (not needed for the Mindwave version).

Any suggestions for other improvements would be most appreciated !