CONNの記事を最初に書いてからほぼ5年が経ちました。
多くの方に「CONNを使えるようになりたい」という質問をいただくので、改めて、2021年8月時点の最新バージョン 20.b を用いてCONNの使い方を紹介していきたいと思います。
CONNとは
- CONNは、一言で言うならば、脳機能MRIを用いて、脳機能結合 (functional connectivity) を評価するソフトウェアです。
- 前処理はSPMをベースにしています。このため、MatlabおよびSPMを必要とします。
必要なソフトウェア
- MatlabおよびSPM12が必要です。
- Lin4Neuroでは、スタンドアロン版を準備しています。MatlabがなくてもCONNを利用することができます。以下、Matlab版とスタンドアロン版を紹介します。
Matlab版(通常)
ダウンロード
- こちらのリンクからダウンロードします。
- 2021年8月時点での最新バージョンは 20.b です。conn20b.zip をダウンロードします。
インストール
- インストールはSPMと同じ要領です。適当なところにダウンロードしたzipファイルを展開し、そのディレクトリをMatlabのパスに追加します。SPMよりも下に置いておいた方がいいと思います。
Linux環境ですが、私の場合、下図のようになっています。
起動
- 起動は簡単です。Matlabからconnとタイプするだけです。
conn
[/code]
- 下図の画面が出れば成功です。
アップデート
- CONNのアップデートは簡単です。画面左上の Help -> Update を選択するだけです。アップデートがあれば教えてくれます。
Lin4Neuroスタンドアロン版
インストール
- Lin4Neuroでのインストールはインストーラーを準備しています。デスクトップにある “installer” をダブルクリックします。そして、その中にある”CONN 20.b スタンドアロン版のインストール”をダブルクリックします。それだけで必要なものをすべてダウンロードしてインストールします。
起動
- ターミナルを起動し、”conn” とタイプするだけです。
- Tipsとして、ワーキングディレクトリに移動してから CONN を起動したほうがその後の作業が楽です。
conn
根本先生
お世話になっております。
筑波大学の石山と申します。いつもわかりやすくまとめていただき、大変勉強になっております。
CONN 20.bにアップデートしたためなのか不明なのですが、
CONNにてSetupが終わり、Doneにて次の作業にいく際に以下のようなエラーが出てしまい、
解決法がわからず困っております。
NITRCでも似たようなエラーについてコメントがあり、
・spm12のパスが通っていない
・spm8が残っている
など書いてあったのですが、それらには該当しないようです。
Running job #1
————————————————————————
Running ‘Segment’
SPM12: spm_preproc_run (v6365) 15:47:54 – 13/09/2021
========================================================================
Failed ‘Segment’
エラー: spm_vol>spm_vol_hdr (line 80)
File “/Users/sumire/Documents/spm12/tpm/TPM.nii” does not exist.
In file “/Users/sumire/Documents/spm12/spm_vol.m” (v5958), function “spm_vol_hdr” at line 80.
In file “/Users/sumire/Documents/spm12/spm_vol.m” (v5958), function “spm_vol” at line 61.
In file “/Users/sumire/Documents/spm12/spm_load_priors8.m” (v5962), function “spm_load_priors8” at line 21.
In file “/Users/sumire/Documents/spm12/spm_preproc_run.m” (v6365), function “run_job” at line 61.
In file “/Users/sumire/Documents/spm12/spm_preproc_run.m” (v6365), function “spm_preproc_run” at line 41.
In file “/Users/sumire/Documents/spm12/config/spm_cfg_preproc8.m” (v6798), function “spm_local_preproc_run” at line 418.
Running ‘Image Calculator’
お忙しいところ恐れ入りますが、ご指導いただけると幸いです。
石山さん
今、SPMはどこにインストールされていらっしゃいますか?
MatlabはSPMが/Users/sumire/Documents/spm12 にあると認識しているようです。
実際違いませんか?
まず、Matlabのパス設定をご確認いただくのがいいかなと思いました。
根本清貴
早々にコメントいただき、ありがとうございます。
ご指摘の通り、matlabのパスは/Users/sumire/Documents/spm12 にあるのですが、
spm12もconnも/Users/sumire/Documents/の下の階にあり、原因がわからない現状です。
matlabのパスも/Users/sumire/Documents/spm12, conn, matlabにパスを通しているのですが、
他の原因は考えられるでしょうか。
お忙しいところ恐れ入りますが、よろしくお願いいたします。
そうなのですね。
そうしましたら、まず、spm12の下に tpm/TPM.nii があるかご確認いただけますか?
今回のエラーメッセージは spm12 の下に tpm/TPM.nii がないというメッセージなので。
あともうひとつ。
Matlabで
とした時の結果も教えていただけますか?
お手数おかけして申し訳ありません。
which spmとうった結果は以下の通りです。
/Users/sumire/Documents/spm12/spm.m
spm12の下にtpm/TPM.niiというファイルは見つからなかったのですが、
spm12を再ダウンロードする必要があるでしょうか。
SPMのパスは大丈夫なことが確認できました。
TPM.niiがないということは、なんらかの事象がおこって消えてしまったということですね。
これがないのがsegmentationが失敗した理由です。これは必須なので。
一度spmフォルダを削除し、改めてSPM12をダウンロードし同じ場所に展開すれば問題は解決するのではないかと思います。
根本先生
本当にありがとうございます。
spm12を再ダウンロードしたところ無事動きました。
お忙しいところ対応いただき、ありがとうございました。
よかったです。何かの理由でSPMの一部のファイルが削除されてしまったのでしょうね。