안녕하세요, 오늘 읽은 논문은 PANet, Path Aggregation Network for Instance Segmentation 입니다.
PANet은 Mask R-CNN을 기반으로 Instance Segmentation을 위한 모델입니다. 이 논문에서 제안하는 Bottom-up path augmentation과 Adaptive feature pooling 방법은 YOLOv4에서 사용할 만큼 효과적인 성능을 나타내고 있습니다.
PANet
PANet은 (1) Bottom-up Path Augmentation, (2) Adaptive Feature Pooling, (3) Fully-connected Fusion 세 가지 방법을 제안합니다.
1. Bottom-up Path Augmentation
Bottom-up Path Augmentation은 low-level feature 정보를 손쉽게 high-level로 전달하기 위해 제안되었습니다. 정보가 전달되는 information flow를 축소하여 low-level 정보를 최대한 보존하는 역할을 합니다.
일반적으로 low-level feature은 small object를 검출하는 경우에 유용하다고 알고 있습니다. 하지만 larger object를 검출하는 경우에도 엣지, 또는 작은 instance에 강하게 반응하는 low-level feature이 필요합니다. 또한 small object를 검출하기 위해서는 이미지의 context를 포착하는 high-level feature이 필요합니다. low level과 high level 정보를 풍부하게 활용한다면 더 정확한 localization이 가능하다고 논문은 설명합니다.
기존의 FPN은 low-level의 정보가 100 layer 이상을 거쳐서 high level로 전달됩니다. PANet의 전체 구조를 나타낸 그림에서 빨강색 점선이 기존 FPN에서의 정보 흐름을 나타냅니다. 반면에 초록색 점섬은 PANet에서의 정보 흐름입니다. low-level 정보가 high-level로 전달되는데에 10layer 정도만 사용됩니다. 즉, Bottom-up Path Augmentation이 효과적인 이유는 정보 흐름을 단축시키기 때문이라고 생각해볼 수 있습니다. low-level 정보가 온전하게 high-level로 전달되어 큰 객체를 검출하는 경우에도 low-level 정보를 활용할 수 있습니다.
논문에서 제안하는 augmentated Bottom-up 구조는 FPN이 생성한 {P2, P3, P4, P5}를 활용하여 {N2, N3, N4, N5}을 생성합니다. N_i feature map이 3x3 stride=2인 conv layer를 거쳐서 down-sampling 되고, P_(i+1)과 lateral connection을 통해 N_(i+1) feature map을 생성합니다.
2. Adaptive Feature Pooling
N2~N5 각각의 feature map에 RPN이 적용되여 RoI를 생성합니다. 각 피쳐맵에서 생성된 RoI는 RoI Align을 거쳐서 일정한 크기의 벡터가 생성됩니다. Adaptive Feature Pooling은 각 피쳐맵에서 생성한 일정한 크기의 벡터를 max 연산으로 하나로 결합합니다. 하나로 결합된 벡터에서 class와 box를 예측하는 것입니다.
N2~N5의 모든 정보를 활용하므로 low-level, high-level 정보를 함께 활용할 수 있습니다.
3. Fully-connected Fusion
Fully-connected Fusion은 Mask branch에서 사용합니다. mask를 예측하는 경우에 공간적인 정보를 활용해야 하므로 FCN을 활용합니다. 하지만, PANet에서 제안하는 Fully-connected Fusion은 FCN과 FC를 사용하여 두 정보를 함께 활용합니다.
conv1~deconv로 구성된 작은 FCN은 각 class에 해당하는 pixel을 나타내는 이진 마스크 예측하고, FC는 배경과 객체를 구분하는 마스크를 예측합니다. 최종 예측값은 둘의 예측값을 더하여 생성합니다.
Fully-connected Fusion는 FCN와 FC를 함께 사용하여 정보의 다양성은 향상되고, 좀 더 나은 quility의 mask를 생성합니다.
Performance
참고자료