Key Innovation: Region Proposal Network (RPN) - neural network for proposals.
1
Shared Convolutional Layers
Backbone network processes entire image
↓
🔥 Region Proposal Network (RPN)
2a
Anchor Boxes
9 anchors per position (3 scales × 3 ratios)
2b
RPN Outputs
Objectness scores + bbox refinements
↓
3
Detection Network
RoI pooling + final classification & bbox refinement
✅ Achievements:
• End-to-end training
• ~5 FPS - near real-time!
• 10× faster than Fast R-CNN
• RPN proposals are FREE (share CNN features)
Performance Comparison
R-CNN
Speed: 47 seconds/image
Proposals: Selective Search (CPU)
Training: Multi-stage
Feature Extraction: 2000× per image
mAP: ~66% (VOC 2007)
Fast R-CNN
Speed: 2 seconds/image
Proposals: Selective Search (CPU)
Training: Single-stage
Feature Extraction: 1× per image
mAP: ~70% (VOC 2007)
Faster R-CNN
Speed: 0.2 seconds/image (5 FPS)
Proposals: RPN (GPU)
Training: End-to-end
Feature Extraction: Shared
mAP: ~73% (VOC 2007)
Speed Comparison Visualization
Key Architectural Differences
Component
R-CNN
Fast R-CNN
Faster R-CNN
Region Proposals
Selective Search
Selective Search
RPN (learned)
CNN Passes
~2000 per image
1 per image
1 per image
Feature Sharing
None
Detection only
RPN + Detection
Classification
SVM
Softmax
Softmax
Training
Multi-stage
Single-stage
End-to-end
Speed (FPS)
0.02
0.5
5
Evolution Timeline
📚 Key Takeaways:
• R-CNN: Pioneered CNN-based object detection but was slow
• Fast R-CNN: Shared CNN computation via RoI pooling, 25× speedup
• Faster R-CNN: Replaced Selective Search with RPN, achieving near real-time performance
• Each iteration maintained or improved accuracy while dramatically reducing inference time