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

で簡単に確認できます。