社会人博士の深層学習ブログ

深層学習を使った環境音認識研究で、働きながら博士号を取得しました

【深層学習】U-Netでセマンティックセグメンテーション 〜ネットワーク解説とCityscapesデータセットで実験〜

 

今日はU-Netでセグメンテーションをやってみた結果を載せてみます。

 

セグメンテーションとは、以下の例のように、画像のピクセル単位で車や歩行者などを認識するAIの技術で、自動運転などに使われていたりします。

 

ys0510.hatenablog.com

 

学習に使ったデータはCityspacesのFine annotationのtrainデータを使いました。

 

U-Netとは

先日、セグメンテーションの概要についての記事を書きましたが、U-Netもセグメンテーション手法の一つです。

もともとは、以下の例のような、医療画像用のセグメンテーション手法として研究されていたものです。

 

ネットワークの特徴

U-Netの特徴をめちゃくちゃざっくりいうと、Convolution部分とDeconvolution部分に分けることができ、同じ階層をconcatenateで接続することによって、Context情報を保持したまま学習しようというものです。

Skip connection

以下にU-Netのネットワーク構造を示しますが、U-Netにはエンコーダブロックの途中の層からデコーダ構造にスキップする構造を持ちます。(グレー矢印)この狙いとしては、畳み込みを繰り返すことによって、完全に抽象化された特徴から高解像度な画像を復元するのではなく、もっと浅い層の高解像度な情報をスキップしてやることで、解像度を向上させる狙いがあります。

 

実験

もともとの論文も多くのブログで紹介されているU-Netも、2クラスで実装されていますので、今回は、最終層をCityspacesの19クラス分類に適用してみました。

 

 

結果

結果例を下に示します。おおよそ傾向はつかめていますが、ノイジーな結果になってしまいました。高解像度な情報を得るために、スキップ構造を導入していますが、特徴抽出が十分にできていない段階で無理やりスキップしてしまっていることが原因として考えられるかもしれません。

参考文献

Ronneberger, Olaf, Philipp Fischer, and Thomas Brox. "U-net: Convolutional networks for biomedical image segmentation." International Conference on Medical image computing and computer-assisted intervention. Springer, Cham, 2015. 

 

 

U-Netの音声データへの適用例紹介

U-Netは画像以外にも、音声データにも使うことができます。その1例として、CD音源からボーカルだけを分離する技術についても解説していますので、よければご覧ください。

ys0510.hatenablog.com

 

U-Net以外のセマンティックセグメンテーション例の紹介

U-Net以外にもいくつかセマンティックセグメンテーションのネットワークを紹介していますので、よければご覧ください。

ys0510.hatenablog.com

ys0510.hatenablog.com

ys0510.hatenablog.com

 

ご意見、ご質問、調べてほしいことなどあれば、コメントください。

励みになりますので、お気に入り登録もよろしくお願いいたします!