Ubuntu14.04以降へのFreeSurfer 6.0のインストール

2014年12月にFreeSurfer 5.3のインストールの方法を記載しましたが、しばらく時間が経ちました。最近、FreeSurfer 6.0がリリースされましたので、コピペでもいけるぐらいにまとめてみます。

英語でのFreesurferをLinuxにインストールするときの具体的な方法は、
こちらに書いてあります。以下は英語を読むのがつらい方のためです。

なお、楽をしたい人は、一番最後にある【楽をするためのスクリプト】をご覧ください。

続きを読む

FreeSurfer v6.0 勉強会を開催します (2017年12月2日)

※2017年9月15日0:00現在、50名を超える申し込みがありましたので、申し込みは終了いたしました。

これまでVBMチュートリアルを行なってきていますが、受講者のアンケートで、「FreeSurferの勉強をしたい」という意見が一定程度ありました。

構造画像解析において、FreeSurferは通らなければいけないところかと思います。

しかし、日本語でのチュートリアルは過去に2011年に慶應大学の先生方が講習会を開かれていらっしゃいますが、その後、開かれていません。

一定のニーズがあると思いますので、岩手医科大学の山下典生先生の協力を得て、FreeSurferの勉強会を企画しました。

この企画はあくまでも個人的なものであり、研究費の支援などはなく、有料会議室を借りてもいますので、有料講習会とさせていただきます。(その分の学びがあるように準備します!)

これまでに開催してきたチュートリアルのように、ご自身のパソコンを持ち込んでいただき、FreeSurferにじっくり触れていただきます。

想定している対象者は、FreeSurferの経験がまだ少ない方です。全く経験がない方もOKです。また、recon-allはやったことがあるけれども、マニュアル修正をやったことがない方はとてもいい経験になると思います。これらの経験がある中級者以上の方には物足りないかと思います。

もちろん、事前サポートもさせていただきます。FreeSurferだけでなく、他にも必要なソフトなどもありますので、前もって万全な体制を整えて勉強会に臨めるようにサポートさせていただきます。それだけでも、今後の研究をする準備になるかと思います。

日程及び場所は以下になります。

  • 日程:2017年12月2日 10:00-18:00
  • 場所:NATULUCK五反田東口駅前店会議室
  •    五反田駅東口徒歩2分
       東京都品川区東五反田5-27-10 第1野村ビル 5階
       Googleマップはこちら

  • 講師
  • 根本清貴(筑波大学医学医療系精神医学)
    山下典生(岩手医科大学医歯薬総合研究所超高磁場MRI診断・病態研究部門)

  • セミナー内容(予定)
  • ・個人解析(recon-all)の方法、及び多数例解析のための工夫
    ・個人解析結果の見方、様々な出力ファイルの意義
    ・個人解析結果のマニュアル修正
    ・GUIを用いた基本的なグループ解析

  • 定員:40名程度(先着順)
  • 参加費:1万円
  • 申し込み方法
  • 定員に達したため、締め切りました。

SPM12でのもうひとつのRender

すぐできるVBMで、一般的なRenderにつれて触れていますが、最近、SPMに、もうひとつのRender機能があることを発見しました。

SPMで統計結果を出した後、左下のウィンドウから overlays… Render を選択するところまでは同じですが、

ファイルを選ぶ際に、SPM12のフォルダの”rend”ではなく、”canonical”フォルダにある”cortex*.gii”を選択します。

すると、下のようなRenderファイルが得られます。

これはマウスでくるくる回せます。

また、内側を見せたい場合は、右クリックして、Connected Componentsのうちのどちらかのチェックを外します。

そうすると、内側を見ることができるようになります。

きれいな結果なので、論文に使えると思います。

SPM12 compatible automatic reorienting script

I used to use auto_reorient.m script to reorient MR images. However, this script doesn’t work without runnig SPM12 since spm_affreg.m is moved to spm12/toolbox/OldNorm/.

Therefore, I thought of another way to reorient images automatically.

The simple way is to coregister images to MNI images. However, if origin is too far from center of the image, it is likely to fail. So before coregistration, I set the origin of the image to the center, then coregister the image to MNI (icbm152.nii under spm12/toolbox/DARTEL).

I tested the script with various images and it works fine.

If you are interested, you can get the script from the link below.

Download acpc_coreg.m (Right click -> Save as)
Save the script under directory to which Matlab path is set, then type

acpc_coreg

from Matlab command window.

You need SPM12 for this script.

How-to build DSI Studio for Ubuntu 14.04 or later

DSI Studio is an open-source diffusion MRI analysis tool. We need to compile the software for Linux.
Note for Compile is found here, but it is a liitle bit out-of-date.
I could successfully finish compile the DSI Studio for Ubuntu 14.04 and 16.04. Below is what I did.

  1. Install gcc-5 and g++-5 (for Ubuntu 14.04)
  2. DSI Studio needs gcc-5 and g++-5 for compile. We can install them via PPA.

    sudo add-apt-repository ppa:ubuntu-toolchain-r/test
    sudo apt-get update
    sudo apt-get install g++-5
    
  3. Link gcc and g++ to gcc-5 and g++-5 (for Ubuntu 14.04)
  4. Just installing gcc-5 and g++-5 won’t have any effects on the machine.
    You can check the version of gcc and g++ by typing gcc –version and g++ –version

    gcc --version
        gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
    
    g++ --version
        g++ (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
    

    In order to make gcc-5 and g++-5 available, we need to do the following;

    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 10
    sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 10
    

    You should see something like;

    update-alternatives: using /usr/bin/g++-5 to provide /usr/bin/g++ (g++) in auto mode
    
  5. Install necessary files for compile
  6. We also need to install the following;

    sudo apt-get install qt5-qmake qt5-default
    sudo apt-get install git libboost-all-dev zlib1g zlib1g-dev
    

    Some may need to install libqt5opengl5-dev (Thank you Steven Baete for the Feedback!)

    sudo apt-get install libqt5opengl5-dev
    
  7. Prepare a working directory
  8. Prepare a working directory. We save files in this directory.

    mkdir dsistudio
    
  9. Get the Windows version of DSI Studio
  10. Download the Windows version of DSI Studio from this link and save it under working directory (dsistudio).
    Filename should be “dsi_studio_64.zip.”

  11. Get the source code from GitHub
  12. Now we get the source code of DSI Studio from Github. We also need “frankyeh-TIPL-xxxxxx(revision number).zip” to be downloaded. After unzipping, rename the folder as image, and move under src.

    cd dsistudio
    git clone -b master git://github.com/frankyeh/DSI-Studio.git src
    xdg-open https://github.com/frankyeh/TIPL/zipball/master
    unzip frankyeh-TIPL-xxxxxxx.zip
    mv frankyeh-TIPL-xxxxxxx image
    mv image src
    
  13. Compile
  14. Prepare a directory for build and compile.

    mkdir build
    cd build
    qmake ../src
    make
    

    If it goes well, you should find dsi_studio under build directory.
    You may remove unnecessary files with make clean.

    make clean
    
  15. Packaging
  16. Windows version zip file has atlas and other files included. We make use of it.
    DLL files are for Windows, so we delete all of them.

    cd .. # Now you should be in the "dsistudio" directory
    unzip dsi_studio_64.zip
    cd dsi_studio_64
    find . -name '*.dll' -exec rm {} \;
    rmdir iconengines imageformats platforms printsupport
    rm dsi_studio.exe
    cp ../build/dsi_studio .
    
  17. Run DSI Studio
  18. Now you can run DSI Studio from the terminal.

    ./dsi_studio
    

    If everything works, the command brings up DSI Studio.

SPMの3つのウィンドウを起動するためのコマンド

SPMのスクリプトを書く際、SPMのウィンドウを起動したいと思うことがあります。
SPMのコードを見ながら、以下で起動できることがわかりました。
便利なので備忘録がわりに書いておきます。

spm('CreateMenuWin','on'); %左上のウィンドウ
spm('CreateIntWin','on');  %左下のウィンドウ
spm_figure('Create','Graphics','Graphics','on'); %右のウィンドウ

AC-PC自動設定スクリプト(SPM12対応版)

かつてauto_reorient.mというスクリプトを配布していましたが、これは現在のSPM12で動かなくなってしまいました。理由は単純でSPM12からspm_affregという機能がなくなってしまったからです。もし、過去のSPMからspm_affreg.mを持ってきたら問題なく使えるのですが、この機会に別の手法を考えてみました。

シンプルな方法は、MNI標準脳にCo-registrationすることです。これだけでかなりあいます。
しかし、画像の原点があまりにも違うところに設定されているとエラーが出ることがあります。
そこで、以前、山下先生に教わった方法を採用し、まず、originを画像の中心に設定し、そのうえで、SPM12に搭載されているicbm152.niiにco-registartionするスクリプトを書いてみました。

多くの画像で試してみましたが、それなりにうまくいきますし、処理速度も速いです。

よかったら試してみてください。

acpc_coreg.mをダウンロード(右クリックで保存してください)

Matlabのパスが通っているフォルダにこのファイルを置いていただき、

Matlabから

acpc_coreg

とタイプするだけです。

シーケンスを自動判別し、ファイル名を自動リネームするDICOM→NIFTI変換スクリプト

本日、第19回ヒト脳機能マッピング学会で発表したのですが、ブログのタイトル通り、シーケンスを自動判別し、ファイル名を自動でリネームするDICOM→NIFTI変換スクリプトを書いてみました。

MacおよびLinuxに対応しています。

必要なソフトウェアは以下の2つです。

  • MRIcron
  • パスが通っていることが必要です。

  • FSL
  • FSLも同様にパスが通っていることが必要です。

このスクリプトは以下から入手可能です。(右クリックで「名前をつけて保存」で保存できます。)

https://raw.githubusercontent.com/kytk/shellscripts/master/ren-dcmcnv.sh

  1. インストール
  2. インストールですが、パスが通っているディレクトリに保存していただくだけです。

  3. 使い方
  4. 使い方はとてもシンプルです。

    • フォルダの準備
    • 最初に、作業用フォルダを準備します。その中に、各被験者のフォルダを準備します。フォルダ名がとても重要です。このスクリプトはフォルダ名をファイル名のベースに使うからです。
      たとえば、被験者IDがsubj01ならば、フォルダ名をsubj01とします。その中にその被験者のDICOMファイルをすべて放り込みます。(ディレクトリ構造になっていてもなっていなくてもかまいません)

    • スクリプトの実行
    • ターミナルを起動し、作業用フォルダに移動します。

      そして、以下をタイプします。

      $ ren-dcmcnv.sh
      

      これだけです。

    • スクリプトが行うこと
    • スクリプトは以下のことを行います。フォルダ=ディレクトリです。

      1. ワーキングディレクトリに “DICOM”, “nifti” ディ
        レクトリを作成します。
      2. wd内にできたDICOMディレクトリに移動します。
      3. DICOM ディレクトリ内で dcm2nii を実行し、NIFTIファ
        イルを生成します。
      4. fslhd を用いてNIFTIファイルのヘッダー情報を取得します。
      5. 以下のルールに基づき、3次元T1強調画像、fMRI画像、DTI画像を判別します。
        • 3次元T1MRI: 画像の第2次元≧256, 第3次元>100, TE<6msec; (V_)
        • fMRI: 画像の第4次元>100; (F_)
        • DTI: 画像の第4次元が8以上100 未満 (D_)
      6. ディレクトリ名を取得し、ファイル名のベースとし、それぞれの接頭辞に識別記号を付加します。
      7. 変換したファイルをniftiディレクトリに移動します。

よかったら試してみてください。

MacOS上でSPM12のフォントの上半分が切れる時の対処法

先日、VBMチュートリアルにて、ある質問を受けました。

「MacのSPMでファイル選択の時にフォントの上半分が切れてしまうんですけど、解決法はないですか?」

具体例を示したほうがわかりやすいので、以下に示します。ファイル選択画面でこうなります。

これは気持ち悪いですよね。

いろいろ調べました。

その中で、どうも、spm12/matlabbatch/private の中にある
cfg_mlbatch_defaults.m

の中でフォントを規定しているようだというところにチュートリアルの最中に気づきました。

そして、今日、少し調査してみました。
SPMのバッチはSPM単独ではなく、Matlabbatchというものを使っているという知識はありました。

なので、GoogleでMatlabbatch font で調べたところ

以下の記事を見つけました。

https://en.wikibooks.org/wiki/SPM/Installation_on_64bit_Windows

その下にこんなことが書いてありました。

Edit spm/matlabbatch/private/cfg_mlbatch_defaults.m and modify lines:

cfg_defaults.cfg_ui.lfont.FontName = ‘Arial Narrow’;
cfg_defaults.cfg_ui.bfont.FontName = ‘Arial Narrow’;

Arial NarrowはMacにもあります。試してみました。

具体的には、cfg_mlbatch_defaults.m を開き、23行目にある

‘FontName’,get(0,’FixedWidthFontName’),…

‘FontName’,’Arial Narrow’,…

に変えます。

それで保存して、SPMを起動して、ファイル選択画面を出したところ…

フォントが綺麗に表示されるようになりました!

フォントがきになる方は試してみる価値があるかと思います。

ちなみに、ui.bfontの方は変えない方が良かったです。

CONN 17a のバグとその解決方法

CONN17a において、何人かからうまく動作しないというご連絡をいただきました。

以下のようなエラーメッセージが出ます。

Error using conn_process (line 763)
duplicated ROI name atlas.Vermis 10
Error in conn_process (line 15)
case 'setup', disp(['CONN: RUNNING SETUP STEP']); conn_process([0:4,4.5,5]);

調べた所、以下のバグが報告されています。

https://www.nitrc.org/forum/forum.php?thread_id=7356&forum_id=1144

解決策として、以下のリンクからrex.mをダウンロードし、CONN17aにあるrex.mに対して上書き保存してください。

rex.mをダウンロード

FSLのGLMで対応のあるt検定のdesign matrixを作成・修正する方法

私がもっているデータのひとつに縦断DTIデータがあり、東京都健康長寿医療センターの下地先生が包括脳/ABiSチュートリアルで教えてくださっているTBSSを用いて解析を行っています。(下地先生は非常にわかりやすい講義をしてくださることで人気の先生です。)

GLMでDesign matrixを作成する時にひとつ困ったことに遭遇しました。

FSLのGLM Wizardでは、対応のあるt検定のDesign matrixを簡単に作成することができます。

続きを読む

SPM12でestimateに失敗するとき (SPM12 r6906のバグ)

SPM12で、ひとつバグがあることがわかっています。
モデル作成の時に、maskにexplicit maskを指定すると、estimateができずに失敗するというものです。

以下のようなエラーが出ます。

Running ‘Model estimation’

SPM12: spm_spm (v6842) 11:34:04 – 25/11/2016
========================================================================

SPM12: spm_est_non_sphericity (v6827) 11:34:05 – 25/11/2016
========================================================================
Failed ‘Model estimation’
存在しないフィールド ‘xVol’ を参照しています。
In file “/Users/psymacpro3/Documents/MATLAB/spm12/spm_est_non_sphericity.m” (v6827), function “spm_est_non_sphericity” at line 105.
In file “/Users/psymacpro3/Documents/MATLAB/spm12/spm_spm.m” (v6842), function “spm_spm” at line 431.
In file “/Users/psymacpro3/Documents/MATLAB/spm12/config/spm_run_fmri_est.m” (v5809), function “spm_run_fmri_est” at line 33.

The following modules did not run:
Failed: Model estimation

これは、バグであることが知られており、解決方法として、spm_est_non_sphericity.mを差し替えることが推奨されています。

下記リンクのものをダウンロードし、SPM12のフォルダに上書きしてください。
これで問題なくなります。

バグフィクスされたspm_est_non_sphericity.mをダウンロード(右クリック→名前をつけて保存で保存してください)
リソースはこちら:
https://www.jiscmail.ac.uk/cgi-bin/webadmin?A2=spm;2c0ae193.1611

SPM12のアップデート(6906)が公開されました

SPM12のアップデートが公開されました。
今回のアップデートでMatlab R2016a日本語版でSPM12が起動しないバグが解消されています。

SPM12をすでにインストールされている方は、Matlabからの簡単なコマンドでアップデートできます。spm_update(1)とタイプするだけです。

spm_update(1)
         A new version of SPM12 is available on:
   http://www.fil.ion.ucl.ac.uk/spm/download/spm12_updates/
        (Your version: 6685 - New version: 6906)
          Download and install in progress...
         Success: 2152 files have been updated.

CONNチュートリアル 14: QA (Quality Assurance)

これは本来は、First-level Analysisをやる前に確認しておくものですが、忘れたので、今、書きます。

first-level Analysisで結果を確認したとき、サンプルデータのSubject 16において、以下のようにDMNではなく、かなり変な結果になりました。

これはおかしいですね。

改めてSetup -> Covariates 1st levelのところにいってscrubbingの結果を確認すると、
ほとんどすべてが外れ値と判定されていることがわかります。

conn052

ちなみに、次のSubject, Subject 17の結果を見れば本来はこの程度ということがわかります。

conn053

このscrubbingの話は、いつかもう少し詳しくしますが、要するに、頭が大きく動いてしまっているボリュームを検出する機能です。CONNは適切な結果を得るために、scrubbingにひっかかったボリュームは取り除いて解析します。今、Subject 16に関しては、ほとんどすべてが外れ値だったために、時系列の相関を計算するのに十分なボリュームがなくなってしまったわけです。

そこで、改めて、Quality Checkをします。CONNのチュートリアルでは、QCではなく、QAといっていました。Quality Assuranceの略ですね。興味深かったので、そのままにします。

QAのひとつは、Setup – Covariates 1st-levelでscrubiingを見ることでできます。

今、見た所、Subject 16, 19の2つがかなり外れ値が多い状況です。
(以前の投稿では、4被験者でしたが、外れ値の判定をゆるくしたことで、Subject 16, 19以外はOKと判断しました)

なので、このSubject 16, 19は取り除きたいと思います。

普通、このような場合、解析を最初からやらなければいけないのですが、CONNのものすごい親切なところは、Setup – BasicでSubject数を減らすと、取り除くSubjectを聞いてくれるのです。

なので、Setup Basicに戻り、今の20例から2例をひきますので、Number of Subjectsを18に変更します。

そして、Enterを押すと、新しいダイアログが出ます。

ここで、取り除きたいSubject 16と19を選択します。複数選ぶ場合は、Ctrlキーを押しながら選択することで、選択できます。

これでOKを押すと、「本当に消してもいいの?回復できないよ」と確認されます。

これでOKを押すと、しばらく何も起こらないように見えますが、MatlabのWindowを見ると、何やらいろいろコピーしているのが見えます。

conn057

終わりましたら、改めてSetup -> Covariates 1st-levelを見てみましょう。
Subjectが18に減っているのがわかると思います。

こればかりでは、ありません。Setup -> Covariates 2nd-levelを見てみてください。
なんと、先ほど設定したCovariateで削除した2例分がきちんと削除されているのがわかります。
これはとても便利ですね。(また、本論から外れますが、covariate 2nd-levelの項目が増えていますね)

最後に、first-level Analysisに戻りましょう。
もちろん18例のデータだけで構成されていることがわかります。

このQAは本来は、Preprocessingの後にすべきことです。上記のようにCovariatesも処理してくれるので、Covariates 2nd-levelを設定した後で、このQAをするといいのかもしれません。

CONNチュートリアル 13: first-level Analysis: ROI-to-ROI & Seed-to-Voxel

Denoisingが終わった後、first-levelの画面に来ます。
first-levelということは、

個人のfunctional connectivityを見る

ということになります。

最初は、下のようなものしか見えません。

ROI-to-ROIとSeed-to-Voxelがひとつ
Voxel-to-VoxelとICA networksが次にきて、
最後にdynamic ICAがきます。

まずは、ROI-to-ROI, Seed-to-Voxelを見ていきましょう。

ROI-to-ROIをクリックします。

ここでは画面の右側でいろいろなことが確認できますので、右側のスクリーンショットで説明します。

上にある “Preview first-level analysis results”
の下に領域を選ぶことができます。

この領域は “Seed” になる領域です。

まず、わかりやすく、デフォルトモードネットワーク(DMN)を確認してみましょう。

atlas.FP r のところをクリックすると領域が多く出てきますので、スクロールして、”networks.DefaultMode.PCC (1,-61,38)”を選択してください。

画像が見えているところの右側にマウスをもっていくとスクロールバーがあらわれますので、適宜スクロールしていただくと、確かにDMNっぽい感じで見えます。

ただ、これは色がつきすぎの感じがしますね。

画面下を見ると threshold 0.25 と見えます。
これは、今の場合Default Mode NetworkのPCCと相関係数0.25以上の関係にある領域を描出しているということになります。

この値を変えてみることで変わります。

そして、一番右側にあるSubjectsを適宜クリックしていくと、各個人のDMNの様子を観察することができます。

ここで大きな問題がないことを確認したうえで、左下のDoneをクリックします。

そうすると、first-level Analysisの解析が行われます。

CONNチュートリアル 12: Denoising

Setupがすべて済んだらDenoisingです。

正直、ここはすべてデフォルトのままで大丈夫です。
ただ、ひとつひとつ確認する価値があります。

確認ポイントはいくつかあります。

  • 左の “Confounds” をご覧ください。ノイズを減らすために、白質、CSF、realignment, scrubbingの情報を使っています。
  • 左下にはバンドパスフィルタの情報がのっています。
  • 一番右のSubjectsを選ぶことで、各個人のデータがどのようにノイズが減るのかがわかります。
  • ヒストグラムで、実際にデータがどのようになるのかが直感的に理解できます。灰色のヒストグラムがDenoising前、黄色のヒストグラムがDenoising後です。
  • ヒストグラムの下はボクセル同士のconnectivityがDenoisingによってどのように変化するかを示しています。これを見ると、ノイズによる見せかけの相関が減っていることがわかります。
  • 相関グラフの下は、BOLD信号のタイムシリーズの信号値がDenoisingによってどのように変化するかを示しています。

これをひと通り確認したら、左下の”Done”をクリックしてください。
先ほどのOptionsの時と同じ画面が出ますので、 “Start” で処理がはじまります。

CONNチュートリアル 11: Setup – Options

Setupの最後のところまで来ました。

最後はOptionsです。

ここは、デフォルトのままで大丈夫です。

ここまでいったら、一度保存しましょう。

左上の Project -> Save で現在のプロジェクトを保存できます。

そこまでいったら、左下の “Done” をクリックしてください。
そうすると、下のような画面が出てきます。

デフォルトのままで結構です。
Startをクリックすると処理がはじまります。
しばらく時間がかかりますので、その間、ちょっと休憩です。

CONNチュートリアル 10: Setup – Covariates 2nd-level

続いてCovariates 2nd-levelの設定です。
このCovariates 2nd-levelは、今設定しなくても大丈夫です。
(逆に言うと、これまで設定してきたものは最初に設定する必要があります。)
2nd levelのCovariatesは解析を進めていくなかで追加したくなるものもありますので、そのような親切な設計になっています。

ただ、今は、設定しましょう。

楽をしたいので、Matlabの方で少し準備を進めます。

まず、Matlabで現在のディレクトリを確認します。

pwd

で確認できます。

conn037

もし、conn_practiceのディレクトリにいないようでしたら、移動します。

そして、さらにその下のsampleディレクトリに移動します。

cd sample

この中にSubjects.txtというファイルがあります。
これはMatlabで読み込むことができるように工夫してあります。

これをMatlabで読み込み、subjという変数に代入しましょう。
変数名は何でもいいのですが、タイプすることを考えると短い方がいいでしょう。

Matlabから

subj=load('subjects.txt');

とすると、右側のワークスペースにsubjという変数ができているのがわかります。

subj

でその内容を見ることができます。

conn038

ここで、第1列は、IDなので実際は使いません。
第2列は、診断(健常者か統合失調症か)
第3列は、年齢
第4列は、性別(男性が1、女性が2)

となっています。

Matlabでは、変数の中で特定の列だけ使いたい場合は、

変数(:,その列)

という表し方をします。

今の場合、診断だけ取り出したいのであれば、

subj(:,2)

で表すことができます。

それで、CONNはMatlabで動くので、今作った変数をそのまま使うことができます。

それでは、CONNに戻ります。

左側のメニューからCovariates 2nd-levelに進みます。
(バージョン17からQAの結果がCovariates 2nd-levelに自動で入るようになりました。)

そして、画面中央の左側にあるCovariatesで”All Subjects”とある下をクリックします(何もないところです)。
そうすると、右側にenter covariates name hereと出てきます。

これから、診断と年齢と性別を順番にいれていきましょう。

まずは診断です。もともとのファイルには、健常者0、統合失調症1となっていますが、今後、群間比較することを考えて、controlという変数とpatientという変数を準備します。

まず、健常者から準備しましょう。

covariates nameを “control” とします。

[0 0 0 … 0 0 0]と0が20個並んでいますが、これを削除し、以下のようにタイプしてEnterキーを押してください。

subj(:,2)==0

subj(:,2)は先ほど出てきたものです。

subj(:,2)==0は、Matlabでの論理値というもので、0であれば真の値として1を、それ以外は偽の値ということで0を返すものです。つまり、今の場合、健常者は0なので、0であれば1にして、それ以外(といっても1しかないのですが)は0にするというものです。

また、画面下の方の”Description”には説明をつけられるようになっています。なので、今は”Control subjects”と入れておきましょう。

そうすると、下のようになるはずです。

次に、patientを準備します。

covariates nameを “patient” とします。

Valuesは

subj(:,2)==1

となります。

Descriptionは必須ではないのでいれなくてもいいでしょう。
ここでわざわざControlとPatientをわけておく理由は、後で群間比較をするためです。いわゆるダミー変数です。

同様に、年齢、性別も入れていきましょう。

年齢は
covariates name: age
values: subj(:,3)

性別は
covariates name: gender
values: subj(:,4)
Description: Male=1; Female=2

とします。

その結果、図のようになります。

Descriptionを書いておくと、項目名のすぐ右側にそのDescriptionが表示されるのですね。便利ですね。

ここまでできれば、共変量の設定はおしまいです。

CONNチュートリアル 09: Setup – Conditions and Covariates 1st-level

Setupの確認はあともう一息です。

左メニューから”Conditions”をクリックします。
rs-fMRIの場合、Conditionsはいじらなくて大丈夫です。
なのでこんな感じとだけ見ておきましょう。

その次に、”Covariates 1st-level”をクリックします。

画面中央のやや左に”realignment”, “QA_timeseries”, “scrubbing”の3つがあるのが見えます。

realignmentは位置合わせの情報を読み込んでいます。
translation(水平移動)とpitch(回転)に関して、x, y, z方向に頭がどれだけ動いたかの指標になります。

QA_timeseriesは外れ値に関しての情報です。2つの外れ値があります。ひとつが、信号値をZ変換した後に、各ボリュームの全体の値がどれだけ平均から外れているかであり、もうひとつが、頭の動きです。

scrubbingは、外れ値になるスキャンがどこになるかを示したものです。
この詳しい説明はいつかすることとします。

個人によっては動きが非常に激しい人がいることがわかります。(例Subject 16)
これも解析に加味されます。