Image processing/Segmentation

[Part 2] Image Segmentation Using Deep Learning, A survey

유니디니 2020. 12. 28. 23:49
728x90
반응형

Written by Shervin Minaee, Yuri Boykov, Fatih Porikli, Antonio Plaza, Nasser Kehtarnavaz, and Demetri Terzopoulos

 

  • Fully convolutional networks
  • Convolutional models with graphical models
  • Encoder-decoder based models
  • Multi-scale and pyramid network based models
  • R-CNN based models(for instance segmentation)
  • Dilated convolutional models and DeepLab family
  • Recurrent neural network based models
  • Attention-based models
  • Generative models and adversarial training
  • Convolutional models with active contour models
  • Other models

R-CNN based models(for instance segmentation)

 

 

 

Region 기반의 컨볼루션 네트워크와 확장 버전(Fast R-CNN, Faster R-CNN, Masked R-CNN)등은 객체 탐지 분야에서 성공적으로 입증되었다. 특히, 객체 탐지를 위해 개발된 Faster R-CNN 방법은 RPN(Region Proposal Network)을 사용하여 바운딩 박스 후보를 제안한다. RPN은 관심 영역(ROI)을 추출하고, ROI Pool 계층은 바운딩 박스 좌표와 객체 클래스를 추론한다. R-CNN의 확장 방법중 일부는 인스턴스 분할 문제를 해결하는 데 많이 사용되었으며, 객체 탐지와 semantic 분할을 동시에 수행하는 작업으로 확장되었다.

 

 

  • He et al : 객체 인스턴스 분할을 위한 Mask R-CNN을 제안하였으며, COCO 벤치마크 데이터 셋에 대하여 좋은 성능을 보였다. 이 모델은 이미지안의 객체를 효율적으로 탐지하는 동시에 각 인스턴스에 대한 segmentation mask를 생성한다. Mask R-CNN은 그림 17과 같이 Faster RCNN에 3개의 output branch를 가지고 있다.

    첫번째는 바운딩 박스 상좌 좌표값을 계산하고, 두번째는 연관된 클래스를 계산하며 세번째는 객체를 분할하기 위해 이진마스크를 계산한다. Mask R-CNN 손실함수는 바운딩 박스 상자 좌표, 예측된 클래스와 분할 마스크에 대한 손실 결합하여 공동으로 학습한다. 

    $L = L_{cls} + L_{box} + L_{mask}$

 

  • Liu et al : Path Aggregation Network(PANet)은 Mask R-CNN 및 FPN 모델을 기반으로 한다. (Fig 19.) 네트워크의 특징 추출부분은 하위 계층 특징의 전파를 개선하는 새로 augmented bottom-up 경로가 있는 FPN 아키텍쳐를 사용한다. 

    세번째 단계인 c계층에서는 이전 단계의 특징 맵을 입력으로 받아 3x3 컨볼루션 레이어로 처리한다. 출력은 측면 연결을 사용하여 하향식 경로의 동일한 단계 기능 맵에 추가되며 이러한 특징 맵은 다음 단계에 공급으로 사용한다. Mask R-CNN에서와 같이 Adaptive feature pooling layer의 출력은 3개의 branch로 공급하며, 처음 두 개는 완전 연결 계층을 사용하여 바운딩 박스 좌표 및 관련 객체 클래스의 예측을 생성한다. 세 번째는 FCN으로 Roi를 처리하여 객체 마스크를 예측한다.

  • Dai et al : 각각 인스턴스를 구별, 마스크 추정, 객체를 분류하는 세 개의 네트워크로 구성된 instance aware semantic segmentation 방법을 제안하였다. 이러한 네트워크는 계단식 구조(cascaded)를 형성하며 컨볼루션 특징들을 공유하도록 설계되어있다.

  • Hu et al : 새로운 가중치 전달 함수와 새로운 부분 감독학습의 방법을 제안하였다. 이는 모든 box annotation이 있지만, 일부에만 마스크 annotation이 있는 큰 범주의 데이터에서 instance segmentation 모델을 학습할 수 있도록 한다.

 

  • Chen et al : Faster R-CNN을 기반으로 하는 semantic and direction 특징으로 객체 탐지를 개정하여 인스턴스 분할 모델인 MaskLab를 제안하였다. 이 모델은 Box 탐지, semantic segmentation 및 direction 예측의 세 가지 출력을 생성한다.
    Faster-RCNN 객체 탐지부분을 기반으로 하는 prediction 부분은 객체 인스턴스의 정확한 위치를 제공한다. 각 관심 영역 내에서 Mask Lab는 semantic 정보와 direction prediction 정보를 결합하여, Foreground/Background에 대한 분할을 수행한다.

  • 그 외에도, Tensormask등이 있다. Tensormask는 Dense 8개의 sliding window를 이용하여 intance segmentation을 수행한다. dense instance segmentation을 4D 텐서에 대한 예측 작업으로 수행하고, 4D 텐서에 대해 연산이 가능한 프레임워크를 제시한다. 그들은 텐서 view가 baseline에 비해 큰 이득을 얻고, Mask R-CNN과 유사한 성능을 보이는 결과를 만든다는 것을 보여준다. TensorMask는 dense한 객체 분할에서 좋은 결과를 달성한다.

  • R-FCN, DeepMask, PolarMask, boundary-aware instance segmentation과 CenterMask 등은 mask 제안을 위해 개발되었으며, R-CNN을 기반으로 한다.

Dilated Convolutional Models and DeepLab Family

 

확장된 컨볼루션(a.k.a "atrous")은 컨볼루션 레이어에 또다른 매개 변수인 dilation rate를 적용한다. dilated convolution은 Fig 21과 같으며, 가중치 사이의 간격을 조정할 수 있다. 예를 들어, dilated rate이 2인 3x3 커널은 5x5 커널과 동일한 크기의 receptive field를 가지며, 9개의 매개변수 만 사용하므로 계산비용이 크게 증가하지 않고 receptive field를 확대할 수 있다. dilated covolution은 real-time semantic segmentation 분야에서 인기가 많으며, 최근에도 적용되는 추세이다. 

 

DeepLab Family, multiscale context aggregation, dense upsampling convolution과 hybrid dilated convolution(DUC-HDC), densely connected Atrous Spatial Pyramid Pooling (Dense ASPP), efficient neural network 등이 있다.

 

 

  • DeepLabV1, DeepLabV2는 이미지 세그먼테이션 분야에서 인기있는 방법 중 하나이며, 세가지 주요 특징이있다. 

    첫번째, 확장된 convolution을 사용하여 네트워크에서 감소하는 해상도 문제를 해결하는 것이다.(caused by max-pooling, striding) 

    두번째, Atrous Spatial Pyramid Pooling(ASPP)으로 여러 dilated rates의 필터를 사용하여 들어오는 특징 맵을 컨볼루션 레이어를 이용하여 집계 및 활용한다. 

    세번째, Deep CNN과 확률적 그래픽 모델의 방법을 결합하여 객체 boundary에서의 향상된 성능을 보인다.

    최고의 모델인 DeepLab(using a Resnet 101)은 2012 PASCAL VOC에서 mIOU 79.7%, PASCAL-Context Challenge 45.7%, Cityscapes challenge 70.4%를 달성하였다. 

 

  • Chen et al : DeepLabV3는 cascaded와 parallel한 dilated convolution 모듈의 결합으로 발전하였다. Parallel convolution 모듈들은 ASPP내에서 그룹화되며, 독특한 특징으로 나타난다. 1x1 컨볼루션과 배치 정규화가 더해졌으며 모든 결과들은 연결되고 1x1 컨볼루션 연산에 의해 처리된다.

    또한, DeepLabV3+에서는 encoder-decoder 구조의 특징을 가지며(Fig 23), atrous separable convolution, depthwise convolution, pointwise convolution등이 포함되어 있다. 그들은 DeepLabv3에서의 encoder 네트워크를 사용하고 있으며, Xception 네트워크를 백본으로 사용하여 더 많은 레이어(dilated depthwise separable)를 추가하며 변형하였다.

Recurrent Neural Network Based Models

 

CNN은 컴퓨터 비전 문제에서 빈번하게 사용되었으며, RNN은 Segmentation 추정을 개선하기 위해 픽셀간의 단기/ 장기적으로 모델링하는데 유용하다. RNN을 사용하면, 픽셀을 함께 연결하고 순차적으로 처리하여 전역적 Context 정보를 모델링하고 semantic segmentation을 개선할 수 있다. 하지만, 한 가지 문제점은 이미지는 2D 구조라는 점이다. (RNN은 주로 시퀀스 데이터에 적용되어왔다.)

 

 

  • Visin et al : RNN 기반의 ReSeg모델을 제안하였다. 이 모델은 주로 이미지 분류를 위해 ReNet이라는 방법을 기반으로 한다. 각 ReNet 계층은 이미지를 양방향으로 수평 및 수직으로 진행하고, patch/ activations를 인코딩하고 관련 Global 정보를 제공하는 4개의 RNN으로 구성된다.

    ReSeg 모델을 사용하여 이미지 분할을 수행하기 위해 ReNet 레이어는 일반 Local 특징을 추출하는 사전 학습된 VGG-16 컨볼루션 레이어 위에 쌓인다. ReNet 레이어 다음에는 Up-sampling 레이어가 이어지며, 최종 예측에서 원래 이미지 해상도로 복구된다. GRU(Gated Recurrent Unit)는 메모리 사용량과 계산 능력 사이에 적절한 균형을 제공하기위해 사용된다.

 

  • Liang et al은 연속 데이터 또는 다차원 데이터에서 일반 그래프 구조 데이터로 LSTM을 일반화하는 Graph LSTM 네트워크를 기반으로 하는 Semantic segmentation  모델을 제안했다.

    이미지를 기존 다차원 LSTM 구조(ex 행, 격자 및 대각선 LSTM)의 픽셀 또는 패치로 균등하게 분할하는 대신 임의의 모양의 각 슈퍼 픽셀을 의미 상 일관성있는 노도로 간주하고, 이미지에 대한 무 방향 그래프를 슈퍼 픽셀의 공간적 관계가 자연스럽게 가장자리(Edges)로 사용하여 구성하였다.

    그림 25는 기존의 픽셀단위 RNN 모델과 그래프 LSTM 모델을 시각적으로 비교한 것이다. Graph LSTM 모델을 Semantic Segmentation에 적용한 모델은 그림 26과 같으며, 슈퍼 픽셀 맵에 구축된 LSTM 레이어가 컨볼루션 레이어가 추가되어 시각적 특징(Global context)을 향상시킨다. 컨볼루션 특징들은 1x1 컨볼루션 필터를 통과하여 모든 레이블에 대한 초기 신뢰도(Confidence) 맵을 생성한다. 후속 Graph LSTM 계층에 대한 노트 Update 시퀀스는 초기 신뢰도 맵을 기반으로 하는 방식에 의해 결정되며, graph LSTM 계층은 모든 슈퍼픽셀 노드의 은닉 상태를 순차적으로 업데이트 할 수 있다. 

 

  • Hu et al : 이미지를 인코딩 하는 CNN과 자연어 설명을 인코딩하는 LSTM의 조합을 사용하여 자연어 표현에 기반한 의미론적 분할 알고리즘을 제안하였다. 예를 들어, "오른쪽 벤치에 앉아있는 두 사람"이라는 문구는 오른쪽 벤치에 두 사람만 세분화 해야하고 다른 벤치에 서있거나 앉아 있지 않아야 하기 때문에 사전 정의된 의미론적 클래스 집합에 대한 기존의 방법과는 차이점을 보인다.

    언어 표현을 위한 픽셀 단위 분할을 생성하기 위해 시각 및 언어 정보를 처리하는 방법을 공동으로 학습하는 순환 및 컨볼루션 모델을 제안하였다.(Fig 27) 이 모델은 반복 LSTM 네트워크를 사용하여 참조된 표현을 벡터 표현으로 인코딩하고 FCN을 사용하여 이미지에서 공간 특징 맵을 추출하고 대상 객체에 대한 공간 response 맵을 출력한다. 이 모델에 대한 segmentation 결과는 그림 28과 같다.
  • RNN의 한계는 CNN 모델보다 느리며, 그 이유는 순차 계산은 쉽게 병렬화 될 수 없기 때문이다. 
반응형