目次
Math
Analysis
Experiment
Simulations

01環境構築

目次

▶︎
all
running...

MATLABのダウンロード

MATLABはMathWorks社が開発している数値解析ソフトウェア,およびそこで使用されるプログラミング言語です.行列の扱いなどに優れていて,神経科学に限らず科学研究においてデータ解析によく用いられます.我々の扱う脳波やMRI画像も行列データであるため,その解析に一般に用いられます.

難点は,有料(めっちゃ高い)なことです.こればかりはなんとも...学生ならまだ多少安いですが,一般で購入すると笑えないくらいの額です.ただ読者の多くは所属している機関がライセンス契約をしていると思うので,自腹で買う必要はありません.

ライセンスが提供されている人は所属機関のアナウンスに従ってMATLABのダウンロードをしてください.

ない人は以下の手順に従います.

ダウンロード

こちらの公式ページからダウンロードをします.

キャンパスソフトウェア,使えると良いですね...自分は使えなかったので自腹です.

適切なものを選んで手順を進め,購入,ダウンロードしてください.

購入/ダウンロードの際,Toolboxの選択をする画面があると思いますが,そこでは基本デフォルトで推奨されているものだけで大丈夫だと思います.Signal Processing Toolboxにチェックが入っていることを確認してください.

また,必須ではないですけどStatistics and Machine learning だったか,そんな名前のToolboxも入ってると楽だと思います.

無事に購入が出来たら,適切な場所(C://program files/MATLAB)とかが無難,にダウンロードしてください.完了したら起動してみましょう.

画面の確認

色や配置はちょっと違うと思いますが,だいたい似た画面が出れば成功です.初回起動だと④のところになんか"Hello!"みたいなのが表示されているかも知れません.忘れました.

画面の説明です.まず
①はプログラムを書くファイルを新しく作ったり,前に作ったファイルを開いたりするメニューです.ライブスクリプトについてはとりあえず保留.便利だけど必須ではないです.次.

②は現在作業しているディレクトリです.ディレクトリが何かというと,PCの画面でファイルマークみたいなやつを使って「Aフォルダの中のBフォルダの中のCというwordファイルを開く」とかいつもやっていますよね.そこでいうAにいるのかBにいるのかを表してます.

③が,そのディレクトリ内に格納されているファイルの一覧です.薄い灰色になってるのは一個下の階層のディレクトリで,そこをクリックする事でディレクトリの移動が可能です.白文字になっているようなファイル(.mat/.m形式)のファイルをクリックすると右側の画面に開かれます..mはMATLABスクリプトファイルで,.matはMATLABが扱っている,変数を記録したファイルのようなものです.あとで確認します.

④はコマンドウィンドウです.Terminal的な奴.MATLABにプログラムファイルを通さず直接命令する時に使います.もう少し詳しくいうと,.mファイルというのはこのコマンドウィンドウに対する命令を小出しにせず一つにまとめたファイルだと考えてOKです.なのでちょっとした作業はここで行い,壮大な作業だったり保管しておきたい作業は.m形式にするって使い方で考えておきましょう.

⑤はMATLABの設定をいじるやつ.筆者のみたいにかっこいい色とか配置にしたかったら色々いじってみてください.

⑥パスの設定.あとで出てきますが重要です.説明後述.

EEGLABのダウンロード

EEGLABはMATLAB上で動くEEG解析用ソフトウェア,toolboxです. GUIベース,つまりプログラムを自分で書くことなくボタンをポチポチしてるだけで脳波の解析をすることができます.まずこいつを使って脳波解析の流れに触れていきましょう.

こちらから最新versionをダウンロードしてください.

ダウンロードしたら,解凍して保存します.保存先はMATLABをいれたディレクトリの下,toolboxディレクトリの中です.

C://Program Files/MATLAB/R####/toolbox

ここでディレクトリ構造を壊さないように気を付けてください.eeglabフォルダの中身をばらまくのではなく,フォルダそのものをここに入れるように注意してください.

ここまで出来たら,MATLABを起動します.

EEGLABのpathを通す

さて,EEGLABはダウンロードしただけだと残念ながら使用できません.たくさんの関数が格納されているのですが,その関数,「命令」をMATLABに覚えさせるためにはパスを通す必要があります.たとえば

disp('hoge')

とMATLABのコマンドウィンドウに打ち込むと,

hoge

と表示されます.これはdispという関数が,「()内の文字を表示しろ」という命令としてMATLABに登録されているからです.というふうに,EEGLABに入っている命令をMATLABに新しく登録する必要があり,それがパスを通すという作業です.

さっそくやっていきます.

この画像に戻ります.

⑥のパスの設定,先程説明を省いたこの項目でそれを行います.クリックしましょう.

こんな画面が出ると思います.右側に表示されているのが,現在MATLABに登録されているパスの一覧です.ここにEEGLABを追加していきます.

左上のサブフォルダも追加をクリックして,先程ダウンロードしたEEGLABのフォルダを探して選択し,[フォルダの選択]を押してください.右の欄にEEGLABが追加されたのが確認できたら下のボタンから保存をし,画面を閉じてください.上手くいってればpathが通っているはずです.

MATLABを再起動して,コマンドウィンドウに

eeglab

と打ってenterを押してみましょう.

こんなwindowが表示されればパスの設定は成功です!表示されない場合はパスを上手く通せてないので,もう一度パスの設定をやり直してください.

拡張機能

EEGLABはデフォルトの状態では足りない関数がいくつかあります.関数とはコンピュータに対して出す「命令」で,EEGLABの青い画面を出すのも,青い画面のボタンを押した時に何かを計算するのも,その結果を画面に表示するのも,全て関数によって命令を送っているからです.

以下では,脳波解析で使いたいのにデフォルトでは入ってない関数をEEGLABにいれていきます.

vhdrファイルの読み込み

我々が計測した脳波ファイルの形式,拡張子はいくつかのパターンがあります.そのうち,Brain Vision の計測器を通して記録された脳波データは

の3つのファイルに分けて記録されます.vhdrはヘッダーファイルで,脳波の電極名やサンプリングレートなどといった情報が記録されています.

eegが脳波ファイル本体ですが,これは電極×タイムポイント電極 \times タイムポイントの形の2次元配列になっています.どの行がどの電極なのかとかはeegファイルを見るだけだと分かりません.そのためvhdrが必要になるわけですね.

vmrkはマーカーファイルです.ここには実験時に我々が出力したトリガー情報が格納されています.トリガーの詳細は実験デザインを参照してださい.

そんなvhdr(&vmrk,eeg)ですが,ダウンロードしてすぐのEEGLABでは読み込むことができません.そこで新たにpluginと呼ばれる関数の集合みたいなものを入れ,読み込めるようにします.こちらから,bva-io pluginをダウンロードしてください.

zipをダウンロードしたら,解凍して中身を移動させます.EEGLABがあるフォルダ(指示通りにやっていれば,画像と同じような場所だと思います)を探して,

eeglabXXXX.X/plugins

フォルダに,解凍したbva-io-masterフォルダを丸ごと移動させます.画像だと他にもいくつか入ってると思いますがとりあえず無視してください.

eeglab/pluginsのなかにbva-io-masterが入ればOKです.この時,ディレクトリ構造を崩さないように注意してください.

格納が出来たら,今入れたpluginにパスを通します.EEGLABはMATLABが操作する関数で,そいつが操作する関数...なので結局,MATLAB側で呼び出すことができないとpluginを入れても機能を使うことができません.

MATLABのパス設定画面から,今追加したpluginフォルダ下のbva-io-masterを追加してください.

パスの設定ができたらEEGLABを再起動してみましょう.

File -> Import data -> using EEGLAB functions and plugins

に赤線を引いている"From Brain Vis. Rec. .vhdr or .ahdr file"が表示されれば成功です.

Cleanline

同様に,cleanline pluginもいれておきます.どんなプラグイン,というか何をするやつなのかの詳細はひとまず置いておきます.簡単にいうと,脳波データのノイズ除去に使うやつです.脳波はきっっっったねぇ信号なので,脳波解析の結果の良し悪しはいかにノイズを取り除くかに依存していると言っても過言ではありません.

てことで,そんなノイズ除去関数の一つであるcleanlineを解放します.こちらからダウンロードして,bva-io同様にpluginに入れてパスを通してください.

ADJUST

これもまあ,ノイズ除去です.こちらからダウンロードしてパスの設定.

その他

そのほかにも,EEGLABで解析をやっているうちに欲しいpluginが出てきたり,論文読んでて知らないplugin使ってるなあ自分もやってみたいなあなんて思ったら,その都度この作業をやってください.

ダウンロードしただけでは使えないのでpathを通すことを忘れないように.

全機能解放

EEGLABはそこそこ積極的に新しい機能の開発をしているので,最新版になると消されてしまった(別の関数に集約された)機能なんかも存在します.しかし残念ながら,そういった新しい関数の評価が低くて昔の方が良かったなんてことも往々にしてあります.

そこで,最新版では表示してないけど昔は使われていた機能なんかもちゃんとメニューに表示できるように設定をいじります.

File -> Preference

を押して,設定画面を開きます.ここで下から二つ目のチェックボックスにチェックを押してOKを押します.これで機能が解放されます.あとは指示に従ってEEGLABを再起動すると,先程までよりも充実したメニューが見れるようになります.

尚,この操作は別にEEGLABのバージョンをいじっているわけではないので,解析結果などの挙動が変わってしまう恐れはありません.

次へ