Semantic SegmentationのメモSemantic Segmentation でInstance Segmentation できないのか?という疑問
あいさつ
あけましておめでとうございます。正月中にSemantic Segmentationについて調べたので、簡単にまとめます。
Semantic Segmentation
Semantic Segmentationとは画像認識技術の一つである。1画素ごとにクラス分類問題を行うことで、その画像の領域分割を行う。文字通り、Semantic(意味)Segmantation(分割)である。(サムネ参照)
一般的にSemantic Segmentationの目的は物体検出と物体分類の問題を包括している。そのため、同じクラスの物体は同じものとして認識されるとのことだ。
Semantic Segmentationについて使われる技術が以下のようなものがある。深い畳み込みによる位置情報の消失を防ぐために、逆畳み込みが利用されている技術もある。スキップ結合・CRFも重要な技術のようだ。
・Fully Convolutional Networks for Semantic Segmentation
・SegNet: A Deep Convolutional Encoder-Decoder Architecture for Image Segmentation
・U-Net: Convolutional Networks for Biomedical Image Segmentation
Instance segmentation
この技術の発展系としてInstance segmentation と呼ばれるものがある。これは、同一物体クラスの異なるインスタンスの区別を目的としている。以下の図だと、(d)にあたる。Semantic Segmentationとバウンディングボックスを組み合わせたものが有名である。
Instance Segmentationについて使われる技術が以下のようなものがある。
・Mask R-CNN
・YOLOv3: An Incremental Improvement
RCNN
また、一般物体検出という技術(b)はRCNNから派生したバウンディングボックスを使用した物体検出技術もある。RCNNは物体検出タスクの始祖(?)ともいわれるらしい。ここでは省略する。
・Rich feature hierarchies for accurate object detection and semantic segmentation
疑問
調べていくうちに疑問に思ったのはそもそもSemantic SegmentationでInstance Segmentationできないのか?ということ。
探すと、この分野もかなり研究されているようだった。
・End-to-End Instance Segmentation with Recurrent Attention
・Semantic Instance Segmentation with a Discriminative Loss Function
Triplet lossがバウンディングボックス用ならば、Semantic Segmentaiton用の損失関数によるアプローチのようである。
画像から得たembedding(出力された特徴量ベクトル)をの位置と考え、近くにあるものは同じオブジェクトと考えるイメージ。以下イメージ図。
まとめ
・まとめると以下のような感じになると考えた。
・Semantic SegmentationでもInstance Segmentation のアプローチが行えるようだった。
以上
追記
Semantic Segmentation の場合、Instance Segmentation ではなく、 同一物体クラスの異なるインスタンスの区別することをdifferentiate individual object instancesと表現しているようだ。この差は何かあるのか???
参考
・物体検出について読むならこれ!(@shinya7y 様)
・Deep Learning for Generic Object Detection: A Survey
この記事が気に入ったらサポートをしてみませんか?