Boostcamp-221014 학습정리

권규보·2022년 10월 14일
0

boostcamp

목록 보기
6/9

1. Semantic segmentation

이미지의 픽셀 단위로 classification
개체를 따라 분류하는 것이 아님. 오직 senatic category에 의해 분류됨
ex) 사람이 여러 명 있어도 그냥 사람이라는 카테고리로 분류됨.

2.1 Fully Convolutional Networks(FCN)

핵심 아이디어는 image classification 할 때 FC로 카테고리를 의미하는 fixed dimensional vector 까지 줄인 것을 1x1 convolution layer로 바꿔서 Heatmap을 만드는 것임.

본래 채널마다 flatten 시켜서 그저 쭉 이어 붙인 벡터를 FC에 통과시켰다면 같은 위치마다 채널을 다르게 해서 쭉 이어 붙인 벡터를 각각 FC에 통과시킨다면? 위치에 대한 정보를 유지시킬 수 있음.

어떤 입력사이즈에도 대응이 가능함. (모두 flatten 시킨다음에 FC를 통과시킨 것이 아니라 convolution 연산만 하니까.)

인풋이 엄청 큰데도 불구하고 최종 map은 저해상도로 나옴. stride나 pooling layer는 넓은 receptive field를 볼 수 있게 해주지만 필연적으로 해상도를 낮추게 됨. 이걸 방지하기 위해서 Upsampling을 도입함.

Upsampling

stride나 pooling을 제거해버리면 고해상도를 얻을 수 있지만, receptive field가 작기 때문에 전체 context를 보지 못하는 trade-off가 있음.

그래서 일단 stride, pooling 다 하고 마지막 upsampling해서 resolution을 맞추는 방법을 택함.

Tranposed convolution

일부가 overlap 되는 문제

다시 FCN

낮은 층의 레이어와 높은 층의 레이어의 특징을 해상도를 맞춰놓고 합쳐서 쓰는 방법을 제시. FCN-32s 보다 더 많은 레이어의 특징을 융합한 FCN-8s가 더 좋은 성능을 발휘.

2.3 U-Net

영상의 일부분을 자세하게 봐야하는 기술은 U-net에서 기원하는 것이 많음.

  • Fully convolutional networks
  • skip connection을 통해서 낮은 층의 레이어의 특징과 높은 층의 레이어의 특징을 더 잘 결합하는 방법을 제시함.
profile
기록장

0개의 댓글