21일 월요일 세미나때 설명드렸던 FCN에 관한 내용입니다! 혹시 세미나시 질문을 받지 못한 부분 여기에 질문해 주시면 감사드리겠습니다.
FCN은 간단히 말하자면 그림 1에서 확인할 수 있듯이 성능이 좋은 classification network의 fully connected layer 부분을 1×1 Convolution으로 가정하여 convolution layer로 바꾸어 모델을 컨볼볼션화 하는 것 이다.
fully connected layer를 1×1 convolution으로 가정한다는것에 대해 추가 설명 드리자면 다음의 그림2와 같다. [그림 주소]
Convolution 화를 통해 레이어의 input 사이즈가 자유로워질 수 있고(그 대신 output size가 input에 종속적이 됩니다), 위치정보를 잃지 않을 수 있습니다.
Fully connected layer로 변경 후 출력으로 coarse map을 얻게 됩니다. segmentation 마스크를 이용하기 위해 이 coarse map을 up-sampling을 진행하여야 한다. 이를 위해 논문은 deep jet 방식을 소개 한다.
세부정보를 가지고 있는 lower layer를 혼합하여 up sampling 하는 방식이다.
추가로 논문에서 Shift and Stitch upsampling 방식을 convolution으로 구현한 식 소개하였다. [그림 5 링크]
그림처럼 이미지를 shifting하여 얻은 결과 이미지를 stitching하여 up-sampling을 하는 방식이다.