Slide 1

Slide 1 text

PolarMask: Single Shot Instance Segmentation with Polar Representation Enze Xie, Peize Sun, Xiaoge Song, Wenhai Wang, Xuebo Liu, Ding Liang, Chunhua Shen, Ping Luo CVPR 2020 (Oral) @__t2kasa__ (Tsukasa Takagi) 2020/07/18 CVPR2020読み会@オンライン(後編)

Slide 2

Slide 2 text

自己紹介&論文を選んだ理由 ● 自己紹介 ○ Twitter: @__t2kasa__ ○ Tsukasa Takagi ● 論文を選んだ理由 ○ bboxを推定せずにinstance segmentationができる! という点が面白いと感じた

Slide 3

Slide 3 text

PolarMask ● マスクの表現方法として 極座標(Polar Coordinates)を用いる ことにより、シンプルなsingle shot instance segmentationを可能にしたPolarMaskを提 案 ● 極座標を用いる利点: ○ 極座標の原点は物体の中心になる ○ 物体の輪郭は物体の中心からの 距離と角度のみで表現できる ○ 角度毎の点をつなげていくことで 物体の輪郭を容易に作成できる

Slide 4

Slide 4 text

従来研究&関連研究

Slide 5

Slide 5 text

Mask R-CNN [He+ ICCV 2017] 1. Region Proposal Network (RPN)で物体の矩形候補を推定 2. 矩形候補毎に特徴量をRoIAlignで抽出 3. ラベル・矩形・マスクを推定

Slide 6

Slide 6 text

FCOS [Tian+ ICCV 2019] ● Object Detectionをclassification + centerness + tlbrの推定として扱う

Slide 7

Slide 7 text

PolarMask [Xie+ CVPR 2020] ● Instance Segmentationをclassification + center + distanceの推定として扱う

Slide 8

Slide 8 text

従来研究との関係性 Method Task use RPN? use anchor? # of stages Faster R-CNN [Ren+ NIPS 2015] Object Detection Yes Yes 2 RetinaNet [Lin+ ICCV 2017] No Yes 1 FCOS [Tian+ ICCV 2019] No No 1 Mask R-CNN [He+ ICCV 2017] Instance Segmentation Yes Yes 2 YOLACT [Bolya+ ICCV 2019] No Yes 1 PolarMask [Xie+ CVPR 2020] No No 1

Slide 9

Slide 9 text

● Polar Representation ○ 極座標によるマスクの表現 ● Loss ○ Classification(FCOSと同様) ○ Polar Centerness ○ Polar IoU Loss ● Inference ○ Mask Assembling ● Experiments ○ Ablation Study ○ COCO test-devでの精度比較 PolarMask 詳細

Slide 10

Slide 10 text

Polar Representation

Slide 11

Slide 11 text

極座標によるマスクの表現 ● 中心 ○ bboxの中心ではなくマスクの重心を採用 ○ マスクの重心を中心とした方がGTとのIoUの上限が高い ● 角度 ○ 中心からのrayの数nを決めておいて等間隔に分割(n = 36なら10度毎) ● 中心からの距離 ○ 各角度でマスクの輪郭までの距離を求める (実際にはマスクの輪郭上でその角度に最も近い距離を用いる)

Slide 12

Slide 12 text

Loss

Slide 13

Slide 13 text

Classification ● FCOSと同様 ● feature mapのstride x 1.5倍の範囲に物体の重心があればpositiveとする ○ 例:元画像の1 / 8のサイズのfeature mapでは各位置について 元画像で8 x 1.5 = 12 pixelの範囲内に物体の中心があればpositive ● focal lossで学習

Slide 14

Slide 14 text

Polar Centerness ● Centerness ○ FCOSで提案 ○ 物体の中心に近い位置がcenterになりやすいようにする ○ binary cross entropy lossで学習する ● Polar Centerness ○ Centernessを極座標用に変更 ○ rayの長さのsqrt(min/max)が大きい方がcenterになりやすいようにする (rayの長さに差がないような位置が良いcenterとなるようにする)

Slide 15

Slide 15 text

Polar IoU Loss (1/2) ● 中心から輪郭までの距離を回帰問題として推定 ● object detectionやinstance segmentationではsmooth L1が定番だが… ● 疑問: ○ 各物体に対してn個のrayの回帰損失を計算するため、 分類損失とimbalanceになる可能性がある ○ 各rayの回帰損失は独立して計算するよりも、n個のrayの間に 関係性があるとして計算できる損失の方が良いのではないか ● → Polar IoU Lossを提案

Slide 16

Slide 16 text

Polar IoU Loss (2/2) ● 定義に従ったIoU ● rayは等間隔なのでΔθ = 2π / N、経験的にd^2ではなくdでも精度にほとんど影響し ない(±0.1 mAP)ことから、Nが有限の場合 ● Polar IoU LossはPolar IoUのbinary cross entropy lossとする ● 最適なIoUは1(正解の値を1としたBCE)なので負の対数をとった形になる

Slide 17

Slide 17 text

Inference

Slide 18

Slide 18 text

Mask Assembling ● centernessとclassificationの値を掛けた数値をconfidence scoreとする ● FPNの各レベルでscoreが高いほうから1kだけ残す ● scoreが0.05を超える物体のみ残す ● マスクの外接矩形を用いてnon maximum suppression (NMS)をする ● マスクの算出自体はシンプル: ○ 中心位置からrayの長さdと事前に決めた等間隔の角度から(x, y)を計算 ○ 求めた点を線でつないでいく

Slide 19

Slide 19 text

Experiments

Slide 20

Slide 20 text

Ablation Study

Slide 21

Slide 21 text

COCO test-devでの精度比較

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

まとめ ● マスクの表現方法として極座標を用いることにより、シンプルなsingle shot instance segmentationを可能にしたPolarMaskを提案 ● 極座標に合わせたPolar Centerness, Polar IoU Lossを提案して精度を向上 ● GitHubで公開されている ○ https://github.com/xieenze/PolarMask

Slide 24

Slide 24 text

● [Ren+ NIPS 2015] Shaoqing Ren, Kaiming He, Ross Girshick, and Jian Sun, “Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks,” in NIPS 2015. ● [Lin+ ICCV 2017] Tsung-Yi Lin, Priya Goyal, Ross Girshick, Kaiming He, and Piotr Dollár, “Focal Loss for Dense Object Detection,” in ICCV 2017. ● [Tian+ ICCV 2019] Zhi Tian, Chunhua Shen, Hao Chen, and Tong He, “FCOS: Fully Convolutional One-Stage Object Detection,” in ICCV 2019. ● [He+ ICCV 2017] Kaiming He, Georgia Gkioxari, Piotr Dollár, and Ross Girshick, “Mask R-CNN,” in ICCV 2017. ● [Bolya+ ICCV 2019] Daniel Bolya, Chong Zhou, Fanyi Xiao, and Yong Jae Lee, “YOLACT: Real-time Instance Segmentation,” in ICCV 2019. ● [Xie+ CVPR 2020] Enze Xie, Peize Sun, Xiaoge Song, Wenhai Wang, Ding Liang, Chunhua Shen, and Ping Luo, “PolarMask: Single Shot Instance Segmentation with Polar Representation,” in CVPR 2020. References

Slide 25

Slide 25 text

Appendix

Slide 26

Slide 26 text

中心からの距離の決定方法 ● 輪郭をcv2.findContoursなどで求めておく ● 輪郭上の全ての点で距離と角度を算出 → ● ray毎に一致する角度が輪郭内にあれば → その値を距離とする (複数の点がマッチする場合は最大の距離) ● 一致する角度がない場合は近い角度に → 対応する値を距離とする (近い角度もない場合は10^-6としておく)