*beamformer関係:複数のバーチャルセンサーの座標を含んだ.ptsファイルを作る

* 逆(MEG head coordinate -> talairach)をしたいときはこちら

バーチャルセンサーの波形を取り出すのに座標を指定しないといけませんが、

目で見てbroadmann??とか個人毎に決めるのは面倒だろうと思うので、

(しかもたくさん見たい座標がある場合は特に)

talairachの座標からhead coordinateに変換した.ptsファイルを作れるように考えました。

必要なスクリプトは2つ

1. tal2headVE.m : スクリプト本体。読み込むファイルを指定して走らせると、.ptsとmemo.txtを出力します。

2. fGetTransfmMat.m : tal2headVE.mから参照します。変換行列をいくつかファイルから取り出してtalairach -> head coordinateの座標変換をします。

その他スクリプトを走らせるのに必要なファイル3つ

1. COR-??.fif (??には日付とかが入ることが多い)

mneの関係でCOR.fifを作った後MEGの計測データ(=polhemus=頭の座標を登録したデータ)でMRIとMEGの位置合わせをすると出力されるファイル。

MRI-> head coordinateの変換行列が含まれる。

2. orig.mgz

freesurferでMRIを処理すると途中で出力されるMRIのデータ。

MRI-> talairachの変換行列が含まれるらしい。ちょっと自信なし。

3. VE.txt(サンプル)

talairachの座標を列挙したファイル。

matlab上は座標の数は何個でもいけるが、beamformerの方で100個までと制限あり。

100以上は処理から外れるとのこと。

出力されるファイルは2つ

1. .pts (サンプル)

beamformerのバーチャルセンサーの座標を示したファイル。GRIDの項目で指定する。

2. memo.txt (サンプル)

読み込んだファイル、出力したファイル、各座標の名前、変換した前後の座標を示したファイル。

何個も処理してると違う被験者のデータとか読み込むミスなんかをしそうなので、ログ代わりに使ってください。

使用法

必要なファイルを用意して、

対応する部分をtal2headVE.mの中で書き換えて、

tal2headVEを走らせます。

エラー処理はないので困ったらわかりそうな人に尋ねましょう。