2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

カルシウムイメージング解析ツールCaImAnのセットアップ(Python)

Last updated at Posted at 2019-12-21

この記事では、CaImAn(Calcium Imaging Analysis)というツールを紹介します。
公式サイト(https://github.com/flatironinstitute/CaImAn)
このソフトでは、カルシウムイメージングの動画のモーションコレクションから、細胞の取り出し、信号のデコンボリューションまでする様々な機能があります。現在のカルシウムイメージングの解析ツールのスタンダードであると思われます。

CaImAnはPython版とMATLAB版がありますが、Python版のインストール方法が煩雑で日本語資料が無いので以下にまとめます。
(MATLAB版の方が使い方が簡単なので、MATLABを持っている方にはそちらがお勧めです。)

##CaImAnのインストール
インストール方法はリンク先のInstallationにある通りです。Python 3.6推奨で、AnacondaもしくはMinicondaが必要です。macやlinuxはbashのコマンドを実行するだけでインストールできますが、windowsの場合は少し複雑です。
以下windowsで2018年末ごろに試して上手くいった場合になります。

まず前提として、Visual Studio 2017の”C++によるデスクトップ開発Tools”、”C/C++ CLI Tools”をインストールする必要があります。
マイクロソフトのホームページからVisual Studioの2017をダウンロードしましょう。Community Editionは無料です。
そのあとインストーラーを起動して、”C++によるデスクトップ開発Tools”と”C/C++ CLI Tools”の2つのワークロードにチェックを入れてインストールしましょう。

次にAnacondaにCaImAn用の仮想環境を作成します。
anaconda promptでコマンドを実行していきましょう。

git clone  https://github.com/flatironinstitute/CaImAn
cd CaImAn
conda env create -f environment.yml -n caiman

これでAnacondaにcaimanという仮想環境が作られました。次にC:\Users(ユーザー名)\Anaconda3\envs\caiman\以下のフォルダにある2つファイルの操作をしましょう。

  1. 「keras_activate.bat」を開いて、KERAS_BACKENDという環境変数をtheanoからtensorflowにする。
  2. 「vs2015_compiler_vars.bat」というを削除する。

そうしたらCaImAnをインストールしましょう。

conda install -n caiman vs2017_win-64
activate caiman
pip install .
copy caimanmanager.py ..
conda install numba
cd ..

次に実行スクリプトや解析データを入れるフォルダを作りましょう。

caimanmanager.py install

これでカレントディレクトリにcaiman_dataというフォルダができました。解析はこのフォルダ内で行うのがいいと思います。

##デモのコードを実行してみる
\caiman_data\demos\generalにあるdemo_caiman_basic.pyがデモコードとして使えます。
実行して動くかどうかを確認しましょう。

cd caiman_data\demos\general
demo_caiman_basic.py

実行すると以下のような画面が出てきます。
1.png
これは細胞の形を抽出したものです。番号が振られています。

2.png
そしてこちらは各細胞の輝度変化、つまり電気活動の変化を表しています。方向キーで細胞を切り替えて表示できます。

このデモコードでは動画(example_moviesフォルダにあるdemoMovie.tif)から点滅する細胞を抽出したということになります。コード内のパラメーターを調整することで結果も変化します。

##終わりに
これで、Python版のCaImAnが使えるようになりました。
MATLAB版の使い方やデコンボリューションの方法を別記事にする予定です。
細胞抽出のアルゴリズムですが、CNMF(条件付きの非負値行列因子分解)を用いて候補領域を取り出した後、CNN(畳み込みニューラルネットワーク)を用いて細胞かどうかの判定を行っているようです。

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?