概要
Python言語でセグメンテーションを行うためのU-Netモデルを実装する
|
|
画像を対象とした深層学習技術の一つに、物体が占める領域を認識するセグメンテーションなどがあります。
深層学習技術にはPython言語が広く使われており、深層学習の骨格ともいえるフレームワークも様々な種類が知られています。
また、深層学習技術にはモデルも複数存在しており、例えば
U-Netモデルは対象物体の「種類と形と位置」をピクセル単位で認識することが出来るモデル
です。 本来U-NetモデルはPython言語のコーディングや深層学習の専門知識が必要なため、担当者の割り当てや情報展開が難しいというデメリットが存在します。 しかし、Pipeline Pilotの2021年度版からはU-Netが搭載されたコンポーネントが含まれているため、手軽に利用することが出来ます。 |
keywordReference |
手法
U-Netモデルを学習させ、使用するフローチャート
|
本事例では、The Oxford-IIIT Pet Datasetデータセットの画像とそれらのアノテーションを学習データとして使用します。 アノテーションをするためのコンポーネントもPipeline Pilotには含まれている為、 アノテーション作業の外部受託を行う必要はない、守秘義務等のある画像に対してもU-Netを適用することができる、などのメリットがあります。 U-Netモデルを学習させるために、The Oxford-IIIT Pet Datasetデータセット内の猫画像とそれらのアノテーションを画像150枚程を学習させております。 その学習させたU-Netモデルが含まれたコンポーネントを作成、保存しました。 |
keyword |
結果
学習させたU-Netモデルを使用した結果と考察
セグメンテーションへ使用する用の画像The Oxford-IIIT Pet Datasetデータセット内から取り出し、セグメントした結果は、これらの様になります。 フローは左側の様なセグメントする前の画像を真ん中の様な学習モデルコンポーネントに読み取らせ、右の様なセグメント後画像を出力させています。 このようなセグメントの使用先としては、 |
Reference |