loadfifとsavefif
NeuromagはMatlab用のFIFF file読み書きツールを用意しています。
Neuromagに就職しなかったKimmo Uutela氏が作成したもので、
Kimmo氏のホームページ
で公開されています。
HP-UX版とLinux版Matlab用のみで、残念ながらWindows版Matlabには対応していません。
Minimum Current Estimationはこのtoolを使っています。
広島大学病院では、/neuro/meg-pd_1.2にinstallされていました。
*.mexhp7は32bit OS、HP-UX 10用に高速化(compile)されたコードで、
*.mは本来Matlabのテキストで書かれた実行コード(関数Mファイル)ですが、
ここではコメント文しかありません。
このコメント文が、help 関数名の際に表示される文章となっています。
実際に使ってみます。
terminalから入り、matlabとtypeします。
体性感覚誘発磁界のデータで試してみます。
[filename,pathname]=uigetfile; %ファイル名の選択
fname=strcat(pathname,filename);
[B,sfreq,t0]=loadfif(fname); % FIFF fileの読み込み
% Bはチャンネル数×サンプル数からなる配列
% sfreqはサンプリング周波数
% t0はB(:,1)の時の時間
t=t0+((1:size(B,2)-1)/sfreq; %時間
figure;plot(t,B,'k');
体性感覚誘発磁界が表示されました。
magnetometerおよびgradiometerの単位はTおよびT/mです。
fTおよびfT/cmにするには1015および1013倍します。
次にSSPをかけます。
T=projmat(fname); %1つ1つのSSPをとりだせるかどうか不明
figure;plot(t,T*B,'k');
最後にfiff fileを作成します。savefifを使いますが、予めmegmodelを使って、
チャンネル情報の定義などを行っておく必要があります。
megmodel(fname,sfreq,t0); % megmodelの定義
savefif('..../test.fif',T*B); % FIFF fileの作成
ではGraphを使ってcheckしてみます。
Graphを以下のような設定にしました。pick widget、megのnamesはMEG*です。
test.fifを開きました。
ちゃんとfiff fileとして通用しました。