Notice
Recent Posts
Recent Comments
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

Hello Potato World

[포테이토 논문 리뷰] Cascade Eff-B7 NAS-FPN : Simple Copy-Paste is a Strong Data Augmentation Method for Instance Segmentation 본문

Paper Review🥔/Data Augmentation

[포테이토 논문 리뷰] Cascade Eff-B7 NAS-FPN : Simple Copy-Paste is a Strong Data Augmentation Method for Instance Segmentation

Heosuab 2021. 3. 17. 04:51

 

⋆ 。 ˚ ☁︎ ˚ 。 ⋆ 。 ˚ ☽ ˚ 。 ⋆ 

[Data Augmentation paper review]

 

현재(2021/03/12 기준) COCO test-dev, COCO minival, PASCAL VOC 2007 등의 벤치마크에서 Best Method를 자리잡고 있는 논문. 기존 연구 방향에서 조금 벗어난 augmentation 방식을 사용해서 Instance Segmentation과 Object Detection의 성능을 끌어올렸다.

 

 

 


Simple Copy-Paste


 다른 비전 분야와 마찬가지로 Instance Segmentation 분야에서도 정확도를 높이고 안정성을 키우기 위해 Data Augmentation이 계속해서 연구되고 있다. Segmentation에서는 객체의 위치를 나타내는 annotation 정보가 픽셀 단위로 저장되어 있기 때문에 object의 위치가 바뀌는 변환이 적용되면 annotation도 함께 변환을 해줘야한다. 

이 Segmentation에서 연구되는 Augmentation 방식 중 하나가 "Copy-Paste"이다.

 Copy-Paste Augmentation은 말 그대로 특정 객체의 위치 정보를 통해 잘라내거나 복사하고, 다른 이미지 위에 붙여넣는 방법이다. 이때 어떻게 붙여넣냐에 따라서도 결과가 천차만별 달라질 수 있기 때문에 다양한 연구들이 나왔는데, 고려해야 할 요소는 아래의 3가지가 있다.

  • Instance들을 복사해올 여러 source image들과 복사해온 instance를 붙여넣을 한 장의 target image를 선택하는 방법
  • 선택한 source image들 내에서 복사할 Instance들을 선택하는 방법
  • 선택한 target image 안에서 Instance들을 붙여넣을 위치를 선택하는 방법

 이 중에서도 특히 3번째 요소에 대한 선택이 조금 까다로운데, 기존의 여러 Copy-Paste 방식을 보면 Instance를 붙여넣을 이미지의 시각적 context를 고려하여 최대한 자연스러운 이미지가 완성되도록 하는 연구가 이루어졌었다. 하지만 이 논문에서는 이러한 고려들을 전부 배제하고 Random으로 선택하고 붙여넣는 방식을 선택했는데, 아이러니하게도 더 좋은 성능을 보였다고 한다. 하지만 이것을 위한 조건으로 다른 여러 setting들을 고정시켜서 강력한 baseline을 만들었는데, 고정요소들로는 backbone architecture, extent of scale jittering, training schedule, image size 등이 있다. 대표적인 setting들과 추가적인 실험들을 살펴보자.

 


Baselines across Multiple Settings


  • Backbone Architecture

 EfficientNet-B7 backbone과 NAS-FPN architecture를 사용해서 COCO test-dev 데이터셋에 대해서 57.3 Box AP, 49.1 Mask AP의 성능을 달성했다.

 

  • Large Scale Jittering

 Scale Jittering Augmentation이란, 다양한 크기의 이미지 데이터들을 동일한 크기로 맞춰서 input size를 단일화시키기 위해서 이미지의 크기를 조정하거나 잘라내는 방법이다. 아래 그림을 보면 가로의 길이가 더 큰 이미지를 정사각형 사이즈로 맞추기 위해서, 이미지의 크기를 키우고 정사각형 일부를 잘라내거나 이미지의 크기를 줄이고 여백을 단색(이 논문에서는 회색)으로 채워넣은 것을 볼 수 있다. 이 때 2가지의 Scale Jittering 방법으로 나뉠 수 있는데, Standard Scale Jittering(SSJ)는 이미지를 원본 사이즈의 0.8~1.25배 이내에서만 크기를 조정하여 맞추고, Large Scale Jittering(LSJ)는 이미지를 훨씬 더 큰 범위인 0.1~2.0배 이내에서 크기를 조정한다. LSJ의 그림을 보면 훨씬 더 다양한 크기의 이미지로 조정된 걸 볼 수 있고, 논문에서는 좌우반전 변환도 함께 사용하였다.

  SSJ를 다른 말로는 Standard Augmentation, LSJ를 Strong Augmentation이라고 할 수 있다. 기존의 다른 Copy-Paste 연구들에서는 항상 Standard Augmentation을 사용했지만 여기서는 Strong Augmentation을 사용했고, 앞서 소개했던 Copy-Paste Augmentation과 함께 사용했을 때 일부 조건에서 2배 가까운 성능향상까지도 보였다.

 

  • Image Size

LSJ를 사용하여 크기를 640*640, 1024*1024, 1280*1280으로 맞춰주고 학습시켰다.

 

  • Self Training

 Self Training이란 준지도학습의 한 방식으로, labeled data들을 통해 model을 먼저 학습시키고, 이 학습된 모델로 unlabeled data의 정답값을 예측(pseudo-labeled)한 후에 두 데이터셋을 최종적으로 합쳐서 모델을 다시 학습시키는 방식이다. 

 이 논문에서는 이 self training을 Copy-paste augmentation과 접목해서 사용하는 법을 소개하고 있다.

  1. 처음 labeled image data로 모델을 학습하고
  2. 추가적인 unlabeled image data에 대한 pseudo label를 예측하고
  3. 실제 그 label을 가지는 instance들(ground-truth)을 데이터셋들에 붙여넣은 후에 전체 데이터에 대해 모델을 다시 학습시킨다.

 

  • Blending Pasted Objects

 Instance를 랜덤으로 붙여넣긴 하지만 이미지 배경과 instance 사이의 이질감을 줄이기 위해 경계부분을 부드럽게 만들어준다. binary mask(수식에서 알파)를 계산하고 이 값에 가우시안 필터를 적용하여 블렌딩 시켜준다. 이 때 I1은 붙여넣은 instance의 이미지이고 I2는 target image의 값이다. 블렌딩을 통해 조금 더 자연스럽게 합쳐지긴 하지만 성능 면에서 큰 차이는 없었다고 한다. 

 

 

  • Object Detection

 기본 연구는 Instance Segmentation을 위해 진행되었지만, Instance를 복사하면서 해당 객체의 bounding box 정보도 함께 복사하여 전달하는 방법을 사용하여 Object Detection에서도 큰 성능 향상을 이루었다.

 


Conclusion


 단순하게 Random으로 선택하고 붙여넣는 방식이지만 계속해서 매우 효과적이고 견고한 method라고 강조하고 있다. COCO와 LVIS benchmark 등에서 상당한 성능 향상을 보여줬고 학습에 추가적인 cost가 들어가거나 inference time이 늘어나지도 않았다. 기존의 연구 방향에서 벗어나서 오히려 단순하게 돌아간 생각이 생각보다 좋은 결과를 보여주고 있어서 신기하게 읽었던 논문이였다.

 


Reference


 

[1] Ghiasi et al, "Simple Copy-Paste is a Strong Data Augmentation Method for Instance Segmentation", 2020

[2] Nikita et al, "On the Importance of Visual Context for Data Augmentation is Scene Understanding, 2018

[3] Hao Wang et al, "Data Augmentation for Object Detection via Progressive and Selective Instance-Switching", 2019

[4] "COCO Dataset - 코코 데이터셋" 

 

 

 

 

 

 

 

감자같은 학부생 혼자 읽고 기록하려고 남기는 리뷰입니다 수정할 부분은 알려주세요🥔

 

Comments