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

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

first-level Analysisで結果を確認したとき、サンプルデータのSubject 16において、以下のように全く相関がみられないという結果が得られました。

conn051

これはおかしいですね。

改めて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 1, 2, 16, 19が、かなりの割合で外れ値(外れスキャンというのが適切かもしれません)がありました。

なので、この4つのSubjectは取り除きたいと思います。

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

なので、Setup Basicに戻り、今の20例から4例をひきますので、Number of Subjectsを16に変更します。
そして、Enterを押すと、新しいダイアログが出ます。

conn054

ここで、取り除きたいSubjectを選択します。クリックを押しながら選択することで、4例を選択します。

conn055

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

conn056

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

conn057

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

conn058

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

conn059

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

conn060

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

CONNチュートリアル 13: first-level Analysis

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

個人のfunctional connectivityを見る

ということになります。

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

conn047

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

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

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

atlas.FP r のところをクリックすると領域が多く出てきますので、一番下までスクロールして、dmn.PCCを選択してください。

conn048

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

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

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

これを0.5に変えてみましょう。

それだけで、ぐっと見やすくなります。

conn050

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

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

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

CONNチュートリアル 12: Denoising

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

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

conn046

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

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

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

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

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

最後はOptionsです。

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

conn043

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

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

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

conn045

デフォルトのままで結構です。
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('sample.txt');

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

subj

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

conn038

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

となっています。

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

変数(:,その列)

という表し方をします。

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

subj(:,2)

で表すことができます。

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

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

左側のメニューからCovariates 2nd-levelに進みます。

conn039

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

conn040

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

まずは診断です。もともとのファイルには、健常者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にするというものです。

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

conn041

次に、patientを準備します。

covariates nameを “patient” とします。

Valuesは

subj(:,2)==1

となります。

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

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

性別は
covariates name: gender
values: subj(:,4)

とします。

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

conn042

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

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

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

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

conn034

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

画面中央のやや左に”realignment”と”scrubbing”の2つがあるのが見えます。

realignmentは位置合わせの情報を読み込んでいます。
x, y, z方向に頭がどれだけ動いたかの指標になります。

conn035

scrubbingは、外れ値になるスキャンがどこになるかを示したものです。
この詳しい説明はいつかすることとします。
個人によっては動きが非常に激しい人がいることがわかります。
これも解析に加味されます。

conn036

CONNチュートリアル 08: Setup – Preprocessingの確認 (Structural, Functional, and ROIs)

それでは、前処理の結果、どうなったか確認しましょう。

左のメニューから”Structural”をクリックします。

そうすると、脳が頭蓋骨が除かれ、標準化された脳になっていることがわかります。

conn031

次に、左のメニューから”Functional”をクリックします。

そうすると、当初は [150 Files]となっていたものが、今は[144 Files]となっていることに気づきます。前処理で最初の 6スキャンを除くとしていたことがここに反映されているわけですね。また、脳も標準化されています。

conn032

その次に、左のメニューから”ROIs”をクリックします。

そうすると、”Grey Matter”, “White Matter”, “CSF”, “atlas”, “dmn”というROIがあるのがわかります。GM, WM, CSFに関しては、segmentationの結果がそのまま反映されています。WM, CSFはこの後、”Denoising”に用いられます。

conn033

“atlas”および”dmn”はもともとCONNに用意されているものです。
これがどのように作られたのか、CONNの中にきちんと書かれています。
CONNがインストールされたディレクトリの中にroisというサブディレクトリがあり、”atlas.info”, “dmn.info”というファイルがあります。そこの記載を抜粋します。

まずは、”atlas.info”から。

ROIS defined from:

1) Cortical ROIs from FSL Harvard-Oxford Atlas maximum likelihood cortical atlas (HarvardOxford-cort-maxprob-thr25-1mm.nii); divided bilateral areas into left/right hemisphere; (91 ROIs)

2) Subcortical ROIs from FSL Harvard-Oxford Atlas maximum likelihood subcortical atlas (HarvardOxford-sub-maxprob-thr25-1mm.nii); disregarded Cerebral White Matter, Cerebral Cortex, and Lateral Ventrical areas; (15 ROIs)

3) Cerebellar parcelation from AAL Atlas (26 ROIs)

次に、”dmn.info”から。

ROIs defined from Fox et al. Default Network areas:
Michael D. Fox, Abraham Z. Snyder, Justin L. Vincent, Maurizio Corbetta, David C. Van Essen, and Marcus E. Raichle
The human brain is intrinsically organized into dynamic, anticorrelated functional networks
PNAS 2005 102 (27) 9673-9678; published ahead of print June 23, 2005, doi:10.1073/pnas.0504136102

アトラスはてっきりAALと思い込んでいましたが、上をみると、違いますね。複数のアトラスをもとに構成されているということがわかりますね。

CONNチュートリアル 07: Setup – Preprocessing

これまで、構造画像、機能画像を指定してきました。
次に Setup -> ROIs に行かずに、画面左下にあるPreprocessingにうつります。

(前処理が終わっているという場合は、中級編になりますので、まずは、前処理をしていない状態で説明していきます)

conn021

まずは基本からいきましょう。
Preprocessingをクリックしたあと、最初に出てくる画面で、

default preprocessing pipeline for volume-based analyses

になっていることを確認したうえで、

画面右側にある”Add”をクリックします。

conn022

そうすると、下図のようになります。

conn023

これは前処理の順番が記載されています。

  • functional realignment & unwarp
  • 機能画像の位置合わせとunwarpを行います。

  • functional center to (0,0,0) coordinates
  • これはAC-PC位置合わせの簡易版と思ってください。画像の原点を画像の重心に持ってきます。たいていの場合、これでAC-PCに比較的近いところにきます。ただ、これは万能ではありませんので、注意は必要です。

  • functional slice-timing correction
  • 機能画像のスライスタイミング補正を行います。

  • structural center to (0,0,0) coordinates
  • 先ほどと同様に構造画像も画像の原点を画像の重心に持ってきます。

  • structural segmentation & normalization
  • 構造画像の分割化と標準化を行います。ここでの標準化はDARTELでなく、低次元の標準化であることに注意してください

  • functional normalization
  • 機能画像も解剖学的標準化を行います。

  • functional outlier detection
  • これは機能画像で頭が過度に動いてしまったようなスライスを検出するという機能です。scrubbingと言います。AFNIではcensoringと呼ばれています。ちなみに、outlierは外れ値という意味です。

  • functional smoothing
  • 機能画像の平滑化を行います。

デフォルトでは、この順番で行います。この内容を変えたければ、適宜右側にあるAdd, Remove, Move Up, Move Downを使っていけばいいわけです。

まずは基本でこのままでもいいのですが、最初のスキャンを省きましょう。
fMRIでは最初の数スキャンは磁場が安定しないため、取り除いた方がいいと言われています。今回のCOBREのデータは、最初の4スキャンはすでに除かれているということですが、さらに6スキャン(トータル10スキャン)除いてみましょう。

Data Preprocessing stepのところで先ほどまでDefaultだったものから、

functional Removal of initial scans

を選択し、Addをクリックします。
その後、Move upで一番上に持って行きましょう。
取り除くので、一番最初にしてしまった方がいいと思いますので…。

下図のようになるはずです。

conn029

これで前処理の準備ができました。
“Start” をクリックしましょう。

そうすると、最初に平滑化のパラメータを聞かれます。デフォルトのまま8でOKです。

conn024

次に、fMRIのスライスオーダーを聞かれます。
COBREのデータセットのスライスオーダーはSiemensのinterleavedですので、

interleaved (Siemens)

を選択します。

conn025

次に、最初の何スキャンを取り除くかの画面が出ます。
今、ここでは6としておきます。
そうすると、すでに取り除かれている4スキャンとこの6スキャンでトータル10スキャンが取り除かれることになります。TRが2秒ですから、20秒分取り除くことになります。どのくらいかというのはいろいろあるようですので、各ラボごとに決めたらよいと思います。

conn030

次に、外れ値の閾値を設定する画面が出ます。
ここはその効果を実感するために設定を変更します。
メニューから、

Use conservative settings (95th percentiles in normative sample)

を選択してください。

conn026

そうすると、下図のようなメッセージが表示され、前処理がはじまります。
1例あたり15〜20分近くかかりますので、20例だと、5時間〜8時間程度かかります。しばらくゆっくりするしましょう。

conn027

前処理が終わると以下のメッセージが出ます。

conn028

次の投稿で、前処理の結果を確認します。

CONNチュートリアル 06: Setup – Functional

Structuralに続いてfMRI画像を指定します。

Setup -> Functional といきます。

先ほどと同じ要領で、まず、画面真ん中のSubjectを選択します。

conn017

次に、画面右側のフィルタに

F.*.nii

と入力し、”Find”をクリックします。そうすると、Fではじまる画像が出てきます。

これで先ほどと同様に画像を選択し、”Select”とクリックすれば、画像が割り当てられ、先ほどと同様に下のダイアログが表示されます。

conn015

ここで画面中央のSubjectに戻り、クリックするとfMRI画像が表示されます。
マウスを画像の上に持ってくると、下のように、画像のファイル名などを見ることができます。これで、構造画像と機能画像が同じ順番で並んでいるかを確認してください。

ちなみに、画像を選択する場面で、右上にある”ALT Select”がなんだろうと思った方がいらっしゃるかもしれません。これをクリックすると、SPMのファイル選択画面が出てきます。SPMに慣れている方はこちらを使うのも手です。

conn020

CONNチュートリアル 05: Setup – Structural

SetupでBasic infoを入力した後は、Structuralをクリックします。

そうすると、下図のようになっているかと思います。

conn009

重要なのは、真ん中のエリアと右側のエリアです。

まず、真ん中のエリアで、
Subject 1 〜 Subject 20までをすべて選びます。

conn010

ここで全部選んでおくと、これから先でファイルを選択した際にデータが一度に各Subjectに割り当てられます。(楽するためのコツです)

次に、右側のエリアにマウスをもっていきます。そうすると何もなかったところに表示が出てきます。CONNはこのような隠しメニューがいろいろあります。作者の方のセンスなのだと思います。メニューがびっしりのAFNIと対照的ですね。

conn011

そうしたら、ファイルを選択しますが、2つ方法を示します。

  1. ディレクトリを丁寧に追っていく方法
  2. ここにはひとつひとつ示しませんが、画面の上にあるディレクトリ(オレンジ色で示されています)をダブルクリックしながらデータのあるディレクトリまで進んでいく方法です。

  3. フィルタを上手に使う方法
  4. こちらはよりスマートな方法です。
    今、構造画像はファイル名がVから始まる画像です。
    そして最後が.niiで終わりますので、
    正規表現を用いて表すならば、

    V.*.nii

    と表すことができます。
    ひとつ気をつけなければ行けないのは、ここはワイルドカードではなく、正規表現ということです。

    正規表現において、*は、「前の0回以上の繰り返し」という意味があります。

    なので、

    V*.nii

    としてしまうと、Vは全く意味がなくなり、

    「終わりがniiで終わるもの」

    という意味になってしまいます。

    一方、正規表現では、.は「任意の一文字」という意味になりますので、

    V.*.nii

    だと、

    「最初がVでその後が何でもよくて最後がniiで終わるもの」

    という意味になります。

    これを画面下に入力し、そして、そのちょっと上にある “Find” をクリックします。

    conn012

    そうすると、確かに、Vではじまるファイルがならび、その下に “20 files found” と出てきます。これが確かにほしいものです。

    conn013

    ここで、Vから始まるファイルをすべて選択したうえで、”Select”をクリックします。

    conn014

    そうすると、

    20 files assigned to 20 subjects

    と出ますので、そのままOKをクリックします。

    conn015

そうしたら、画面の真ん中に戻って、Subjectを適当にクリックしてみてください。画面にそれぞれ割り当てられた画像が表示されます。

conn016

これで、構造画像の指定は終わりました。

CONNチュートリアル 04: Setup – Basic

さて、サンプルデータも手に入ったところで、設定を始めていきます。

CONNでは、画面上の”Setup” “Denoising” “first-level Analysis” “second-level Analysis” の順番に進んでいきますが、
各項目において、左側の見出しを設定していきます。

上が大項目、左が小項目と覚えておけばいいでしょう。

それでは、まず、Setup -> Basic と選択します。

Number of subjects: 今回使うサンプルデータは合計20例ですので、20と入力します。
Number of sessions: 上を20と入れると自然に 1 1 1 … 1 1 1と入るはずです。resting-state fMRIは基本的に1セッションですので、これでOKです。もし、タスクfMRIならば、セッション数は変わります。
Repetition Time: TRを入力します。サンプルデータのTRは2000ms、つまり2sですので、2と入力します
Acquisition type: デフォルトのままContinuousで結構です。

conn008

CONNチュートリアル 03: サンプルデータ

CONNを試したいけれどもデータがないという方のためにデータを準備しました。

COBREデータセットから、30代の健常者と統合失調症患者をそれぞれ10例ずつ集めてあります。

データはこちらからダウンロードしてください。500MB強あります。

ZIPファイルをダウンロードし、展開すると、そこにsampleフォルダがあります。
また、subjects.txtもあります。後ほど使います。
このsampleフォルダを先ほど作成したconn_practiceの下に置いてください。

CONNチュートリアル 02: プロジェクトの作成【重要】

CONN 01の続編です。

CONNで絶対に忘れてはいけないことは、【最初にプロジェクトファイルを作成すること】です。

プロジェクトファイルに、すべての解析情報が残されます。
逆に、プロジェクトファイルを最初に作らないで解析をすると、
解析はできてしまうのですが、CONNを終了するとすべて消えます。

CONNの解析時間はそれなりにかかりますので、なくなった時の落胆は結構大きいです。
私はこのミスを3回やって、学びました。

「愚者は経験に学び、賢者は歴史に学ぶ。」という名言にあるように、
皆様は私のように愚者にならないでください。

プロジェクトファイルは簡単にできます。

CONNの左上のProject -> New(blank) を選ぶだけです。

conn003

そうすると、新しいプロジェクトを作ると、現在のデータを保存しなきゃ消えるよという警告が出ます。Proceedをクリックして進めます。

conn004

そうすると、プロジェクトファイルを保存するダイアログが出てきます。

注意しておくことは、以下の2点です。

  • CONNのデータはかなり大きなものになります。十分に容量の大きい領域を選びます。
  • プロジェクト1つあたり、専用のディレクトリ(フォルダ)を作成してそこに保存するようにしましょう。そうしないと、後で後悔します。
  • 今、私は、自分が普段画像解析を行うディレクトリimg_dataの下にconn_practiceというディレクトリを作成し、その下にデフォルトのままconn_project01.matを保存することにしました。

    そうすると、CONNの一番下の画面にプロエジェクトが保存されているディレクトリが表示されます。

    conn006

この下に、ハードディスクの空きがあとどのくらいあるかも示されます。CONNではひとつのプロジェクトで100GB程度使うことも稀ではありません。もし、ノートパソコンなどでトライされる場合には、十分な容量のある外付けHDDで作業をすることをオススメします。

この2つが準備されれば、次に進みましょう。

CONNチュートリアル 01: インストール

2016年4月にボストンで開催されたCONNのワークショップに参加してきました。

このワークショップに日本人で参加したのは私がはじめてということで、学んだことをこのブログでフィードバックしていきたいと思います。

  • 必要なソフトウェア
  • MatlabおよびSPM8以降が必要です。

  • ダウンロード
  • NITRCからダウンロードします。

    CONNのダウンロードページ

    2016年9月現在の最新バージョンは16.bです。conn16b.zipをダウンロードします。

  • インストール
  • インストールはSPMと同じ要領です。適当なところにダウンロードしたzipファイルを展開し、そのディレクトリをMatlabのパスに追加します。SPMよりも下に置いておいた方がいいと思います。

    Linux環境ですが、私の場合、下図conn000のようになっています。

  • 起動
  • 起動は簡単です。Matlabから

    conn
    

    とタイプするだけです。

    下図の画面が出れば成功です。

    conn001

  • アップデート
  • CONNのアップデートは簡単です。画面左上の Help -> Update を選択するだけです。アップデートがあれば教えてくれます。

    conn002

これでCONNのインストールは完了です。

How to run FSL on Windows 10 using Bash on Ubuntu on Windows

FSL_on_Windows

Since Aug 2016, Bash is available inside Windows.
That means, several neuroimaging software such as FSL or AFNI can be run from Windows.

I gave a try and confirmed FSL can run on Windows 10.

Below is what I did.

  1. Install Bash on Ubuntu on Windows
  2. First of all, we need to install bash on Windows.

    There is a good tutorial on this topic, so please follow the link below.

    How to Install and Use the Linux Bash Shell on Windows 10

  3. Install Xming
  4. Next, we neet to get Xming and install it. It seems the latest version is not free, but FSL can run with free version.

    You can get free version of Xming from here.

    Installation is simple. Default setting should work.

    After reboot, run xming. Though nothing seems to happen, please check the task bar of Windows on the right bottom corner.

    xming

    If you move cursor on the icon of Xming, it shows something like “Xming Server:0.0”. We use the information “0.0” later.

  5. Install FSL
  6. Next we run bash. type

    bash
    

    in the command prompt. (You already did this when you install bash on the first step)

    Ubuntu on Windows is based on Ubuntu 14.04 LTS, so we utilize Neurodebian repository for installation.

    Type the following in the command prompt.

    sudo apt-get update
    sudo apt-get dist-upgrade
    wget -O- http://neuro.debian.net/lists/trusty.us-nh.full | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list
    sudo apt-key adv --recv-keys --keyserver hkp://pgp.mit.edu:80 0xA5D32F012649A5A9
    sudo apt-get update
    sudo apt-get install fsl
    

    (There are some mirrors of Neurodebian, so please check http://neuro.debian.net/ to find the closest mirror for you.)

    Here we do

    • Update repository
    • Update the system to the latest
    • Setup neurodebian repository
    • Get key for neurodebian repository
    • update repository again to enable neurodebian
    • Install FSL
  7. Add some lines to .bashrc
  8. Finally, type the following.

    echo ". /etc/fsl/fsl.sh" >> ~/.bashrc
    echo "export DISPLAY=localhost:0.0" >> ~/.bashrc
    

    This operation writes the following lines to .bashrc

    . /etc/fsl/fsl.sh
    export DISPLAY=localhost:0.0
    

    First line is necessary to run FSL, and the second line is to show the system where display is for GUI.

  9. Check the installation
  10. To enable change on .bashrc you need to exit bash once.

    exit
    

    Then type “bash” again.

    bash
    

    Then type

    fsl
    

    will bring up FSL menu.

    fslview
    

    will bring up FSLView.

Lin4Neuroのアップデート (14 Aug 2016)

Lin4Neuroのアップデートを行いました。

主な更新点は以下になります。

  • UEFIに対応するようにいたしました。
  • 画像解析ソフトをすべて最新バージョンにアップデートしました。
  • GitHub上にLin4Neuroを作成するスクリプトを公開しました。
  • https://github.com/kytk/lin4neuro-trusty

    これを用いればLin4Neuroを自分の使いたいようにカスタマイズしていただくことも可能かと思います。

  • 起動時画面のロゴに少し修正を加えました。Lin4NeuroがUbuntuのどのバージョンに基づいているかがひと目でわかります。

現在、Ubuntu 16.04に基づいたLin4Neuroを開発中です。できたら年末までに公開できたらと思っています。

最新版のLin4Neuroは
You can download the latest Lin4Neuro from こちらからどうぞ。

Update of Lin4Neuro (13 Aug 2016)

Lin4Neuro is updated.

Below is the points of update.

  • Now Lin4Neuro ISO is UEFI bootable.
  • All of the neuroimaging software packages are up-to-date.
  • Now I made the building scripts of Lin4Neuro publicly available on GitHub.
  • https://github.com/kytk/lin4neuro-trusty

    You can make your version of Lin4Neuro based on the repository above. I wrote instruction how to use in the repository.

  • I made some changes to the Lin4Neuro logo on splash. You will find L4N you are using is based on Ubuntu 14.04 or other.

Now I’m in the process of developing Lin4Neuro based on Ubuntu 16.04. Hopefully this version will be released by the end of this year.

You can download the latest Lin4Neuro from here.

Windows 10でFSLをネイティブ環境で起動する方法

FSL_on_Windows

2016年8月1日、Windows 10がAnniversary updateされました。
そこで、かねてから話題になっていたことですが、ついにUbuntuがWindowsに搭載されました。
ここ数年Ubuntuユーザーである私からしたら、別にどうってことないんですが、
これはWindowsで画像解析をやってきた方々には、すごく意味のある変化です。

Windows上でFSLが動かせる可能性が出てきた

ということですので。

早速、人柱的にやってみました。

普通に起動するところまでは成功しました!

  1. Windows 10 Anniversary Updateの入手(2016年9月9日現在、これはもうしなくて大丈夫です)
  2. まずはこれをしないことには話がはじまりません。(と書いていますが、2016年9月にはAnniversary Updateは普通に配布されているので、最新版に更新していただければ、終了です)

    Windows 10の「設定」→「更新とセキュリティ」に進んだ後、一番下にある「詳細情報」をクリックします。

    そうすると、Windows10の更新履歴のページが立ち上がるはずです。(直接左のリンクをクリックするのもありです)

    そこに「Anniversary Updateを入手する」とありますので、素直にクリックします。

    そうするとアップデートがはじまります。素直に従えば30分程度ですべて起動するはずです。

  3. Windows Subsystem for Linux(beta)の有効化
  4. 再起動後、スタートボタンを右クリックし、コントロールパネルを開きます。

    「プログラム」→「Windowsの機能の有効化または無効化」をクリックします。

    そうすると、ダイアログが開きますので、Windows Subsystem for Linux(beta)のチェックボックスにチェックを入れて「OK」とします。
    再起動を求められますので、再起動します。

  5. 開発者モードの有効化
  6. 次に、また「設定」→「更新とセキュリティ」に行きます。
    左側のメニューに「開発者向け」というものがあります。
    そこをクリックし、出てきた画面で、「開発者モード」を選択します。

    また再起動を要求されますので、再起動します。

  7. Xmingの入手
  8. 次に、Xmingを入手します。最新版はお金を寄付しないと入手できないようなので、無料版を手に入れます。
    こちらから入手できます。

    インストールはシンプルです。すべてデフォルトのままでOKです。

    早速起動します。といっても何もおきません。
    ただ、Windowsの右端のタスクバーを見ると、そこにちゃっかりといます。

    xming

    Xmingの上にマウスをもってくると、今の場合、Xming Server:0.0となっています。この0.0をあとで使います。

  9. bashの起動
  10. ここまで来たら、bashを起動します。

    まず、Windowsからコマンドプロンプトを起動します。簡単な方法は、メニュー左下の「何でもきいてください」というところに cmd とタイプすることです。
    そうすると、コマンドプロンプトが起動します。

    そこで

    bash
    

    とタイプしてください。
    そうすると、質問されますので “y” と答えると、bashのインストールがはじまります。
    そのうちに、ユーザー名とパスワードを設定するようにたずねられますので、それぞれ設定してください。

    ここでインストールされるものはUbuntu 14.04となります。

  11. FSLのインストール
  12. 次に、FSLをインストールします。

    下記をそのままコピペしてください。

    sudo apt-get update
    sudo apt-get dist-upgrade
    wget -O- http://neuro.debian.net/lists/trusty.jp.full | sudo tee /etc/apt/sources.list.d/neurodebian.sources.list
    sudo apt-key adv --recv-keys --keyserver hkp://pgp.mit.edu:80 0xA5D32F012649A5A9
    sudo apt-get update
    sudo apt-get install fsl
    

    何をしているかというと、

    ・リポジトリを更新します
    ・Ubuntuを最新の状態にアップデートします
    ・Neurodebianリポジトリを有効にします
    ・Neurodebianリポジトリのための鍵を入手します
    ・上記の作業を有効にするためにリポジトリを更新します
    ・FSLをインストールします

  13. .bashrcへの追記
  14. 最後に以下をタイプしてください。

    echo ". /etc/fsl/fsl.sh" >> ~/.bashrc
    echo "export DISPLAY=localhost:0.0" >> ~/.bashrc
    

    これは

    . /etc/fsl/fsl.sh
    export DISPLAY=localhost:0.0

    という2行を.bashrcというファイルに書き込みます。

    最初の行は、FSLの起動のために必要なコマンドで、
    2行目は、GUIを起動するためにbashにXmingがどこにあるかを伝えています。
    0.0は先ほどXmingで確認した数値です。もし、自分の環境で異なっていたら適宜修正してください。

  15. 起動確認
  16. 一度bashを終了します。

    exit
    

    とタイプしてください。
    そうすると普通にコマンドラインに戻るので、改めて

    bash
    

    とタイプしてください。

    そのうえで

    fsl
    

    とタイプすると、FSLが起動しないでしょうか。

    fslview
    

    でFSLViewも起動します。

    お試しあれ。
    今後、いろいろ動きが起こりそうです。
    ここ最近何回かやってきたシェルスクリプトの講習会などもより意味を持つようになってきますね。

UbuntuにおけるAFNIのアップデート

AFNIのインストール方法は、公式ページにしたがって行えばできます。AFNIにはコマンドラインからのアップデート機能があり、@update.afni.binaries -dで基本的にアップデートもできます。

しかし、この場合、NIHから新しいバージョンのAFNIをまるごとダウンロードしてきます。wgetでダウンロードするのですが、結構時間がかかります。ブラウザのアドオンについてくるダウンローダで入手するほうが短時間でダウンロードします。

https://afni.nimh.nih.gov/pub/dist/tgz/

ここからダウンロードできます。

ダウンロードしたものを使ってアップデートする際には以下でうまくできます。

インストール先を /usr/local/afni/bin
ダウンロードしたものが、~/Downloads/linux_openmp_64.tgz だとすると、
以下のようになります。

sudo /usr/local/afni/bin/@update.afni.binaries       \
     -bindir /usr/local/afni/bin/                    \
     -local_package ~/Downloads/linux_openmp_64.tgz 

私の場合、/usr/local/afni/binにインストールしたかったので、sudoを使っていますが、デフォルトの~/abinの場合には、sudoは必要ありません。

現在のバージョンは

afni -ver

で簡単に確認できます。

Matlab R2016aでも動作するための修正版spm_figure.m

過日、Matlab R2016a日本語版では、SPM12を起動するときにエラーが出るという記事を投稿しました。その後、修正版spm_figure.mがあるという情報をいただき、さらに、開発者のGuillaume Flandinからも了承をいただきましたので、ここに修正版spm_figure.mを公開します。

修正方法は簡単で、下にあるspm_figure.mをダウンロードしていただき、SPM12の中にあるspm_figure.mと置き換えていただくだけです。
心配な方は、まず現在のspm_figure.mをspm_figure.m.origなどに修正してから置き換えられるとよいかと思います。

なお、Guillaume Flandinからの情報だと、この修正は、次のSPM12のアップデートで適応されるとのこと。
次のSPMアップデートが出た時点で、私のウェブサイトからの配布は終了します。

修正版spm_figure.mをダウンロード