Chenchen Zhu, Yihui He, Marios Savvides
We motivate and present feature selective anchor-free (FSAF) module, a simple and effective building block for single-shot object detectors. It can be plugged into single-shot detectors with feature pyramid structure. The FSAF module addresses two limitations brought up by the conventional anchor-based detection: 1) heuristic-guided feature selection; 2) overlap-based anchor sampling. The general concept of the FSAF module is online feature selection applied to the training of multi-level anchor-free branches. Specifically, an anchor-free branch is attached to each level of the feature pyramid, allowing box encoding and decoding in the anchor-free manner at an arbitrary level. During training, we dynamically assign each instance to the most suitable feature level. At the time of inference, the FSAF module can work jointly with anchor-based branches by outputting predictions in parallel. We instantiate this concept with simple implementations of anchor-free branches and online feature selection strategy. Experimental results on the COCO detection track show that our FSAF module performs better than anchor-based counterparts while being faster. When working jointly with anchor-based branches, the FSAF module robustly improves the baseline RetinaNet by a large margin under various settings, while introducing nearly free inference overhead. And the resulting best model can achieve a state-of-the-art 44.6% mAP, outperforming all existing single-shot detectors on COCO.
| Task | Dataset | Metric | Value | Model |
|---|---|---|---|---|
| Object Detection | COCO test-dev | AP50 | 65.2 | FSAF (ResNeXt-101, multi-scale) |
| Object Detection | COCO test-dev | AP75 | 48.6 | FSAF (ResNeXt-101, multi-scale) |
| Object Detection | COCO test-dev | APL | 54.6 | FSAF (ResNeXt-101, multi-scale) |
| Object Detection | COCO test-dev | APM | 47.1 | FSAF (ResNeXt-101, multi-scale) |
| Object Detection | COCO test-dev | APS | 29.7 | FSAF (ResNeXt-101, multi-scale) |
| Object Detection | COCO test-dev | box mAP | 44.6 | FSAF (ResNeXt-101, multi-scale) |
| Object Detection | COCO test-dev | AP50 | 61.5 | FSAF (ResNet-101, single-scale) |
| Object Detection | COCO test-dev | AP75 | 44 | FSAF (ResNet-101, single-scale) |
| Object Detection | COCO test-dev | APL | 51.3 | FSAF (ResNet-101, single-scale) |
| Object Detection | COCO test-dev | APM | 44.2 | FSAF (ResNet-101, single-scale) |
| Object Detection | COCO test-dev | APS | 24 | FSAF (ResNet-101, single-scale) |
| Object Detection | COCO test-dev | box mAP | 40.9 | FSAF (ResNet-101, single-scale) |
| Object Detection | COCO minival | AP50 | 62.4 | FSAF (ResNeXt-101, anchor-based branches) |
| Object Detection | COCO minival | box AP | 41.6 | FSAF (ResNeXt-101, anchor-based branches) |
| Object Detection | COCO minival | AP50 | 59.2 | FSAF (ResNet-101, anchor-based branches) |
| Object Detection | COCO minival | box AP | 39.3 | FSAF (ResNet-101, anchor-based branches) |
| Object Detection | COCO minival | AP50 | 58 | FSAF (ResNet-101) |
| Object Detection | COCO minival | box AP | 37.9 | FSAF (ResNet-101) |
| Object Detection | COCO minival | AP50 | 55 | FSAF (ResNet-50) |
| Object Detection | COCO minival | AP75 | 37.9 | FSAF (ResNet-50) |
| Object Detection | COCO minival | APL | 48.2 | FSAF (ResNet-50) |
| Object Detection | COCO minival | APM | 39.6 | FSAF (ResNet-50) |
| Object Detection | COCO minival | APS | 19.8 | FSAF (ResNet-50) |
| Object Detection | COCO minival | box AP | 35.9 | FSAF (ResNet-50) |
| 3D | COCO test-dev | AP50 | 65.2 | FSAF (ResNeXt-101, multi-scale) |
| 3D | COCO test-dev | AP75 | 48.6 | FSAF (ResNeXt-101, multi-scale) |
| 3D | COCO test-dev | APL | 54.6 | FSAF (ResNeXt-101, multi-scale) |
| 3D | COCO test-dev | APM | 47.1 | FSAF (ResNeXt-101, multi-scale) |
| 3D | COCO test-dev | APS | 29.7 | FSAF (ResNeXt-101, multi-scale) |
| 3D | COCO test-dev | box mAP | 44.6 | FSAF (ResNeXt-101, multi-scale) |
| 3D | COCO test-dev | AP50 | 61.5 | FSAF (ResNet-101, single-scale) |
| 3D | COCO test-dev | AP75 | 44 | FSAF (ResNet-101, single-scale) |
| 3D | COCO test-dev | APL | 51.3 | FSAF (ResNet-101, single-scale) |
| 3D | COCO test-dev | APM | 44.2 | FSAF (ResNet-101, single-scale) |
| 3D | COCO test-dev | APS | 24 | FSAF (ResNet-101, single-scale) |
| 3D | COCO test-dev | box mAP | 40.9 | FSAF (ResNet-101, single-scale) |
| 3D | COCO minival | AP50 | 62.4 | FSAF (ResNeXt-101, anchor-based branches) |
| 3D | COCO minival | box AP | 41.6 | FSAF (ResNeXt-101, anchor-based branches) |
| 3D | COCO minival | AP50 | 59.2 | FSAF (ResNet-101, anchor-based branches) |
| 3D | COCO minival | box AP | 39.3 | FSAF (ResNet-101, anchor-based branches) |
| 3D | COCO minival | AP50 | 58 | FSAF (ResNet-101) |
| 3D | COCO minival | box AP | 37.9 | FSAF (ResNet-101) |
| 3D | COCO minival | AP50 | 55 | FSAF (ResNet-50) |
| 3D | COCO minival | AP75 | 37.9 | FSAF (ResNet-50) |
| 3D | COCO minival | APL | 48.2 | FSAF (ResNet-50) |
| 3D | COCO minival | APM | 39.6 | FSAF (ResNet-50) |
| 3D | COCO minival | APS | 19.8 | FSAF (ResNet-50) |
| 3D | COCO minival | box AP | 35.9 | FSAF (ResNet-50) |
| 2D Classification | COCO test-dev | AP50 | 65.2 | FSAF (ResNeXt-101, multi-scale) |
| 2D Classification | COCO test-dev | AP75 | 48.6 | FSAF (ResNeXt-101, multi-scale) |
| 2D Classification | COCO test-dev | APL | 54.6 | FSAF (ResNeXt-101, multi-scale) |
| 2D Classification | COCO test-dev | APM | 47.1 | FSAF (ResNeXt-101, multi-scale) |
| 2D Classification | COCO test-dev | APS | 29.7 | FSAF (ResNeXt-101, multi-scale) |
| 2D Classification | COCO test-dev | box mAP | 44.6 | FSAF (ResNeXt-101, multi-scale) |
| 2D Classification | COCO test-dev | AP50 | 61.5 | FSAF (ResNet-101, single-scale) |
| 2D Classification | COCO test-dev | AP75 | 44 | FSAF (ResNet-101, single-scale) |
| 2D Classification | COCO test-dev | APL | 51.3 | FSAF (ResNet-101, single-scale) |
| 2D Classification | COCO test-dev | APM | 44.2 | FSAF (ResNet-101, single-scale) |
| 2D Classification | COCO test-dev | APS | 24 | FSAF (ResNet-101, single-scale) |
| 2D Classification | COCO test-dev | box mAP | 40.9 | FSAF (ResNet-101, single-scale) |
| 2D Classification | COCO minival | AP50 | 62.4 | FSAF (ResNeXt-101, anchor-based branches) |
| 2D Classification | COCO minival | box AP | 41.6 | FSAF (ResNeXt-101, anchor-based branches) |
| 2D Classification | COCO minival | AP50 | 59.2 | FSAF (ResNet-101, anchor-based branches) |
| 2D Classification | COCO minival | box AP | 39.3 | FSAF (ResNet-101, anchor-based branches) |
| 2D Classification | COCO minival | AP50 | 58 | FSAF (ResNet-101) |
| 2D Classification | COCO minival | box AP | 37.9 | FSAF (ResNet-101) |
| 2D Classification | COCO minival | AP50 | 55 | FSAF (ResNet-50) |
| 2D Classification | COCO minival | AP75 | 37.9 | FSAF (ResNet-50) |
| 2D Classification | COCO minival | APL | 48.2 | FSAF (ResNet-50) |
| 2D Classification | COCO minival | APM | 39.6 | FSAF (ResNet-50) |
| 2D Classification | COCO minival | APS | 19.8 | FSAF (ResNet-50) |
| 2D Classification | COCO minival | box AP | 35.9 | FSAF (ResNet-50) |
| 2D Object Detection | COCO test-dev | AP50 | 65.2 | FSAF (ResNeXt-101, multi-scale) |
| 2D Object Detection | COCO test-dev | AP75 | 48.6 | FSAF (ResNeXt-101, multi-scale) |
| 2D Object Detection | COCO test-dev | APL | 54.6 | FSAF (ResNeXt-101, multi-scale) |
| 2D Object Detection | COCO test-dev | APM | 47.1 | FSAF (ResNeXt-101, multi-scale) |
| 2D Object Detection | COCO test-dev | APS | 29.7 | FSAF (ResNeXt-101, multi-scale) |
| 2D Object Detection | COCO test-dev | box mAP | 44.6 | FSAF (ResNeXt-101, multi-scale) |
| 2D Object Detection | COCO test-dev | AP50 | 61.5 | FSAF (ResNet-101, single-scale) |
| 2D Object Detection | COCO test-dev | AP75 | 44 | FSAF (ResNet-101, single-scale) |
| 2D Object Detection | COCO test-dev | APL | 51.3 | FSAF (ResNet-101, single-scale) |
| 2D Object Detection | COCO test-dev | APM | 44.2 | FSAF (ResNet-101, single-scale) |
| 2D Object Detection | COCO test-dev | APS | 24 | FSAF (ResNet-101, single-scale) |
| 2D Object Detection | COCO test-dev | box mAP | 40.9 | FSAF (ResNet-101, single-scale) |
| 2D Object Detection | COCO minival | AP50 | 62.4 | FSAF (ResNeXt-101, anchor-based branches) |
| 2D Object Detection | COCO minival | box AP | 41.6 | FSAF (ResNeXt-101, anchor-based branches) |
| 2D Object Detection | COCO minival | AP50 | 59.2 | FSAF (ResNet-101, anchor-based branches) |
| 2D Object Detection | COCO minival | box AP | 39.3 | FSAF (ResNet-101, anchor-based branches) |
| 2D Object Detection | COCO minival | AP50 | 58 | FSAF (ResNet-101) |
| 2D Object Detection | COCO minival | box AP | 37.9 | FSAF (ResNet-101) |
| 2D Object Detection | COCO minival | AP50 | 55 | FSAF (ResNet-50) |
| 2D Object Detection | COCO minival | AP75 | 37.9 | FSAF (ResNet-50) |
| 2D Object Detection | COCO minival | APL | 48.2 | FSAF (ResNet-50) |
| 2D Object Detection | COCO minival | APM | 39.6 | FSAF (ResNet-50) |
| 2D Object Detection | COCO minival | APS | 19.8 | FSAF (ResNet-50) |
| 2D Object Detection | COCO minival | box AP | 35.9 | FSAF (ResNet-50) |
| 16k | COCO test-dev | AP50 | 65.2 | FSAF (ResNeXt-101, multi-scale) |
| 16k | COCO test-dev | AP75 | 48.6 | FSAF (ResNeXt-101, multi-scale) |
| 16k | COCO test-dev | APL | 54.6 | FSAF (ResNeXt-101, multi-scale) |
| 16k | COCO test-dev | APM | 47.1 | FSAF (ResNeXt-101, multi-scale) |
| 16k | COCO test-dev | APS | 29.7 | FSAF (ResNeXt-101, multi-scale) |
| 16k | COCO test-dev | box mAP | 44.6 | FSAF (ResNeXt-101, multi-scale) |
| 16k | COCO test-dev | AP50 | 61.5 | FSAF (ResNet-101, single-scale) |
| 16k | COCO test-dev | AP75 | 44 | FSAF (ResNet-101, single-scale) |
| 16k | COCO test-dev | APL | 51.3 | FSAF (ResNet-101, single-scale) |
| 16k | COCO test-dev | APM | 44.2 | FSAF (ResNet-101, single-scale) |
| 16k | COCO test-dev | APS | 24 | FSAF (ResNet-101, single-scale) |
| 16k | COCO test-dev | box mAP | 40.9 | FSAF (ResNet-101, single-scale) |
| 16k | COCO minival | AP50 | 62.4 | FSAF (ResNeXt-101, anchor-based branches) |
| 16k | COCO minival | box AP | 41.6 | FSAF (ResNeXt-101, anchor-based branches) |
| 16k | COCO minival | AP50 | 59.2 | FSAF (ResNet-101, anchor-based branches) |
| 16k | COCO minival | box AP | 39.3 | FSAF (ResNet-101, anchor-based branches) |
| 16k | COCO minival | AP50 | 58 | FSAF (ResNet-101) |
| 16k | COCO minival | box AP | 37.9 | FSAF (ResNet-101) |
| 16k | COCO minival | AP50 | 55 | FSAF (ResNet-50) |
| 16k | COCO minival | AP75 | 37.9 | FSAF (ResNet-50) |
| 16k | COCO minival | APL | 48.2 | FSAF (ResNet-50) |
| 16k | COCO minival | APM | 39.6 | FSAF (ResNet-50) |
| 16k | COCO minival | APS | 19.8 | FSAF (ResNet-50) |
| 16k | COCO minival | box AP | 35.9 | FSAF (ResNet-50) |