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.

FijiのU-Netで3次元のセグメンテーションをする方法

Last updated at Posted at 2019-12-26

前回記事ではFijiのプラグインからU-Netで細胞認識するソフトを紹介しました。
(https://qiita.com/takeajioka/items/0d0873af09245bffc793)
この記事では、ソフトの発展機能である、3D U-Netによる三次元データのセグメンテーション方法を紹介します。
この3D U-Netを使う方法は、開発者のホームページやビデオチュートリアルにも解説がされていませんでした。

必要な設備

3D U-Netは大規模な処理をするため、バックエンドPCには、GPUが必須になります。
特にfine-tuningをするには7GB以上のGPUが必要になります。(6266MB以上無いと動かせないようになっています。)
また、RTX2080、2070のGPUではfine-tuningをするときになぜかCUDAエラーになったので書いておきます。
自前PCの場合はGPUはGTX1070が8GBあるのでお勧めです。

方法

ホームページで公開されているcaffeモデルには光学顕微鏡用(bright field)と、蛍光顕微鏡用(fluorescence)の2つのモデルがあります。(別フォルダには電子顕微鏡用のモデルもあるようです。)
これらのモデルを使って、segmentation・detectionを行うこともできますが、精度をよくするならfine-tuningで自分の画像専用のモデルを作成しそれを使う方がよいです。

fine-tuning

自分の画像がどういう条件で撮ったものか(光学顕微鏡か蛍光顕微鏡か、または電子顕微鏡か)を確認して、それに合わせたモデルを選択します。
また、ROI取りをした教師データを作成しなければなりません。
3次元データは一気にROIを作成することができません。教師データの作成方法は、ImageJのROI取りツールでzスライス一枚一枚にROIをとっていくことになります。
ROIには「<クラスの名前>#<個体の番号>」のように番号を付けます。クラスは細胞の種類、個体はzでつながった同じ細胞の領域ということになると思います。正しくROIの名前を付けないと以下のようなエラーが出ます。
1.PNG

後は学習をかけるだけです。
自前のPCでは、エポックを多くすると途中でImageJが落ちることがありました。
この場合はエポックは20くらいにして繰り返し行うことで、解決することができました。

segmentaionまたはdetection

2次元画像の場合と変わりません。GPUも7GB以下でも問題なく動きます。ただし、タイル幅が小さくなるとそれだけ時間がかかります。

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?