SSD: Single Shot MultiBox Detector (1512.02325)

1 minute read

Abstract

예측시에는

Introduction

현재 Object Detection은 다음과 같은 과정을 따른다. 바운딩 박스 영역을 예측하고 해당 영역을 다시 샘플링 한다음에 classifier에 적용시킨다. 이러한 방식이 PASCAL VOC나 COCO와 같은 detection에서 높은 점수를 얻어냈다. 그러나 이러한 방식은 너무 오랜 시간이 걸려 실시간 어플리케이션에 적용은 어려웠다.
이러한 이유때문에 Detection speed를 높이기 위한 시도가 있었는데 Faster-RCNN의 경우 7fps의 속도를 내기도 하였다. 예측 속도를 높이기 위해 위의 디텍션 파이프라인에서 각 단계에서 속도를 증진시키기 위한 시도가 많았다. 하지만 이러한 시도들은 속도가 높아질수록 정확도가 낮아지는 결과만을 생성하였다.
이 논문에서느 바운딩 박스의 영역을 resample하지 않으며 정확도 또한 높은 네트워크를 제시한다. 결과에서 매우 빠른 속도와 높은 정확도를 보여주는데 속도에서의 증진은 바운딩 박스 영역을 제안하는 부분을 제거함으로써 이루어진다. 이러한 시도는 이전에도 있었으나 이 논문에서는 높은 정확도를 얻는 데 성공하였다.
다양한 비율의 convolutional filter를 사용하여 물체의 종류와 예측값을 얻어낸다. 그리고 마지막 스테이지에서 이 filter들을 여러 feature maps에 적용하여 다양한 크기를 탐지해낸다. 요약하자면 다음과 같다.

  • SSD는 기존의 detector들보다 빠르며 느린 모델들만큼 정확하다.
  • SSD의 핵심은 카테고리 점수와 박스 위치 좌표를 예측하는데 고정된 바운딩 박스들을 이용한다.
  • 높은 정확도를 얻기 위해 여러 feature map에서 서로 다른 스케일을 예측 가능하게 하였다.
  • 이러한 특징은 저해상도에서도 높은 정확도를 얻게 해주었고 speed와 accuracy 모두 좋은 성능을 내게 하였다.

The Single Shot Detector (SSD)

Model

SSD는 고정되 사이즈의 바운딩박스와 점수를 찾아내는 feed-forward convolutional network를 기반으로한다. 초반 layer들은 이미지 클래시피케이션에서 쓰인 아키텍쳐를 기반으로 한다. 이후 보조적인 레이어들을 네트워크에 넣었다.

  • Multi-scale feature maps for detection
    기본 네트워크 뒤에 convolutional feature layer를 추가한다. 이 레이어들은 갈수록 크기가 줄어들어 여러 크기의 detection이 가능하도록 한다. Convolution model은 각 레이어마다 다르다.
  • Convolutional predictors for detectioin
    각각의 추가된 feature layer들은 convolutional filter들을 이용하여 예측 결과들을 만들어낼 ㅜㅅ 있다.
  • Default boxes and aspect ratios

Training

  • Matching Strategy

  • training Objective

  • Choosing scales and aspect ratios for default boxes

  • Hard negative mining

  • Data augmentation

Conclusions

Leave a comment