Ubuntu 18.04 に HCP Pipeline の環境を設定する方法

HCP Pipelineを準備するのは簡単ではありませんが、東京大学小池研の植松明子さんとディスカッションしている中で、Ubuntu 18.04にHCP Pipelineを設定する方法を確立できたのでご紹介します。植松さんのinputに感謝申し上げます。

主要な解析ソフトのインストール

以下のソフトウェアをインストールする必要があります。
– HCP pipelines
– Workbench
– FreeSurfer  https://surfer.nmr.mgh.harvard.edu/fswiki
– FSL https://fsl.fmrib.ox.ac.uk/fsl/fslwiki
– MSM (HCP用)バイナリファイル
– R
– FIX
– Gradunwarp (Optional)

以下、各ソフトのインストールについて解説します。この通りにしていけば、設定できます。

HCP Pipeline

  • Human connectome projectにおけるMRI解析処理で使用されているスクリプト集です。
cd /usr/local
sudo git clone https://github.com/Washington-University/HCPpipelines.git

Connectome Workbench

  • HCPの基幹となるソフトウェアです。
cd ~/Downloads
curl -O https://www.humanconnectome.org/storage/app/media/workbench/workbench-linux64-v1.4.2.zip
unzip workbench-linux64-v1.4.2.zip
find workbench/ -type d -exec chmod 755 {} \;
find workbench/ -type f -exec chmod 644 {} \;
find workbench/bin_linux64 -type f -exec chmod 755 {} \;
find workbench/exe_linux64 -type f -exec chmod 755 {} \;
sudo mv workbench /usr/local
    
#PATH settins for workbench
cat << 'EOS' >> ~/.bash_aliases
    
#workbench
export PATH=$PATH:/usr/local/workbench/bin_linux64
EOS

FreeSurfer

  • FreeSurferのインストールに特化したスクリプトを私が準備してあるので、それを走らせるのが簡単です。
  • 以下のリンクから、ライセンスを入手し、license.txt を ~/Downloads に保存します。
    https://surfer.nmr.mgh.harvard.edu/registration.html
  • その後、以下で必要なパッケージとFreeSurferのインストールとセッティングが行われます。
  • FreeSurferは7.1.1がリリースされていますが、現時点では、FreeSurfer 6.0.xを使用することが勧められています。
cd ~/Downloads
wget https://github.com/kytk/lin4neuro-bionic/raw/master/installer-scripts/freesurfer6.0.1_installer_bionic.sh
chmod 755 freesurfer6.0.1_installer_bionic.sh
./freesurfer6.0.1_installer_bionic.sh
  • もし、VirtualBox内のubuntuに対して設定するのならば、VirtualBoxにあわせた修正をしますかという質問にYesと答えてください。recon-allがVirtualBoxでは動かない問題を解決してあります。
  • スクリプトが走り終わった後、新たにターミナルを起動することで、FreeSurferは使用可能になります。

FSL

  • fslinstaller.py を入手することで、あとはほぼ自動でインストールおよび設定が完了します。
  • 初回は、以下のリンクからregistrationを行います。(fslinstaller.pyは、下に示す方法で入手できます)
    https://fsl.fmrib.ox.ac.uk/fsldownloads_registration
cd ~/Downloads
curl -O https://fsl.fmrib.ox.ac.uk/fsldownloads/fslinstaller.py
python2.7 fslinstaller.py
  • インストール完了後、ログアウトし、再度ログインします。

MSM (Multimodal Surface Matching)

  • FreeSurfer等のCortical Surface registration を補助するツールです。
  • Fuctional MRIやDiffusionなどの解析結果をSurfaceにMappingする際に個人の脳溝・脳回特徴をより反映させてくれる為、疾患解析等での精度があがるようです。
  • FSLに搭載されているものをより新しいものに置き換えます。
cd /usr/local/fsl/src/MSM
sudo mv msm msm.org
sudo wget https://github.com/ecr05/MSM_HOCR/releases/download/v3.0FSL/msm_ubuntu_v3
sudo cp msm_ubuntu_v3 msm
sudo chmod 755 msm

R

  • FIXは3.4以上が必要となります。Ubuntu 18.04のデフォルトは3.4ですが、今後、3.6以降が必要になるパッケージも多いため、3.6をインストールします。
# 前のバージョンを削除
sudo apt-get purge r-base
    
# keyを追加
sudo apt-key adv --keyserver keyserver.ubuntu.com \
     --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
    
#cloud.r-project.org のリポジトリを追加
sudo add-apt-repository \
    'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/'
    
sudo apt-get -y update
sudo apt-get install r-base
  • 様々なツールをユーザー権限で入れられるように、ホームディレクトリの下にRというディレクトリを作成し、そこに入れるようにします。これはAFNIでもとられている方法ですが便利です。
mkdir ~/R
echo 'export R_LIBS=$HOME/R' >> ~/.bash_aliases
source ~/.bashrc
  • Fixは特定のバージョンのパッケージをインストールする必要があるため、devtoolsをいれる必要があります。そのために、以下のパッケージをまずインストールします。
# devtools に必要なパッケージのインストール
sudo apt-get install build-essential libcurl4-gnutls-dev libxml2-dev libssl-dev
  • FIXに必要なRパッケージをインストールします。
  • 以下、Rを起動していれるのではなく、必要なものをスクリプト化します。
cd ~
cat << 'EOS' > FIX_Rpackages.R
install.packages("devtools")
require(devtools)
install_version("kernlab", version="0.9-24")
install_version("caTools", version="1.16")
install_version("ROCR", version="1.0-7")
install_version("class", version="7.3-14")
install_version("mvtnorm", version="1.0-8")
install_version("multcomp", version="1.4-8")
install_version("e1071", version="1.6-7")
install_version("randomForest", version="4.6-12")
EOS
  • 以下で一気にkernlab, caTools, ROCR, class, mvtnorm, multcomp, e1071, randomForest をインストールできます。
Rscript FIX_Rpackages.R
rm FIX_Rpackages.R
  • coin と party はRを起動していれた方がうまくいくので、Rからインストールします。そして、FIXのキモはこの2つのパッケージなので、ここは必ずバージョンを固定してください。
R #Rが起動する。以降はRでタイプする
require(devtools)
install_version("coin", version="1.2-2")
install_version("party", version="1.0-25")

FIX

  • FIXそのもののダウンロードおよびインストールは以下で行います。
cd ~/Downloads
wget http://www.fmrib.ox.ac.uk/~steve/ftp/fix.tar.gz
tar xvf fix.tar.gz
sudo mv fix /usr/local
  • MATLAB Runtime をインストールします。which_mcr.shを実行することで、どのmcrをダウンロードすべきかわかります。
/usr/local/fix/which_mcr.sh
#Download MATLAB Compiler Runtime v93 from https://www.mathworks.com/products/compiler/matlab-runtime.html.
#今の場合、v93、すなわち 9.3 (R2017a) をダウンロードすればよいことがわかる
#2020年8月9日現在では、以下
cd ~/Downloads
curl -O https://ssd.mathworks.com/supportfiles/downloads/R2017b/deployment_files/R2017b/installers/glnxa64/MCR_R2017b_glnxa64_installer.zip
mkdir mcr
mv MCR_R2017b_glnxa64_installer.zip mcr
cd mcr
unzip MCR_R2017b_glnxa64_installer.zip
sudo ./install
  • こうすると、GUIが起動します。基本、デフォルト通りでOKですが、インストール場所は、/usr/local/MATLAB/MCR としました。/usr/local/MATLAB/MCR/v93にインストールされることになります。

  • FIXの設定ファイルの編集

    • geditなどのテキストエディタで /usr/local/fix/setting.sh を 開きます
sudo gedit /usr/local/fix/setting.sh

以下の部分を編集します。

46行目あたり
FSL_FIX_MCRROOT=”/usr/local/MATLAB/MCR”

165行目あたり
FSL_FIX_R_CMD=”/usr/bin/R”

187行目あたり
FSL_FIX_CIFTIRW=”/usr/local/HCPpipelines/global/matlab/gifti-1.6″

193行目あたり
WBENCH=”/usr/local/workbench”

Gradunwarp (optional)

  • 装置による歪み補正を行うpython scriptです。
    • Siemens()とGE()しか対応していない+撮像PCの中にあるcoeff.gradファイルを取得する必要があるため、対応不可ならインストールしなくともOKです。
cd
mkdir AnalysisTools
cd ~/AnalysisTools
git clone https://github.com/Washington-University/gradunwarp.git
cd gradunwarp
# pip を利用してGradunwapに必要なpython packagesをインストール
/usr/local/fsl/fslpython/bin/python -m pip install numpy scipy PyDICOM nose sphinx nibabel
sudo /usr/local/fsl/fslpython/bin/conda install -c anaconda numpy-devel
sudo /usr/local/fsl/fslpython/bin/python setup.py install

Lin4Neuro based on Ubuntu 18.04 is updated (16 May 2020)

Lin4Neuro based on Ubuntu 18.04 is updated.
Below are main changes.

  • Now iso is generated from Ubuntu 18.04 Desktop so that installer can function properly.
  • Connectome workbench is installed and configured.
  • I changed the strategy to provide installers for huge packages such as AFNI, FreeSurfer, or FSL. It does not come with the release, but you can easily install them by just clicking the installer icons.
  • Bundled software packages are all updated.
  • The neuroimaging software packages available on Lin4Neuro is listed here.
  • VirtualBox appliances are officially provided from now on. Username is “brain” and password is “lin4neuro”. RAM is set to 4GB, and HDD 120GB.

You can get the latest version from here.

Ubuntu 18.04 mini.iso から構築するLin4Neuro 18.04版

現在、Lin4Neuro 18.04版を開発しており、仮想マシン版は公開できているのですが、iso版はまだ公開できていません。
リマスタリングに苦労しております。

もし、WorkstationにLin4Neuroを構築したい場合、Ubuntuから公開されている mini.iso を利用することで、
(比較的容易に)構築することができます。

以下、方法を示します。なお、スクリーンショットはVirtualBoxを用いて作成したものです。
仮想マシンで試されてから実機に応用していただけたらと思います。
なお、実機の場合、ネットワークは最初は無線LANは自動で認識しませんので、有線LANでネットワークに接続してください。

続きを読む

VirtualBoxへのLin4neuroのインストール -Mac編-

現在、Lin4NeuroはVirtualBox上で動作する仮想マシンを配布するようになりました。Macで仮想マシンをどう使うか以下に記します。

  1. Macのバージョン確認
  2. MacでVirtualBoxを動作させるには、MacOS10.8(Mountain Lion)以降である必要があります。バージョンが古い方は、まずOSのアップグレードを行ってください。

    注意点としては、MacOS 10.13(High Sierra)からセキュリティがこれまで以上に厳しくなりました。本ガイドでは、OS10.13で検証しています。セキュリティに気をつけるところは説明していますが、OS10.12(Sierra)以前では表示されない画面もありますので、ご了承ください。

    続きを読む

Lin4Neuroのイメージファイル(isoファイル)を用いてVirtualBoxにインストールする方法

Lin4Neuro (L4N)は、isoイメージファイルおよびVirtualBoxの仮想アプライアンスを配布しています。
ここでは、isoイメージファイルを用いてVirtualBoxにL4Nをインストールする方法を解説します。

この方法は若干だけ手間がかかりますが、以下のメリットがあります。

  • ハードディスクの容量を自分で設定できる
  • これが一番大きいメリットかと思われます。

  • ログイン名などを自分の好みにあわせられる
  • ご自身で設定できます。

具体的な方法を以下に示します。Acknowledgmentとして、我々の研究室の山田典子さんが以下を準備してくださいました。
VirtualBoxのインストールまでは済んでいるものとして話をすすめます。なお、この方法では、VirtualBox Extension Packは不要です。

続きを読む

Ubuntu 16.04への MRtrix3 インストールスクリプト

先日、ABiSチュートリアルで順天堂大学の鎌形先生から、FSL, FreeSurfer, MRtrix3を組み合わせたコネクトーム解析の素晴らしい講義を聞く機会がありました。

MRtrix3はインストールしなきゃと思いつつできていませんでしたが、せっかくですから、モチベーションが高いうちにインストールしようと思い、Ubuntu 16.04へのインストールを行いました。

http://mrtrix.readthedocs.io/en/latest/installation/linux_install.html

こちらに説明がありますが、これをまとめてみました。

関心のある方はこちらからダウンロードしてみてください。(右クリック→名前をつけて保存)

保存した後、

$ chmod 755 mrtrix3_installer_ubuntu1604.sh
$ ./mrtrix3_installer_ubuntu1604.sh

でインストールができます。

ちなみに、上記スクリプトは以下のようになっています。
GitHubからダウンロードし、コンパイルし、.bashrcにパスを通すというシンプルなことをやっています。

#!/bin/bash
#Script to setup mrtrix3 for Ubuntu 16.04

#Install prerequisite packages
sudo apt-get install git g++ python libgsl0-dev zlib1g-dev libqt4-opengl-dev libgl1-mesa-dev libqt5svg5* libeigen3-dev

#Download MRtrix3 source
if [ ! -e $HOME/git ]; then
 mkdir $HOME/git
fi

cd $HOME/git
git clone https://github.com/MRtrix3/mrtrix3.git

#Configuration and build
cd mrtrix3
./configure
./build

#.bashrc
echo >> $HOME/.bashrc
echo "#MRtrix3" >> $HOME/.bashrc
echo 'export PATH=$PATH:$HOME/git/mrtrix3/bin:$HOME/git/mrtrix3/scripts' >> $HOME/.bashrc

Update of Lin4Neuro (27 Jun 2017)

Lin4Neuro was updated.

  • Fixed the bug of installer crash
  • All Neuroimaging software is up-to-date. FSL remains 5.0.9 since 5.0.10 is not available yet on Neurodebian.
  • Tutorial by Prof. Chris Rorden is put under home directory. Anybody can go through tutorial without further download.
  • Now Lin4Neuro is UEFI compatible.

You can get the latest version from here.

Lin4Neuroのアップデート (27 Jun 2017)

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

  • Ubuntu 16.04をベースに、インストーラーがクラッシュするバグを修正しました
  • 画像解析ソフトを最新版にしました。FSLはUbuntu版はまだ5.0.10がリリースされていないため、5.0.9のままです。
  • Chris Rorden教授のチュートリアルをわかりやすい場所に配置しました。
  • UEFI対応となっており、UEFI対応PCにもインストール可能となりました。

ここから入手できます。

Lin4Neuroのアップデート (31 Mar 2017)

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

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

  • Ubuntu 16.04をベースにするバージョンを発表しました。(ただし、インストーラーにバグがあるため、現在調整中です。)Ubuntu 14.04版も続けてメンテナンスしていきます。
  • 画像解析ソフトをすべて最新バージョンにアップデートしました。
  • GitHub上にLin4Neuroを作成するスクリプトを公開しました。
  • https://github.com/kytk/lin4neuro-xenial

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

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

最新版のLin4Neuroは こちらからどうぞ。

Update of Lin4Neuro (31 Mar 2017)

Lin4Neuro is updated.

  • Now Lin4Neuro is based on Ubuntu 16.04. (I’ll keep maintenance of 14.04 Version too)
  • All of the neuroimaging software packages are up-to-date.
  • Building scripts of Lin4Neuro is publicly available on GitHub.
  • https://github.com/kytk/lin4neuro-xenial

    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 later.

You can download the latest Lin4Neuro from here.

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.

Lin4Neuroのメジャーアップデート (18 Jan 2016)

時間がかなりかかってしまいましたが、Lin4Neuroのメジャーアップデートを公開しました。
見た目は変わっていませんが、システムは相当変わっています。

  • 今後、Lin4NeuroはUbuntuのmini.isoをベースに、XFCE 4.12を搭載していきます。メモリ使用量は起動時は300MB未満です。
  • これから公開していきますが、Lin4Neuroの作成スクリプトを準備しました。どうやってLin4Neuroが作られているのかを確認できます。

現時点で、以下のパッケージが収載されています。

  • 3D Slicer
  • AFNI
  • DSI Studio
  • FSL
  • ITK-SNAP
  • Mango
  • MRI Convert
  • MRIcroGL
  • MRIcroN
  • Virtual MRI

今後のアップデートで、その他のソフトウェアも収載予定です。

最新版のダウンロードは、 こちらからどうぞ。

Major update of Lin4Neuro (18 Jan 2016)

Though it took such a long time, I’m pleased to announce the release of the update of Lin4Neuro.
It looks the same, but it is quite different.

  • From now on, Lin4Neuro is based on minimal Ubuntu with XFCE 4.12. RAM consumption is less than 300MB when the system is up.
  • I prepared scripts to show how I made Lin4Neuro. You can check what has been done while minimal Ubuntu transform into Lin4Neuro (The scripts are to be released soon).

Right now, following packages are pre-installed.

  • 3D Slicer
  • AFNI
  • DSI Studio
  • FSL
  • ITK-SNAP
  • Mango
  • MRI Convert
  • MRIcroGL
  • MRIcroN
  • Virtual MRI

Other software packages will be added in the next update.

You can download the latest version from here.

Lin4Neuro based on Xubuntu 14.04LTS was released

I managed to customize Xubuntu 14.04LTS to be Lin4Neuro-14.04.

L4N-trusty-screenshot

For this customization I did the following;

  • .desktop files for neuroimaging analysis packages are stored in .local/share/applications
  • Neuroimaging.directory is stored in .local/share/desktop-directories.
  • Custom icons are stored in ~/.icons

If you look at these files, you will see how you can add your entries to menu.

I keep maintaining Xubuntu 12.04 because I am not certain Connectome mapper works in Xubuntu 14.04. If you want to use Connectome mapper, I recommend to use Lin4Neuro 12.04.

Update of Lin4Neuro (10 Aug 2014)

Lin4Neuro was updated. This time the change was limited to kernel update and security updates.

  • Kernel was updated to 3.13.0-32-generic.
  • All security updates were applied.

I’m working on Xubuntu 14.04, but it seems to have several problems with neuroimaging software packages. So for now I keep updating Lin4Neuro based on Xubuntu 12.04.

You can download the latest Lin4Neuro from here.

Update of Lin4Neuro (12 Jun 2014)

Lin4Neuro was updated. The changes of this version were as follows;

  • Kernel was updated to 3.13.0-29-generic.
  • ITK-SNAP was updated to 3.0.0.
  • MITK was updated to 2014.03.00.
  • MITK Diffusion was updated to 2014.03.
  • All security updates were applied.

Lin4Neuro is still based on Xubuntu 12.04. Now I’m working on Xubuntu 14.04, so hopefully the next version will be based on Xubuntu 14.04.

You can download the latest Lin4Neuro from here.

Update of Lin4Neuro (13 March 2014)

I updated Lin4Neuro.
This time quite a few changes were made.

  • Many unnecessary software packages and fonts were uninstalled.
  • Connectome mapper was introduced. However, due to filesize and their licenses, freesurfer and Diffusion toolkit are not installed. I wrote a step-by-step guide how to install freesurfer and Diffusion toolkit on Lin4Neuro (the PDF file is found on the desktop), so afer you install these two software packages, you are ready to run Connectome mapper.
  • Kernel was updated to 3.5.

You can download the latest Lin4Neuro from here.

Update of Lin4Neuro (28 Dec 2013)

Lin4Neuro was updated. Some changes are…

  • Kernel was updated to 3.5.0-44-generic.
  • FSL was updated to 5.0.6.
  • Ginkgo CADx was updated to 3.6.0.
  • MINC toolkit was updated to 1.0.01
  • MITK was updated to 2013.12.00.
  • Slicer was updated to 4.3.1.
  • LibreOffice was updated to 4.1.4.2

You can download the latest Lin4Neuro from here.

Now I’m focusing on the 64bit version of Lin4Neuro, so I suspend updating 32bit version. One of the task is to make the UEFI-compatible L4N. I hope it will be possible to boot from UEFI on the next update.