Awesome
FCOS with VoVNet(CVPRW'19) Efficient Backbone Networks
This repository contains FCOS(ICCV'19) with VoVNet (CVPRW'19) efficient backbone networks. This code based on pytorch imeplementation of FCOS
Highlights
- Memory efficient
- Better performance, especially for small object
- Faster speed
Comparison with ResNet backbones
- same hyperparameters
- same training protocols ( max epoch, learning rate schedule, etc)
- 8 x TITAN Xp GPU
- pytorch1.1
- CUDA v9
- cuDNN v7.2
Backbone | Multi-scale training | Inference time (ms) | Box AP (AP/APs/APm/APl) | DOWNLOAD |
---|---|---|---|---|
R-50-FPN-1x | No | 84 | 37.5/21.3/40.3/49.5 | - |
V-39-FPN-1x | No | 82 | 37.7/22.4/41.8/48.4 | link |
R-101-FPN-2x | Yes | 104 | 41.3/25.0/45.5/53.0 | - |
V-57-FPN-2x | Yes | 91 | 41.6/25.9/45.6/53.1 | link |
R-101-32x8d-FPN-2x | Yes | 171 | 42.5/26.0/46.1/54.2 | - |
V-93-FPN-2x | Yes | 113 | 42.1/26.2/46.0/53.9 | link |
ImageNet pretrained weight
Installation
Check INSTALL.md for installation instructions which is orginate from FCOS
Training
Follow the instructions
For example,
# specify the number of GPU you can use.
export NGPUS=8
python -m torch.distributed.launch --nproc_per_node=$NGPUS tools/train_net.py --config-file "configs/vovnet/fcos_V_39_FPN_1x.yaml"
Evaluation
Follow the instructions
First of all, you have to download the weight file you want to inference.
For examaple,
multi-gpu evaluation & test batch size 16,
wget https://dl.dropbox.com/s/8n0wyypfggliplw/FCOS-V-39-FPN-1x.pth?dl=1
export NGPUS=8
python -m torch.distributed.launch --nproc_per_node=$NGPUS tools/test_net.py --config-file "configs/vovnet/fcos_V_39_FPN_1x.yaml" TEST.IMS_PER_BATCH 16 MODEL.WEIGHT FCOS-V-39-FPN-1x.pth
single-gpu evaluation & test batch size 1,
wget https://dl.dropbox.com/s/8n0wyypfggliplw/FCOS-V-39-FPN-1x.pth?dl=1
CUDA_VISIBLE_DEVICES=0
python tools/test_net.py --config-file "configs/vovnet/e2e_faster_rcnn_V_39_FPN_2x.yaml" TEST.IMS_PER_BATCH 1 MODEL.WEIGHT FCOS-V-39-FPN-1x.pth