Hybrid Task Cascade for Instance Segmentation
スポンサーリンク
論文URL
http://openaccess.thecvf.com/content_CVPR_2019/papers/Chen_Hybrid_Task_Cascade_for_Instance_Segmentation_CVPR_2019_paper.pdf
2019年のCVPRで公開
ポイント
- COCO 2018 Challenge Object Detection Taskにて1位になったネットワークHTC(Hybrid Task Cascade)を提案
- HTCはインスタンスセグメンテーション用ネットワーク
- Mask R-CNNをベースとし、RPN以降の構造をカスケード化
- bounding box検出用特徴量、インスタンスセグメンテーション用特徴量、セマンティックセグメンテーション用特徴量を混ぜ合わせる3段のカスケード構成(Fig1 (d))
HTC
- Fig1(a)からFig1(d)のHTCまで段階的に説明する
- Fig1(a) Cascade Mask R-CNN
- Mask R-CNNのbounding box検出ヘッド(図のB1~B3)とインスタンスセグメンテーションマスク抽出ヘッド(図のM1~M3)を3連結する
- bounding box検出ヘッドで計算した特徴量が後段の入力となっている
- Fig1(b) Interleaved execution
- インスタンスセグメンテーションマスク抽出ヘッドの入力として、該当段のbounding box検出ヘッドで計算した特徴量を入力に追加
- Fig1(c) Mask information flow
- インスタンスセグメンテーションマスク抽出ヘッドで計算した特徴量を後段のマスク抽出ヘッドの入力に追加
- 1x1の畳み込みにかけた後、要素ごとに和を取っている
- 論文中の式(5)では入力となる前段の特徴量を該当段のマスク特徴量を入力として再計算することになっているが、Fig1や論文中のFigure2のモデル構造と矛盾しており、誤記だと思われる。
- インスタンスセグメンテーションマスク抽出ヘッドで計算した特徴量を後段のマスク抽出ヘッドの入力に追加
- Fig1(d) HTC
- セマンティックセグメンテーションを別途行い(図中のs)、その結果の特徴量を各カスケードでの入力とする
- Fig1(d)ではインスタンスセグメンテーションマスク抽出ヘッドにしか入力されていないように図示されているが、論文中の数式ではbounding box検出用ヘッドにも入力されている
- セマンティックセグメンテーションはFig2の構造で行っている
COCO test-dev datasetでの評価
COCO 2018で一位となったモデル構造
- 以下を行い、test-dev datasetでのmask APが49.0に到達
- バックボーンのResNetの第5ステージ(res5)でdeformable convolutionを使用
- Synchronized Batch Normalizationを使用
- 学習時に複数GPUを使っており、GPU間をまたいだBNを行っている
- マルチスケール学習
- 学習時に、入力画像の長辺を1600に固定し、短辺を400~1400の間でランダムに変更
- GA-RPN(Guided Anchoring Region Proposal Network)を使用
- マルチスケール推論
- 推論時に以下の5スケールの画像を水平フリップしてアンサンブル
- 600x900 , 800x1200 , 1000x1500 , 1200x1800 , 1400x2100
- 複数モデルのアンサンブル
- バックボーンとして以下のモデルを使用
- SENet-154 , ResNeXt-101 64x4d , ResNeXt-101 32x8d , DPN-107 , FishNet
- 単独モデルではSENet-154が最高精度だったとのこと
- マルチスケール推論と合わせて50個の結果をアンサンブルしていることになる