Instance segmentation

semantic segmentation은 각 pixel들이 어느 클래스에 속하는지 분류한다. 하지만 이 경우 같은 class 내의 object들에 대해 서로 구분지을수 없다는 단점이 있다.

반면 instance segmentation은 각 pixel들이 어떤 클래스에 속하는지 분류한 후 같은 클래스 내에서도 서로 다른 instance인 경우 다른 색으로 표현한다. 즉 semantic segmentation + distinguishing instances를 동시에 수행한다.
Mask R-CNN

Fast R-CNN의 구조에서 pixel에 대한 class를 예측할 수 있는 개선이 이루어진다. 따라서 pixel 단위 segmentation mask를 예측할 수 있는 branch가 추가된다.
mask branch는 독립적이며 FCN으로 이루어져있다. 하지만 small FCN이기때문에 연산 속도가 뛰어나다.
RoIAlign을 통한 RoI extraction으로 RoI Pooling을 개선한다. RoIAlign은 pixel 단위의 segmentation이 불가능한 Fast R-CNN에 대해 정확한 공간 정보를 보존하는 RoIAlign 레이어를 만든다. 이로 인해 mask 정확도가 높아진다.
또한 binary mask에 대한 같은 클래스 내에서도 독립적인 예측이 가능하다.
YOLACT
Mask R-CNN과 마찬가지로 Instance Segmentation을 수행하는 모델. 이 문제를 real-time을 통해 풀 수 있다.

one-stage object detection 모델인 RetinaNet을 수정하여 사용한다. mask R-CNN과 마찬가지로 기존의 backbone 모델에 mask branch를 추가하는데, 이 과정을 위해 instance segmentation task를 Protonet, Prediction head로 병렬 처리한다.
Protonet은 FCN을 사용해 instance에 의존하지 않는 크기의 prototype masks를 생성한다.
Prediction Head는 prototype 공간에서 instance 정보를 가진 mask coefficients를 예측한다.
이후 두 결과물을 합친 후, NMS 과정을 거쳐 살아남은 instance의 mask를 생성한다. (위의 + + + - + -등의 과정)
Panoptic segmentation
Instance segmentation + Semantic segmentation 이 합쳐진 task.
object 마다의 class와 instance를 한번에 구분해 [class][instance id]로 레이블링을 진행한다.

UPSNet (Unified Panoptic Segmentation Network)

shared convolutional feature extraction backbone과 여러 개의 heads로 이루어진 모델이다.
backbone 네트워크는 기존의 Mask R-CNN backbone을 사용한다.
Instance segmentation Head에는 bounding box regression, classification, segmentation mask를 출력하는 Mask R-CNN을 사용한다. 이 head는 panoptic head로 전달되어 각 instance의 logits에 영향을 미친다.
Semantic Segmentation Head에서는 instance의 구별 없이 모든 객체에 대해 semantic segmentation을 진행한다.

이후 이 두개의 연산을 통해 최종 Panoptic logits를 계산한다.
Semantic head의 semantic map, Instance head의 instance mask에서 이 결과들을 b-box가 아닌 전체 image 중 해당하는 위치에 넣기 위해 추가로 Xthing을 통해 masking을 한다. 이후 최종출력에 보낸 후 Instance/object모두 해당하지 않는 부분을 제거해 unknown class로 만든 후 1channel로 최종 결과에 추가한다.
Reference
[Review] UPSNet: A Unified Panoptic Segmentation Network
Uber에서 발표하였으며 2019 CVPR Oral Paper 중 하나인'UPSNet: A Unified Panoptic Segmentation Network'에 대해서 리뷰하도록 하겠습니다. Paper Link : [Link] / Github Link : [Github Link] Abstract- 이 논문에서는 새롭게 제안
cdm98.tistory.com
'네이버 부스트캠프 학습 정리 > 5주차' 카테고리의 다른 글
5주차 회고 (0) | 2023.04.09 |
---|---|
[CV basic] Multi-modal (1) | 2023.04.09 |
[CV basic] Conditional Generative Model (0) | 2023.04.08 |