SPMは、University College Londonで開発されている、fMRIデータなどを解析するためのソフトウェアです。GUIベースで操作が簡単です。基本的にMatlab上で動作するため、Matlabを購入する必要があります。いまのところ、Octave上では完全には動作しないようです。Standalone版もあって無料で使えますが、Toolboxを追加できないなどの制約があります。
データ解析
以下では、SPM12を使って解析する方法について簡単に説明します。
準備
取得した画像のDICOMデータを、DICOM importを使ってSPMが読み込める形式に変換します。または、dcm2niixを用いてnii(nifti形式)ファイルに変換します。例えば、以下のようにコマンドラインから入力します。dcm2niixはMRIcroNやMRIcroGLに付属していますが、MRIcroGLに付属している新しいバージョンを使うことをおすすめします。とくにシーメンスのSyngo MR XA30をお使いの場合は、最新版のdcm2niixをお使いください。
> dcm2niix -z n -f %d -o Outputfolder DICOMfolder
前処理
以下の順番で、前処理を行っていきます。
1. Display 構造画像と機能画像をそれぞれ表示して、画像の原点をACに合わせる。
2. Slicetiming 機能画像のスライスの撮像時刻を調整する。SPMに入力するときは、jsonファイルのSliceTimingをコピペすることができます。
3. Realignment 機能画像の位置を合わせる。私は最初のセッションの最初の画像に合わせています。
(SPMの処理ではないのですが、ここでFSLのTopupを使って、歪み補正を行うことをおすすめします。)
4. Coregistration 機能画像と構造画像を合わせる。
5. Segmentation 構造画像を組織ごとの画像に分割する。Coregistration後の構造画像を指定します。
6. Normalization 構造画像と機能画像をMNI標準脳に合わせる。
7. Smooting 機能画像に空間平滑化処理をする。
統計解析
1. First level specification 個人データの統計解析内容を決定する。
2. First level estimation 個人データの統計解析を実施する。
3. Second level specification グループの統計解析内容を決定する。
4. Second level estimation グループの統計解析を実施する。
5. Results 解析結果を表示する。
追加Toolbox
SPMに初期設定で付いているToolbox以外にも、たくさんのToolboxがあって、追加することができます。私が主に使用しているのは以下のようなものです。
SPM anatomy toolbox、Anatomical Automated Labeling:観測された脳活動が含む領野を調べたり、特定の座標がどの領野に含まれるかを調べたりすることができます。
MarsBaR:Region of Interest (ROI)解析をするためのtoolboxです。特定の領域から、GLMのbeta estimatesや% signal changeを取り出すことや、% signal changeの時系列を調べることができます。
gPPI:機能的結合を調べることができます。gPPIはgeneralized psychophysiological interactionの略で、設定した領域から実験条件によって機能的結合が異なる脳領域を調べます。
TIPS
ファイルのパスの変更
解析に使用しているコンピュータを移動すると、ファイル指定のパスが合わずに、解析の続きできなくなることがあります。このようなときは、spm_changepathという関数を使って、パスの内容を変更することができます。
SPMの解析結果をHuman Connectome Projectのwb_viewで脳表面に表示
spmT_0001.niiを対象画像として、Conte69の左半球に表示する方法です。以下のコマンドを使って、func.giiというGIFTI形式のファイルを作成します。
> wb_command -volume-to-surface-mapping spmT_0001.nii Conte69.L.midthickness.32k_fs_LR.surf.gii spmT_0001.L.func.gii -ribbon-constrained Conte69.L.white.32k_fs_LR.surf.gii Conte69.L.pial.32k_fs_LR.surf.gii
wb_viewでConte69のspecファイルまたはConte69.L.midthickness.32k_fs_LR.surf.giiを開いて、次にspmT_0001.L.func.giiを開きます。Overlay toolboxでspmT_0001.L.func.giiにチェックを入れるとT値のマップが表示できます。右半球も同様に行うと、両半球のT値のマップを表示できます。
※Conte69のspecファイルなどの画像データ群はMidnight Scan Clubのgithubなどからダウンロードできます。