imageJは科学的な画像解析のためのソフトで、PythonからimageJを利用するためのPyimageJというパッケージが用意されている。
PyImageJはImageJ2とPythonを統合するためのラッパー関数のセットを提供している。
今回はAnacondaで仮想環境を作成し、pyimagejを利用する環境構築を行い、サンプル画像を表示するところまでやってみる。
1. Anacondaで仮想環境を作成する
Anacondaで新しい仮想環境を作成する際は、$ conda create -n 新しい環境名
を実行する。今回はimagej
という名前の仮想環境を作成する。
2022年3月現在ではPythonのバージョンは3.6, 3.7, 3.8が推奨されているため、3.8を使用する。
$ conda create -n imagej python=3.8
続いて作成した仮想環境に入る。
$ conda activate imagej
2. 必要なパッケージをインストールする
pyimagejとopenjdkをインストールする。
$ conda install -c conda-forge pyimagej
$ conda install -c conda-forge openjdk=8
3. 仮想環境でJupyterを使えるようにする
仮想環境をJupyter Notebook上で使えるようにするために、コマンドプロンプト上でipykernelをインストールする。
$ pip install ipykernel
Jupyterのカーネルとして仮想環境を追加するためのコマンド$ ipython kernel install --user --name=環境名
を実行する。
$ ipython kernel install --user --name=imagej
サンプル画像を表示してみる
conda activate imagej
で仮想環境下に移動し、$ jupyter lab
でJupyter Labを開く。
新しいノートブックを作成し、以下のコードを実行する。
PyImageJを使用する際の最初のステップは、ImageJ2ゲートウェイを作成すること。ゲートウェイを使用すると、ImageJ2 API に完全にアクセスできるようになる
# ライブラリのインポート
import imagej
# ゲートウェイを作成する
ij = imagej.init()
# 画像を読み込む
image_url = 'https://imagej.net/images/FluorescentCells.jpg'
jimage = ij.io().open(image_url)
# 配列に変換
image = ij.py.from_java(jimage)
# 画像を表示する
ij.py.show(image)
JupyterでImageJを使うことができました!