Boostcamp AI Tech

[Boostcamp Day-51] FCN의 한계를 극복한 model 1

ju_young 2021. 10. 22. 22:05
728x90

FCN의 한계점

  1. 객체의 크기가 크거나 작은 경우 예측을 잘 하지 못하는 문제

  1. Object의 디테일한 모습이 사라지는 문제 발생

DeconvNet


  1. Convolution Network는 VGG16을 사용
    • 13개의 층으로 이루어짐
    • ReLU와 Pooling이 Convolution 사이에서 이루어짐
    • 7x7 Convolution 및 1x1 Convolution을 활용
  2. Deconvolution Network는 Unpooling, Deconvolution, ReLU로 이루어짐
    • Unpooling은 디테일한 경계를 포착
    • Transposed Convolution은 전반적인 모습을 포착
  3. Unpooling
    • Pooling의 경우 노이즈를 제거하는 장점이 있지만 그 과정에서 정보가 손실
    • Unpooling을 통해서 Pooling시에 지워진 경계에 정보를 기록했다가 복원
    • 학습이 필요없기 때문에 빠름
  4. Deconvolution(Transposed Convolution)
    • input object의 모양을 복원
    • 순차적인 층의 구조가 다양한 수준의 모양을 잡아냄(low level : 전반적인 모습, high level : 구체적인 모습)

SegNet


  • 중간의 1x1 Convolution 제거 -> weight parameter 감소 -> 학습 및 추론 시간 감소

FC DenseNet


Skip Connnection을 활용한 네트워크이다. 위 그림에서 DB라는 블록을 보면 Output을 내기 전 이전 layer를 통과한 부분과 Concatenation해준다. 또한 encoder에서 decoder로 건네주는 부분에 Skip Connection이 또 하나 있다.

Unet


DeepLab v1

  • Receptive Field가 왜 중요한가? : 서로 다른 receptive field를 가질 경우 큰 receptive field를 가진 쪽이 정보를 더 포함하고 있어 예측 확률이 높다. 만약 receptive field가 작다면 부분적으로 포함하기 때문에 예측 정확도가 낮다.
  • Dilated Convolution : image의 크기를 적게 줄이면서도 효율적인 receptive field를 넓히는 방법을 고안
  • Architecture

  • Up sampling - Bilinear Interpolation

  • Dense Conditional Random Field (Dense CRF) : Bilinear Interpolation으로는 픽셀 단위의 정교한 segmentation이 불가능하기 때문에 이를 개선하기 위한 후처리 방법이다.

DilatedNet

  • Only Front-End Module

  • Front + Basic Context module

 

728x90