24.11.21

WSSS

픽셀 레이블 없을경우 이미지레이블, 박스레이블로 segmentation task를 수행
클래스 분류만 수행하는지 위치까지만 찾는데.. 등등으로 나뉜다.
annotation time이 얼마나들까?

pixel-level labeling이 image-level labeling보다 78배나 오래 걸린다..
사실상 이렇게 레이블링하는데 오래걸리면 학습하는 과정 자체가 거의 불가능하게 된다.

그럼 만들기 쉽고 이미 만들어져있는 image-level label만 가지고 segmentation 할 수 없을까? 해서 생겨난개 WSSS이다.

그렇다면 Weakly-supervised Annotations란 무엇일까?

Test에서 pixel단위의 classification을 수행하지만
학습 단계에선 이미지나 포인트 바운딩박스 스크립을 가지고 학습한다.

그러면 어떤식으로 WSSS를 수행할까?

Naive approach

일반적 접근법으로는 분류 모델을 이용해서 수도레이블링을 만들고 이름 segmentation모델로 다시 학습하는 방법이 있다.

학습한 분류 모델을 통해서 CAM, Grad-CAM으로 attention을 추출한다.

추출한 결과물은 수도 마스크로 segmentation 모델 학습에 이용한다.

이를 활용해서 수도 마스크를 FCN을 통해 학습해주고 새로운 입력 이미지가 들어왔을 때, 학습한 FCN을 통과하게 되면 segmentation을 수행하게 된다.

하지만 나이브한 접근법의 문제는 수도 마스크의 결과가 좋지 않다는 문제이다.
왜그럴까?
CAM과 Grad-CAM을 살펴볼 필요가 있다.

CAM

CAM이란 클래스 activation mapping으로 특정 클래스 물체가 사진의 어떤 영역에 위치에 있는지 유추할 수 있게 해주는 방법이다.