SSD (Single Shot MultiBox Detector) abandons the two-stage proposal-then-classify pattern entirely โ predicting object classes and box locations directly, in a single network pass, trading some accuracy for substantially faster inference.
The Problem It Solved
Faster R-CNN's two-stage pipeline, even fully end-to-end trainable, still runs a separate classification/refinement step for every proposed region โ inherently limiting inference speed. SSD asked: can detection be done in a genuinely single pass, with no separate proposal stage at all?
Key Innovation: Multi-Scale Feature Maps
Rather than relying on a proposal network to suggest regions at various scales, SSD predicts boxes and classes directly from several different feature map layers within the CNN, at different depths โ earlier, higher-resolution layers naturally suit detecting small objects, while later, lower-resolution (but more semantically abstract) layers suit detecting large objects. This gives SSD a natural, built-in way to handle objects of varying sizes without a separate proposal mechanism.
Diagram
SSD predicts detections directly from multiple feature map layers, each naturally suited to a different range of object sizes.
Advantages and Limitations
| Advantages | Limitations |
|---|---|
| Genuinely single-pass โ significantly faster inference than two-stage detectors | Historically somewhat less accurate than two-stage detectors, especially on small objects |
| Naturally handles multi-scale objects via multiple feature map layers | Requires careful anchor box design across all the scales used |
Use Cases
Well-suited to applications prioritizing speed โ real-time video analysis, robotics, and other latency-sensitive deployment scenarios where the accuracy tradeoff against two-stage detectors is acceptable.
Common Mistakes
- Assuming single-shot detectors are strictly worse than two-stage ones in every respect โ the accuracy gap has narrowed significantly with modern one-stage architectures, and the speed advantage is often decisive for real-time applications regardless.
Interview Relevance
Q: "How does SSD achieve single-pass detection without a separate region proposal stage?" It predicts object classes and bounding box adjustments directly from multiple feature map layers at different depths within the CNN simultaneously โ earlier, higher-resolution layers naturally handle smaller objects, and later, more abstract layers handle larger ones โ giving built-in multi-scale detection without needing a separate learned or hand-engineered proposal mechanism.
Practice Question
Why might an earlier, higher-resolution feature map layer be better suited to detecting small objects than a later, more downsampled layer?