Home

Awesome

Cascade RPN

We provide the code for reproducing experiment results of Cascade RPN

@inproceedings{vu2019cascade,
  title={Cascade RPN: Delving into High-Quality Region Proposal Network with Adaptive Convolution},
  author={Vu, Thang and Jang, Hyunjun and Pham, Trung X and Yoo, Chang D},
  booktitle={Conference on Neural Information Processing Systems (NeurIPS)},
  year={2019}
}

@article{mmdetection,
  title   = {{MMDetection}: Open MMLab Detection Toolbox and Benchmark},
  author  = {Chen, Kai and Wang, Jiaqi and Pang, Jiangmiao and Cao, Yuhang and
             Xiong, Yu and Li, Xiaoxiao and Sun, Shuyang and Feng, Wansen and
             Liu, Ziwei and Xu, Jiarui and Zhang, Zheng and Cheng, Dazhi and
             Zhu, Chenchen and Cheng, Tianheng and Zhao, Qijie and Li, Buyu and
             Lu, Xin and Zhu, Rui and Wu, Yue and Dai, Jifeng and Wang, Jingdong
             and Shi, Jianping and Ouyang, Wanli and Loy, Chen Change and Lin, Dahua},
  journal = {arXiv preprint arXiv:1906.07155},
  year    = {2019}
}

Benchmark

Region proposal performance

MethodBackboneStyleMem (GB)Train time (s/iter)Inf time (fps)AR 1000Download
RPNR-50-FPNcaffe---58.3model
CRPNR-50-FPNcaffe---71.7model

Detection performance

MethodProposalBackboneStyleScheduleMem (GB)Train time (s/iter)Inf time (fps)box APDownload
Fast R-CNNRPNR-50-FPNcaffe1x3.50.25016.536.9-
Fast R-CNNCascade RPNR-50-FPNcaffe1x3.50.25016.540.0model
Faster R-CNNRPNR-50-FPNcaffe1x3.80.35313.637.0-
Faster R-CNNCascade RPNR-50-FPNcaffe1x4.60.56111.140.5model
Cascade R-CNNRPNR-50-FPNpytorch1x4.10.45511.940.8-
Cascade R-CNNCascade RPNR-50-FPNpytorch1x5.20.6509.641.6model

Setup

Please follow official installation and getting_started guides.

Testing

./tools/dist_test.sh ${CONFIG_FILE} ${CHECKPOINT_FILE} ${GPU_NUM} [--out ${RESULT_FILE}] [--eval ${EVAL_METRICS}]

Note:

Example of cascade rpn eval on 8 gpus:

./tools/dish_test.sh configs/cascade_rpn/cascade_rpn_r50_fpn_1x.py \
    checkpoint/cascade_rpn_r50_fpn_1x_20191008-d3e01c91.pth 8 --out \
    results/results.pkl --eval proposal_fast

Training

./tools/dist_train.sh ${CONFIG_FILE} ${GPU_NUM} [--validate] [other_optional_args]

Note: We train Cascade RPN and accompanied detectors with 8 GPUs and 2 img/GPU. If your configuration is different, please follow the Linear Scaling Rule.

TODO