スポンサーリンク

ImageJ(Fiji)でAuto_Threshold-X.Y.Z.jarプラグインを用いて画像を2値化する

ImageJで画像を2値化する方法について調べてみたいと思います。

スポンサードリンク

開発環境

Windows10 Pro 1803
Fiji (ImageJ 1.52n)

Fijiのインストールについては、
http://i-doctor.sakura.ne.jp/dokuwiki/doku.php/imagej/index.html
をご覧ください。

画像を手動で2値化

画像を手動で2値化する場合は、以下の手順でできます。

  1. ImageJを起動
  2. 2値化したい画像をImageJにドラッグして開く
  3. Image > Adjust > Threshold
  4. よさそうなところで、Applyをクリック
  5. Analyze > Measure (Ctrl + M)で、全面積中の白い部分の割合を計算できます

今回は、vessel densityが29%ということになります。(本当かな?)

ちょっとThersholdを下げて、画面を真っ白にして、Ctrl+Mすると、この画像が79%とのことなので、たぶん、上の29%も正しいのでしょう。

しかし、特殊な計算方法にしたがって2値化したい場合などは、Auto_Threshold-X.Y.Z.jarプラグインを用いるとうまくいくことがあります。次に、このプラグインを使ってみたいと思います。

Auto_Threshold-X.Y.Z.jarプラグインを用いる方法

まず、以下のページからプラグインのAuto_Threshold-X.Y.Z.jarファイルをダウンロードします。

https://imagej.net/Auto_Local_Threshold

Plugins > Install Plugin… をクリックして、先ほどダウンロードした 
Auto_Threshold-X.Y.Z.jar
(私の場合は、Auto_Threshold-1.17.1.jar でした)
を選択してインストールします。

ImageJ(Fiji)を閉じてから再起動すると、

Image > Adjust > Auto Local Threshold

から使用することができるようになります。

後は、以下のようにやります。
(Niblack’s thresholding methodを用いる場合)

  • ImageJを起動
  • 2値化したい画像をImageJにドラッグして開く
  • Image > Adjust > Auto Local Threshold
  • MethodでNiblackを選択して、OK をクリック
  • Analyze > Measure (Ctrl + M)で、全面積中の白い部分の割合を計算できます

ちなみに、Niblack methodを用いる際に、パラメータを2つ設定できるようです。(今回はデフォルトのままとしました。)

スポンサーリンク