概要
OpenBCIを動作させるための標準アプリケーションOpenBCI GUIで測定した脳波データをMATLABにインポートし、EEGLABで波形表示する方法を説明する。
実行環境
- OpenBCI GUI v5.0.1
- OpenBCI Cyton bord
- MATLAB R2020b
- EEGLAB v2020.0
- Windows10 pro 19041
OpenBCI GUIについて
OpenBCI GUIは、OpenBCIボードからのデータを視覚化、記録、およびストリーミングするためのアプリケーションである。
詳細・セットアップ方法については下記ページを参照のこと。
https://docs.openbci.com/docs/06Software/01-OpenBCISoftware/GUIDocs
OpenBCI GUIで取得されるデータについて
収録開始ボタンは特になく、測定したデータがすべてドキュメントフォルダに日付をファイル名にしたテキストファイルで保存される。
サンプリングレートはシリアル接続の場合、8chで250Hz,16chでは125Hzとなる。
また、データは未加工のRAWデータでμV単位である。
MATLABへの取り込み
MATLABを起動しホームメニューからインポートボタンを押下し読み込みたいデータのテキストファイルを指定する。
出てきたインポート画面から取り込む範囲を指定し出力タイプを**[数値行列]に変更後[選択のインポート]**ボタンを押下することでMATLABに変数として読み込まれる。
読み込まれたデータはEEGLABのフォーマットと行と列が逆のため以下のように行列を転置させる必要がある。
また必要に応じて単位変換等を行う。
rawdata = OpenBCIRAW20210127172329'
EEGLABで波形表示
続いてデータをEEGLABで読み込み表示を行う。
EEGLABを起動し、以下のメニューから読み込み画面を開く。
[File] -> [Import data] -> [Using EEGLAB functions and plugins] -> [From ASCII/float file or Matlab array]
先ほどMATLAB で読み込んだ配列の変数名と周波数を指定してOkで閉じることでインポートが完了する。
RAWデータを読み込んだままの状態ではOpenBCI GUIで見えていた波形とは大きく異なる。
OpenBCI GUIで行っている後処理と同様に電源ノイズの除去とフィルタリング処理を行う必要がある。
(例えば5-50Hz範囲外を除去するようにローパス・ハイパスフィルターをかける等)