Modern object detection networks rely on region proposal algorithms to hypothesize object locations. 
Techniques such as SPPnet and Fast R-CNN have significantly reduced the runtime of these networks, 
revealing the region proposal computation as a performance bottleneck. In this paper, we present a 
Region Proposal Network (RPN) that shares full-image convolutional features with the detection network, 
allowing for nearly free region proposals. An RPN is a fully convolutional network that simultaneously 
predicts both object bounds and objectness scores for each position. RPNs are trained in an end-to-end 
manner to produce high-quality region proposals, which are then used by Fast R-CNN for object detection. 
By using a simple alternating optimization process, RPN and Fast R-CNN can be jointly trained to share 
convolutional features. For the deep VGG-16 model, our detection system achieves a frame rate of 
5fps (including all processing steps) on a GPU, while delivering state-of-the-art object detection 
performance on PASCAL VOC 2007 (73.2% mAP) and 2012 (70.4% mAP) using 300 proposals per image. 
The code is available at https://github.com/ShaoqingRen/faster_rcnn.