This project provides an implementation for "BorderDet: Border Feature for Dense Object Detection" (ECCV2020 Oral) on PyTorch.
For the reason that experiments in the paper were conducted using internal framework, this project reimplements them on cvpods and reports detailed comparisons below.
- install cvpods locally (requires cuda to compile)
python3 -m pip install 'git+https://github.com/Megvii-BaseDetection/cvpods.git'
# (add --user if you don't have permission)
# Or, to install it from a local clone:
git clone https://github.com/Megvii-BaseDetection/cvpods.git
python3 -m pip install -e cvpods
# Or,
pip install -r requirements.txt
python3 setup.py build develop
- prepare datasets
cd /path/to/cvpods
cd datasets
ln -s /path/to/your/coco/dataset coco
- Train & Test
git clone https://github.com/Megvii-BaseDetection/BorderDet.git
cd BorderDet/playground/detection/coco/borderdet/borderdet.res50.fpn.coco.800size.1x # for example
pods_train --num-gpus 8
pods_test --num-gpus 8 \
MODEL.WEIGHTS /path/to/your/save_dir/ckpt.pth # optional
OUTPUT_DIR /path/to/your/save_dir # optional
pods_train --num-gpus 8 --num-machines N --machine-rank 0/1/.../N-1 --dist-url "tcp://MASTER_IP:port"
For your convenience, we provide the performance of the following trained models. All models are trained with 16 images in a mini-batch and frozen batch normalization. All model including X_101/DCN_X_101 will be released soon.
Model | Multi-scale training | Multi-scale testing | Testing time / im | AP (minival) | Link |
---|---|---|---|---|---|
FCOS_R_50_FPN_1x | No | No | 54ms | 38.7 | download |
BD_R_50_FPN_1x | No | No | 60ms | 41.4 | download |
BD_R_101_FPN_1x | Yes | No | 76ms | 45.0 | download |
BD_X_101_32x8d_FPN_1x | Yes | No | 124ms | 45.6 | download |
BD_X_101_64x4d_FPN_1x | Yes | No | 123ms | 46.2 | download |
BD_DCNV2_X_101_32x8d_FPN_1x | Yes | No | 150ms | 47.9 | download |
BD_DCNV2_X_101_64x4d_FPN_1x | Yes | No | 156ms | 47.5 | download |
cvpods is developed based on Detectron2. For more details about official detectron2, please check DETECTRON2.
Any pull requests or issues are welcome.