Back to Mmdetection

Faster R-CNN

configs/faster_rcnn/README.md

3.3.022.6 KB
Original Source

Faster R-CNN

Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks

<!-- [ALGORITHM] -->

Abstract

State-of-the-art object detection networks depend on region proposal algorithms to hypothesize object locations. Advances like SPPnet and Fast R-CNN have reduced the running time of these detection networks, exposing region proposal computation as a bottleneck. In this work, we introduce a Region Proposal Network (RPN) that shares full-image convolutional features with the detection network, thus enabling nearly cost-free region proposals. An RPN is a fully convolutional network that simultaneously predicts object bounds and objectness scores at each position. The RPN is trained end-to-end to generate high-quality region proposals, which are used by Fast R-CNN for detection. We further merge RPN and Fast R-CNN into a single network by sharing their convolutional features---using the recently popular terminology of neural networks with 'attention' mechanisms, the RPN component tells the unified network where to look. For the very deep VGG-16 model, our detection system has a frame rate of 5fps (including all steps) on a GPU, while achieving state-of-the-art object detection accuracy on PASCAL VOC 2007, 2012, and MS COCO datasets with only 300 proposals per image. In ILSVRC and COCO 2015 competitions, Faster R-CNN and RPN are the foundations of the 1st-place winning entries in several tracks.

<div align=center> </div>

Results and Models

BackboneStyleLr schdMem (GB)Inf time (fps)box APConfigDownload
R-50-C4caffe1x--35.6configmodel | log
R-50-DC5caffe1x--37.2configmodel | log
R-50-FPNcaffe1x3.837.8configmodel | log
R-50-FPNpytorch1x4.021.437.4configmodel | log
R-50-FPN (FP16)pytorch1x3.428.837.5configmodel | log
R-50-FPNpytorch2x--38.4configmodel | log
R-101-FPNcaffe1x5.739.8configmodel | log
R-101-FPNpytorch1x6.015.639.4configmodel | log
R-101-FPNpytorch2x--39.8configmodel | log
X-101-32x4d-FPNpytorch1x7.213.841.2configmodel | log
X-101-32x4d-FPNpytorch2x--41.2configmodel | log
X-101-64x4d-FPNpytorch1x10.39.442.1configmodel | log
X-101-64x4d-FPNpytorch2x--41.6configmodel | log

Different regression loss

We trained with R-50-FPN pytorch style backbone for 1x schedule.

BackboneLoss typeMem (GB)Inf time (fps)box APConfigDownload
R-50-FPNL1Loss4.021.437.4configmodel | log
R-50-FPNIoULoss37.9configmodel | log
R-50-FPNGIoULoss37.6configmodel | log
R-50-FPNBoundedIoULoss37.4configmodel | log

Pre-trained Models

We also train some models with longer schedules and multi-scale training. The users could finetune them for downstream tasks.

BackboneStyleLr schdMem (GB)Inf time (fps)box APConfigDownload
R-50-C4caffe1x-35.9configmodel | log
R-50-DC5caffe1x-37.4configmodel | log
R-50-DC5caffe3x-38.7configmodel | log
R-50-FPNcaffe2x3.739.7configmodel | log
R-50-FPNcaffe3x3.739.9configmodel | log
R-50-FPNpytorch3x3.940.3configmodel | log
R-101-FPNcaffe3x5.642.0configmodel | log
R-101-FPNpytorch3x5.841.8configmodel | log
X-101-32x4d-FPNpytorch3x7.042.5configmodel | log
X-101-32x8d-FPNpytorch3x10.142.4configmodel | log
X-101-64x4d-FPNpytorch3x10.043.1configmodel | log

We further finetune some pre-trained models on the COCO subsets, which only contain only a few of the 80 categories.

BackboneStyleClass namePre-traind modelMem (GB)box APConfigDownload
R-50-FPNcaffepersonR-50-FPN-Caffe-3x3.755.8configmodel | log
R-50-FPNcaffeperson-bicycle-carR-50-FPN-Caffe-3x3.744.1configmodel | log

Torchvision New Receipe (TNR)

Torchvision released its high-precision ResNet models. The training details can be found on the Pytorch website. Here, we have done grid searches on learning rate and weight decay and found the optimal hyper-parameter on the detection task.

BackboneStyleLr schdMem (GB)Inf time (fps)box APConfigDownload
R-50-TNRpytorch1x-40.2configmodel | log

Citation

latex
@article{Ren_2017,
   title={Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks},
   journal={IEEE Transactions on Pattern Analysis and Machine Intelligence},
   publisher={Institute of Electrical and Electronics Engineers (IEEE)},
   author={Ren, Shaoqing and He, Kaiming and Girshick, Ross and Sun, Jian},
   year={2017},
   month={Jun},
}