OpenBCIのボードが出してくるデータをシリアル経由でなんとか取れそうなのは分かったのだけど、、それをどうやって分析してモデル化するか?が問題。OpenBCI.comのコミュニティではいろいろGUIツールが開発されているのだけど、現状では波形を出したり、スペクトル分析するところまでで、当たり前だけど、モデル化とか学習とかそういう機能はない。脳波から意味を抽出するフェーズはそれぞれが目的に応じて取り組むべき課題なのだと思われる。
Windows上でしっくりくるプログラム開発環境はC#とかC++なんだろうけど、機械学習とか統計のライブラリがどれぐらい揃っているのかよく分からない。しかも作ったアプリはWindows環境に縛られてしまう。そんな中で、Pythonが結構、機械学習用ライブラリとか統計用ライブラリが充実しているのでそれらを使ってみたいと思う。だけど、、リアルタイムにどれだけ計算できるのか?スクリプト言語で速度が出せるのかは不明
また、まずはGUIベースで波形やデータを出すところから始めるわけだけど、C#なら以前NeuroSky用に作ったのがあったので早く作れそうだが、今後はPythonベースでデータ解析するつもりなら、GUIを構築する手段もPythonベースのGUIツールキットを選ぶのがよさそうだ。。PythonベースのGUIツールキットとしては、wxPython,PyQtが有力らしい。。
はじめの一歩はPython でシリアルポートを叩くところからだ。。PySerialってのがあるらしい。
■参考URL
http://pyserial.sourceforge.net/
How can I use COM and USB ports within Cygwin?
http://stackoverflow.com/questions/2899180/how-can-i-use-com-and-usb-ports-within-cygwin
http://www.roman10.net/serial-port-communication-in-python/