2021 네이버 부스트캠프 - Ai tech

Week 11/12/13 - Semantic Segmentation - PSP2Net

미미수 2021. 12. 16. 03:51

PSPNet 에는 세가지의 도입 배경이 있다.

 

1. Mismatched Relationship

왼쪽부터 이미지, Ground Truth, FCN, PSPNet, Color map

이미지는 호수에 보트가 떠있는(굉장히 context상으로 말이 되는) 사진이다.

하지만 왼쪽에서 세번째, FCN의 결과를 보면 가장 오른쪽의 보트가 자동차(남색)으로 인식되었음을 확인 할 수 있다.

 

얼핏 보면 보트와 자동차의 외관이 닮았기 때문이다. 

하지만 물에 떠있다는 context정보를 추가하면 정확도가 좀 더 올라가지 않을까?

 

idea -> 주변의 특징을 고려

 

2. Confusion Categories

왼쪽부터 이미지, Ground Truth, FCN, PSPNet, Color map

유사한 카테고리를 헷갈리는 문제점도 있다.

지역적인 부분만 봐서는 building인지 skyscraper인지 알기가 힘들다.

 

idea -> contextual information 필요

 

 

3. Inconspicuous Classes

마지막으로 Inconspicuous CLasses.. 눈에 띄지 않는 이라는 뜻이란다..

 

여하튼 너무 작아서 탐지가 어려운 객체들도 종종 있다. 

예시에서 FCN에서는 베게를 탐지해내지 못했다. 그리고 박스를 굉장히 여러 물체가 섞여 있는 것으로 인식했다.

 

idea -> 작은 객체들도 contextual information 사용

 

 


Receptive Field를 늘리면 해결이 될까?

 

다시 리마인드 해보면 FCN은 여러 차례 max pooling을 거치기 때문에 따지고 보면 receptive field가 넓은 편이다.

그러나 contextual 정보들을 왜 잘 포착해내지 못할까?

 

이유는 PSPNet의 논문에서 찾아 볼 수 있는데, 계산으로 구한 receptive field의 기대치가 실제 receptive field와 차이가 많이 난다고 한다. 그리고 pooling이 진행될수록 예상 receptive field와는 점점 더 격차가 벌어진다.

 

 

FeatureMap에 AveragePooling적용해 sub-region을 생성, 일명 Pyramid Pooling

 

Sub-region각각에 conv를 진행해 채널이 1인 feature map을 생성 후 concat

 

 

Global Average Pooling이란 일반적ㅇ니 average pooling과는 다르게 주변 문맥을 파악하는데 사용이 된다.