zlzon

[논문리뷰][Mask R-CNN]Mask R-CNN 본문

Paper Review

[논문리뷰][Mask R-CNN]Mask R-CNN

zlzon 2021. 12. 21. 14:49

Abstract

Mask R-CNN은 Faster R-CNN에서 object mask를 예측하는 mask branch를 추가하여 instance segmentation을 수행한다. Mask R-CNN은 다른 task(논문에서는 human poses)에 적용하기 쉬우면 COCO 2016 challenge에서 우승을 하였다.

 

Introduction

Instance segmentation의 경우 모든 물체를 검출하면서 각 물체를 구별해야하기 때문에 쉽지않다.

하지만 simple, flexible, fast한 Mask R-CNN은 이전의 instance segementation SOTA를 능가한다.

Mask R-CNN은 Faster R-CNN에 classification,bounding box regression과 병렬로 작동하는 mask branch를 추가한다. 이 mask branch가 각 ROI에 대하여 작은 FCN을 적용하여pixel-to-pixel로 segmentation을 실시한다. mask branch는 작은 연산량을 요하기 때문에 빠르게 작동한다. 그런데 Faster R-CNN의 경우 object detection을 목적으로 만들어진 모델이기 때문에 pixel-to-pixel을 요구하는 segementation에서 input과 output의 align이 맞지않는다는 문제점을 일으킨다.

 

Mask R-CNN

학습시 loss는 L = L_cls + L_box + L_mask 를 사용한다. L_mask의 경우 ground-truth class k와 관련된 RoI의 경우에 대해 k번째 mask에만 정의되어 다른 mask출력에는 영향을 끼치지않는다. 그렇기 때문에 class간 경쟁없이 class별 mask를 생성할 수 있다.

RoIAlign의 경우 쌍선형보간법(bilinear interpolation)을 이용하여 input과 output간의 align을 맞추어준다.

 

backbone은 ResNet C4와 FPN이 사용되었고 아래에 병렬로 실행되는 'mask'부분이 'mask branch'이다.

 

학습시 L_mask 는 오직 positive RoIs에 관해서만 정의되고 Image는 800 pixels로 resize된다.

또한 mini-batch당 2장의 image가 들어간다.

 

아래의 표를 통해 모델 성능을 확인할 수 있다.