Few months ago I had interest with machine learning and I spent some time to study. During the study my target was developing existing matlab examples in C/C++ or java. So finally I have a working application using neural network alghoritms. It has lot of parameters and calculations but works quite fast. I have added multicore and OpenCL support. And of course opensource:)
Well when its finish I said maybe I can do something with my muse device. So I wrote 2 additional software that one of them does listen udp data which is provided from Muse-IO then picks a random word from given list and shows user and then user thinks about the word and blinks so application records specified channel (alpha,theta etc… by regex which fits osc path) and creates a input data file for prediction application.
Then prediction application runs a training session, calculates errors on prediction and provides another file to use for live prediction.
Then the last application which is a client for live prediction,reads prediction file which is just created and waits user input. So you just think about word then you blink. Prediction success rate not much, but after many trials during the same session application can predict some words continuesly when I think. Maybe my eye movements effects, breathing, heart rate so I can not say it is a real or not:)
Currently there is just support for linux (I think should work on mac too, it is using posix threads)
Here you can find instructions and source codes:
I am very new on BCI area and I am not aware of existing solutions but I thought it would be a good shot. Even neuralnetwork application can be used not just for EEG but image recognition,spam analysis etc…
All those 3 application can be put in one application but for prediction you need to do some try and see way because since you have more rows then prediction takes time and different parameters can behave better. So what I am doing now: I prepare another application that picks a path from a list and trys different settings like brut force, so my target is finding the best channel combination,osc path(s) and settings for most successfull prediction.
As many of you have good experience and that is possible some muse developers will read this I will be waiting for your feedback:)