Pipeline Pilot


各種メニューMenu

概要

Python言語でセグメンテーションを行うためのU-Netモデルを実装する

画像を対象とした深層学習技術の一つに、物体が占める領域を認識するセグメンテーションなどがあります。 深層学習技術にはPython言語が広く使われており、深層学習の骨格ともいえるフレームワークも様々な種類が知られています。 また、深層学習技術にはモデルも複数存在しており、例えば U-Netモデルは対象物体の「種類と形と位置」をピクセル単位で認識することが出来るモデル です。
本来U-NetモデルはPython言語のコーディングや深層学習の専門知識が必要なため、担当者の割り当てや情報展開が難しいというデメリットが存在します。 しかし、Pipeline Pilotの2021年度版からはU-Netが搭載されたコンポーネントが含まれているため、手軽に利用することが出来ます。

keyword

  • Python:AIや機械学習、深層学習などへ広く使用されることが多い言語であり、かつ構文が他と比べわかり易いという特徴があります。
  • TensorFlow:Googleが開発し公開している、様々な機械学習の分野で使用するためのライブラリです。
  • セグメンテーション:画像内の物体に対する領域(種類、形、位置)を認識する技術です。
  • U-Net:画像を対象とした、深層学習モデルの一つであり、画像のセグメンテーションを推定する為に使われるモデルです。

  • Reference

  • Ronneberger O. et al. Medical Image Computing and Computer-Assisted Intervention 18, 234(2015).

  • 手法

    U-Netモデルを学習させ、使用するフローチャート

    本事例では、The Oxford-IIIT Pet Datasetデータセットの画像とそれらのアノテーションを学習データとして使用します。
    アノテーションをするためのコンポーネントもPipeline Pilotには含まれている為、 アノテーション作業の外部受託を行う必要はない、守秘義務等のある画像に対してもU-Netを適用することができる、などのメリットがあります。
    U-Netモデルを学習させるために、The Oxford-IIIT Pet Datasetデータセット内の猫画像とそれらのアノテーションを画像150枚程を学習させております。 その学習させたU-Netモデルが含まれたコンポーネントを作成、保存しました。

    keyword

  • The Oxford-IIIT Pet Dataset :さまざまな種類の犬や猫の画像が含まれているデータセットです。
  • 結果

    学習させたU-Netモデルを使用した結果と考察


    セグメンテーションへ使用する用の画像The Oxford-IIIT Pet Datasetデータセット内から取り出し、セグメントした結果は、これらの様になります。 フローは左側の様なセグメントする前の画像を真ん中の様な学習モデルコンポーネントに読み取らせ、右の様なセグメント後画像を出力させています。
    このようなセグメントの使用先としては、

  • 材料の顕微鏡画像にセグメンテーションを使用することによるデータの増強
  • Pipeline Pilotの特徴であるデータ受け渡しの簡潔さを生かして、他ソフトウェアへセグメント結果の受け渡し

  • などを想定することができます。

    Reference

  • Boyuan M. et al. npj Computational Materials, 6, 125(2020).