「物体検出」とは別アプローチとしての「画素単位での精密切り出し」による一般物体認識手法について。
目次
AI・ディープラーニングの全体像
- 人工知能
- 機械学習
- ディープラーニングの基本・応用
- ディープラーニングの研究
- AIプロジェクト
- AI社会実装に伴う法律・倫理
画素単位での精密切り出し
セマンティックセグメンテーション
概要
- 「セマンティックセグメンテーション(Semantic Segmentation)」
- 物体領域を画素単位で切り出すし、各画素をクラスに割り当てる
- 工業検査、自動運転、衛星画像、医療画像解析など
- 代表的な学習データセット:VOC2012、MSCOCO
完全畳み込みネットワーク(FCN)
- 「完全畳み込みネットワーク(FCN;Fully Convolutional Network)」→セマンティックセグメンテーションの有名なモデルのひとつ
- 最初から最後まですべての層が畳み込み層であり、全結合層を有しない
FCN | CNN | |
---|---|---|
教師データのラベル | ・画素ごとにラベルをつけた教師データを与え、学習させる ・未知画像が入力されたときも同様に、画素ごとにカテゴリを予測する | ・画像ごとにラベルをつける |
出力ノードの数 | ・画素ごとにカテゴリを付与するため、出力ノードはかなり大きな数になる | ・分類対象クラスの数だけ出力層のノード数がある |
入力画像のサイズ | ・入力画像のサイズは可変 | ・全結合層を持つため、事前に画像を統一的にリサイズする |
SegNet
- 「SegNet」→CNNからなるエンコーダを用いて、入力画像から特徴マップを抽出→アップサンプリング層からなるデコーダを用いて、特徴マップと元画像の画素位置との対応関係をマッピングする
- 「Maxプーリング」からのインデックスを使用してデコーダを誘導することで、FCNに比べ、メモリ効率を上げている
U-Net
- 「U-Net」→エンコーダとデコーダの間に「スキップ接続」を取り入れている
- エンコーダの各層で出力される特徴マップを、デコーダの対応する各層の特徴マップに連結する
- 詳細な情報を保持し伝達でき、エッジや細かい特徴もよく捉えることができる
- 学習用画像の数が比較的少なくともセグメンテーションの精度がよく、学習・学習済みモデルのデータ処理が高速
- 精密なタスクで高いパフォーマンスを示す
インスタンスセグメンテーション
概要
- 「インスタンスセグメンテーション(Instance Segmentatio)」→セマンティックセグメンテーションと物体検出を統合したもの
- バウンディングボックスを用いた「物体検出」
→画像内における物体のおおよその位置を把握
→各々の物体の輪郭を画素単位で切り出す「セグメンテーション」を行う - 同じクラスに属しても別々の物体として扱うため、物体の形状を正確に捉えることができる
YOLACT
- 「YOLACT」→ワンステップでインスタンスセグメンテーションを行う
Mask R-CNN
- 「Mask R-CNN」→Faster R-CNNを拡張したインスタンスセグメンテーションのためのアルゴリズム
- Faster R-CNNの物体検出機能に、セグメンテーション機能を付加する形で進化した手法
- 2017年、Kaiming Heらが提案
- 画素単位でクラス分類を行ったうえで、物体の形を精密に推定することができる
- 2017年開催のICCVでBest Paperに選出されたほど有能な手法
- 画像中に物体らしき領域とその領域の中の物体クラスを検出
→物体らしき領域が複数個検出
→その中に”物体らしさ”がある閾値以上の領域のみに絞り込む
→精度の高い結果が得られる - 物体検出で絞られた物体候補領域についてのみセグメンテーションを行うことで、効率アップを図っている