Back to Mmdetection

DCN

configs/dcn/README.md

3.3.09.7 KB
Original Source

DCN

Deformable Convolutional Networks

<!-- [ALGORITHM] -->

Abstract

Convolutional neural networks (CNNs) are inherently limited to model geometric transformations due to the fixed geometric structures in its building modules. In this work, we introduce two new modules to enhance the transformation modeling capacity of CNNs, namely, deformable convolution and deformable RoI pooling. Both are based on the idea of augmenting the spatial sampling locations in the modules with additional offsets and learning the offsets from target tasks, without additional supervision. The new modules can readily replace their plain counterparts in existing CNNs and can be easily trained end-to-end by standard back-propagation, giving rise to deformable convolutional networks. Extensive experiments validate the effectiveness of our approach on sophisticated vision tasks of object detection and semantic segmentation.

<div align=center> </div>

Results and Models

BackboneModelStyleConvPoolLr schdMem (GB)Inf time (fps)box APmask APConfigDownload
R-50-FPNFasterpytorchdconv(c3-c5)-1x4.017.841.3configmodel | log
R-50-FPNFasterpytorch-dpool1x5.017.238.9configmodel | log
R-101-FPNFasterpytorchdconv(c3-c5)-1x6.012.542.7configmodel | log
X-101-32x4d-FPNFasterpytorchdconv(c3-c5)-1x7.310.044.5configmodel | log
R-50-FPNMaskpytorchdconv(c3-c5)-1x4.515.441.837.4configmodel | log
R-101-FPNMaskpytorchdconv(c3-c5)-1x6.511.743.538.9configmodel | log
R-50-FPNCascadepytorchdconv(c3-c5)-1x4.514.643.8configmodel | log
R-101-FPNCascadepytorchdconv(c3-c5)-1x6.411.045.0configmodel | log
R-50-FPNCascade Maskpytorchdconv(c3-c5)-1x6.010.044.438.6configmodel | log
R-101-FPNCascade Maskpytorchdconv(c3-c5)-1x8.08.645.839.7configmodel | log
X-101-32x4d-FPNCascade Maskpytorchdconv(c3-c5)-1x9.247.341.1configmodel | log
R-50-FPN (FP16)Maskpytorchdconv(c3-c5)-1x3.041.937.5configmodel | log

Notes:

  • dconv denotes deformable convolution, c3-c5 means adding dconv in resnet stage 3 to 5. dpool denotes deformable roi pooling.
  • The dcn ops are modified from https://github.com/chengdazhi/Deformable-Convolution-V2-PyTorch, which should be more memory efficient and slightly faster.
  • (*) For R-50-FPN (dg=4), dg is short for deformable_group. This model is trained and tested on Amazon EC2 p3dn.24xlarge instance.
  • Memory, Train/Inf time is outdated.

Citation

latex
@inproceedings{dai2017deformable,
  title={Deformable Convolutional Networks},
  author={Dai, Jifeng and Qi, Haozhi and Xiong, Yuwen and Li, Yi and Zhang, Guodong and Hu, Han and Wei, Yichen},
  booktitle={Proceedings of the IEEE international conference on computer vision},
  year={2017}
}