paper
: Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networksauthors
: Shaoqing Ren, Kaiming He, Ross Girshick, Jian Sunsubmission
: Ren, Shaoqing, et al. "Faster r-cnn: Towards real-time object detection with region proposal networks." Advances in neural information processing systems 28 (2015).Faster R-CNN
Algorithm
단점 :
Algorithm
:이 논문에서,
우리는 deep convolutional neural network를 사용하여
proposals 제안을 computing하는 algorithmic change가
detection network's computation을 고려할 때,
proposal 계산 비용이 거의 들지 않는 solution으로 이어진다는 것을 보여줄 것이다.
이를 위해, state-of-the-art object detection networks과 conv layer를 공유하는
새로운 Region Proposal Networks(RPNs)
을 소개할 것이다.
test-time에 convolutions을 공유함으로써, proposal을 computing하는 데 드는 추가 비용이 적다.
우리가 관찰한 결과,
Fast R-CNN과 같은 region-based detectors에 의해 사용되는
convolutional feature maps을
region proposal을 생성하는 데에 사용할 수 있다.
이러한 convolutional features에,
우리는 각 location에서 regular grid와 object score를 동시에 regression하는
몇 개의 conv layer를 추가하여 RPN을 만들었다.
RPNs은 다양한 scale과 aspect ratios를 가진 region proposal을
효율적으로 예측하기 위해 설계되었다.
이전의 method(Figure a., Figure b.)와는 달리,
여러 scale과 aspect ratio에서 references로 작동하는 새로운 anchor
boxes를 도입했다.
RPN과 Fast R-CNN object detection networks를 통합시키기 위해,
우리는 region proposal에 대한 fine-tuning과 object detection에 대한 fine-tuning 간을
왔다갔다하며 region proposal을 고정시키는 training scheme을 제안한다.
이 scheme는 빠르게 수렴하며 두 작업 간에 공유되는 convolutional features을 가진 unified network를 생성함.
R-CNN method는 object category 또는 background을 classification하는 CNNs을 train시킨다.
R-CNN은 주로 classifier로써 역할을 하고,
object bounds를 예측하지는 않는다.(bbox regression에 의해 refining하는 것을 제외하고)
그래서 R-CNN의 accuracy는 region proposal module의 performance에 의존한다.
몇가지 paper에서는 object bounding box를 predicting하는 방법을 제안함.
우리의 방법과 관련하여 나중에 OverFeat와 MultiBox를 더 깊에 discussion할 것임.
Shared computation of convolutions은 효율적이면서도 정확한 visual recognition을 위해
점점 더 많은 관심을 받고 있다.
OverFeat paper은 classification, localization, and detection을 위한
image pyramid로부터 convolutional features를 계산한다.
Adaptively-sized pooling(SPP)는 효율적인 region-based object detection 및 semantic segmentation을 위해 개발되었다.
Fast R-CNN은 공유된 convolutional features에서의 end-to-end detector training을 가능하게 하며, 좋은 accuracy와 speed를 보여준다.
Faster R-CNN
이라고 불리는 우리의 object detection system은RPN은 어떠한 size의 image든 input으로 받고,
set of rectangualr object proposal, each with objectness score을 output으로 내보낸다.
(objectness score : object class에 대한 소속성을 평가하는 것으로,
해당 object가 background인지, a set of object classes인지 측정)
우리의 최종 목표는 Fast R-CNN object detection network와 computation을 공유하는 것이므로,
RPN을 CNN으로 modeling하여 두 network가 a common set of convolutional layers를 공유한다고 가정한다.
experiments에서,
우리는 5개의 shareable conv layers를 가진 the Zeiler and Fergus(ZF) model과
13 shareable conv layers를 가진 VGG-16 model을 조사했다.
region proposal을 생성하기 위해,
우리는 last shared conv layer에 의해 출력된 conv feature map을 기준으로
a small network를 sliding한다.
이 small network는 input으로 spatial window를 받는다.
each sliding window는 lower-dimensional feature로 mapping된다.
이 feature는 두 fc layer로 입력된다.
(1. a box-regression layer(reg), 2. a box-classification layer(cls)).
이 논문에서, 을 사용함.
mini-network가 sliding-window 방식으로 작동하기 때문에
fc layers는 모든 spatial locations에 대해 공유되어진다. (?)
이 architecture는 자연스럽게 conv layer 다음에
두 개의 conv layer(reg, cls)가 이어지는 것으로 구현된다.
각 sliding-window location에서,
동시에 여러 개의 region proposals을 예측하며,
각 location마다 가능한 최대의 proposal 수를 로 denote.
그래서 layer는 개 boxes의 coordinates를 encoding하는 output을 가지고,
layer는 각 proposal에 대한 object 또는 not object의 probability를 추정하는 scores를 출력.
개의 proposal은 개의 reference boxes,
즉 anchors에 대해 parameterized된다.
anchor는 해당 sliding window를 중심으로 하며,
scale and aspect ratio와 관련이 있다.
기본적으로 우리는 3개의 scale과 3개의 aspect ratio를 사용하여,
각 sliding position에서 개의 anchor를 생성한다.
크기가 인 conv feature map의 경우,
총 개의 anchor가 있음.
(나의 세미나 자료..)