localization vs semantic segmentation vs instance segmentation
구조 : faster rcnn의 결과인 ROI 영역에 FCN(위의 semantic segmentation)을 결합하는 개념
fcn = mask
기존 fcn = pixel 레벨의 분류 > pixel마다 softmax > multi instance
수정
pixel 레벨의 분류가 필요없다 > faster rcnn이 ROI 영역 분류
pixel 마다 softmax > ROI 영역에 대해서는 sigmoid 즉, binary classification만해서 multi-instance 분류가 아닌 개념으로 축소시킨다.
training loss
위에서 언급했듯이 mask는 그 안에 존재하는 어떤 클래스인지 상관없이 object vs none 의 개념으로 학습시킨다. > 그래서 그냥 마스크만 딴다란 의미~:)
mask representation
first layer - fully convolutional network(rpn)
fcn - equivariant to translation within ROI
IOU = 50, 75
ROI Align
이전 faster rcnn 부분에서는 이부분이 ROI Pooling
즉, 위의 그림 처럼 다양한 사이즈의 ROI를 고정사이즈로 변환시키는 역할 = ROI Pooling
ROI Align
ROI를 입력으로 받는거와 7x7 Pooled feature를 받는 것은 ROI Pooling와 동일
Pooled feature는 segmentation 하기에는 적합하지 않다. 즉,
ROI Pooling는 다음과 같이 약 5x5 크기의 검은색 ROI가 있는데, 대충 정수형으로 빨간색으로 대충 맞추고, 2x2 pooling을 함(여기는 원래 그냥 예, 실제로는 위에서처럼 7x7), 근데 5x5는 정수으로는 정확하게 자를수 없기 때문에 빨간색 사각형안처럼 2:3비율로 잘라 max pooling함.
따라서, 이것의 의미는 align이 제대로 되지 않는 Pooling임.
이러한 단점을 해결하고자 하는게 ROI Align : subpixel(cell?)단위로 분리 > bi-linear interpolation
https://arxiv.org/abs/1703.06870 Kaiming He, Georgia Gkioxari, Piotr Dollár, Ross Girshick https://www.youtube.com/watch?v=RtSZALC9DlU > 이 발표 동영상 위주로 정리한것임을 밝힘.