[Paper Review] You Only Look Once: Unified, Real-Time Object Detection
Source
Contents
0. Abstract
우리는 Object Detection의 새로운 접근 방식인 YOLO를 소개한다. 앞선 Object Detection 연구들은 detection을 수행하기 위해 classifier를 재구성하였다. 대신에 우리는 object detection을 공간적으로 분리된 bbx와 공간과 연관된 class확률에 대한 regression문제로 설계하였다. 하나의 신경망은 bbox를 예측와 class확률을 한번의 evlauation으로 예측한다. 전체의 detection pipeline이 하나의 network이기 때문에, detection 성능은 end-to-end로 직접 최적화될 수 있다.
우리의 통합된 architecture는 매우 빠르다. 우리의 기반인 yolo 모델은 45 fps의 속도로 실시간으로 이미지를 처리한다. 이 network의 더 작은 버전인 Fast YOLO는, 초당 155 frame을 처리할 수 있음에도 불구하고, 다른 real-time detector에 비해 mAP의 성능을 2배 증가시켰다. sota detection system과 비교했을 때, YOLO는 Localization error를 더 만든다. 하지만 배경에 대한 false positive를 덜 예측하는 경향이 있다. (배경으로 예측했지만, 실제로는 물체인 것) 마지막으로, yolo는 물체의 매우 일반적인 representation을 학습힌다. 이것은 natural image에서부터 artwork와 같은 다른 domain으로 generalizing될 때, DPM이나 R-CNN을 포함한 다른 detection 방식을 능가한다.
1. Introduction
Idea
사람들은 image를 보고 즉각적으로 어떤 물체가 이미지의 어디에서 어떻게 상호작용하고 있는지 알 수 있다. 사람의 시각적 system은 빠르고 정확하다. 이는 우리가 의식하지 않고 운전을 하는 것 같은 복잡한 task를 수행하는것을 도와준다. 빠르고 정확한 object detection 알고리즘은 컴퓨터가 특화된 sensor없이 자동차를 운전하는 것을 도와준다. 또한 real-time scene information을 사람에게 전달하기 위한 보조 장치를 가능하게 하고, general pupose, reponsive robotics system을 위한 잠재력을 깨울 수 있다.
Previous Work
현재의 detection system은 classifier를 detection을 실행하는 것에 맞게 재구성하였다. test image에서 object를 찾기 위해, 이 system들은 해당 object에 대한 classifier를 가져와서, 다양한 location과 scale에서 평가한다. DPM과 같은 System은 전체 image에서 sliding window 방식을 사용하고 이 classifier는 이미지의 모든 공간에 대해 균일하게 동작한다.
R-CNN과 같은 더 최근의 방식은 Region Proposal 방식을 사용해 image내에서 bbox 후보를 먼저 생성한다. 그리고 classifier를 실행해 bbox를 제안한다. classification이후에, post-procesing은 중복된 결과를 제거하거나, bbox의 점수를 환산하는 등의 bbox를 정제하는 방식으로 동작하였다. 이러한 복잡한 pipeline들은 각각의 요소들이 독립적으로 학습되어야하기 때문에, optimize하기 어렵고 느리다.
Approach
우리는 object detection을 image pixel로부터 직접적으로 bbox좌표와 class확률을 계산하는 단일의 regression problem으로 치환하였다. 우리의 system을 사용하면, 너는 image를 한번만 보고도 image에서 어떤 물체가 있고 어디에 있는지 알 수 있다.
위 그림을 보면 YOLO는 새롭고 간단하다. 하나의 convolutional network는 동시에 여러 bbox를 예측하고, 해당 box에 대한 확률값을 예측한다. YOLO는 전체 이미지로부터 학습되고 Detection성능을 직접 최적화한다. 이 통합된 모델은 object detection에 대한 전통적인 방식을 넘어서는 몇가지 이득이 있다.
Benefit
Yolo는 매우 빠르다.
우리는 detection을 regression problem으로 구성하였기 때문에, 복잡한 pipeline을 구성할 필요가 없다. 우리는 간단하게 detection을 예측하기 위해 새로운 이미지를 우리의 신경망에 넣으면 된다. 우리의 base network는 batch없이 45 fps로 실행되고 우리의 fast version은 150 fps보다 빠르게 실행된다. 이것은 우리가 video를 25ms의 latency이하로, 실시간으로 처리할 수 있다는 것을 의미한다. 게다가 YOLO는 다른 real-time system의 mAP보다 2배 이상의 성능을 달성하였다.YOLO는 예측을 할때, 이미지에 대한 전역적 이유를 제시한다.
sliding window 방식과 region-proposal 기반의 기법들과 달리 YOLO는 train, test기간 동안 전체 이미지를 보기 때문에 class에 대한 문맥적 정보를 암묵적으로 압축한다. Fast R-CNN은 전체적인 문맥을 볼 수 없기 때문에, 이미지에서 background patch를 잘 파악하지 못한다. YOLO는 Fast R-CNN과 비교하여 background error를 절반으로 줄였다.YOLO는 물체에서 일반화 가능한 Representation을 학습한다.
natural image에서 학습하고, artwork에 대해 test할 때, YOLO는 DPM이나 R-CNN을 매우 능가한다. YOLO는 매우 일반화 가능하기 때문에, 새로운 domain이나, 예상치 못한 입력에도 쉽게 고장나지 않는다.
YOLO는 State-of-art detection system에 대해 정확도 측면에서 여전히 낮은 성능을 갖는다. YOLO는 빠르게 image에서 Object를 식별할 수 있지만, 특히 작은 물체에 대해서는 정확하게 object를 localize하는데 어려움을 겪고있다. 우리는 이러한 tradeoff에 대해 우리의 실험에서 평가한다.