Skip to content

stigma0617/maskrcnn-benchmark-vovnet

 
 

Repository files navigation

Impelmentation of Detectron with VoVNet Backbone Networks

This repository contains Detectron with VoVNet (CVPRW'19) Backbone Networks. This code based on pytorch imeplementation of Detectron (maskrcnn-benchmark)

Highlights

  • Memory efficient
  • Better performance, especially for small object
  • Faster speed

Comparison with ResNet backbones

  • 2x schedule
  • same hyperparameters
  • same training protocols ( max epoch, learning rate schedule, etc)
  • NOT multi-scale training augmentation
  • 8 x TITAN Xp GPU
  • pytorch1.1
  • CUDA v9
  • cuDNN v7.2
Backbone Detector Train mem(GB) Inference time (ms) Box AP (AP/APs/APm/APl) Mask AP (AP/APs/APm/APl) DOWNLOAD
R-50 Faster 3.6 78 37.5/21.3/40.3/49.5 - link
R-101 Faster 4.7 97 39.6/22.8/43.2/51.9 - link
V-39 Faster 3.9 78 39.8/23.7/42.6/51.5 - link
V-57 Faster 4.4 87 40.8/24.8/43.8/52.4 - link
R-50 Mask 3.6 83 38.6/22.1/41.3/51.4 34.9/16.0/37.3/52.2 link
R-101 Mask 4.7 102 40.8/23.2/44.0/53.9 36.7/16.7/39.4/54.3 link
V-39 Mask 4 81 41.0/24.6/43.9/53.1 36.7/17.9/39.3/53.0 link
V-57 Mask 4.5 90 42.0/25.1/44.9/53.8 37.5/18.3/39.8/54.3 link

ImageNet pretrained weight

Preparation

git clone https://github.com/stigma0617/maskrcnn-benchmark-vovnet.git
cd maskrcnn_benchmark-vovnet
git checkout vovnet

mkdir -p checkpoints/pretrained
cd checkpoints/pretrained
wget https://www.dropbox.com/s/b826phjle6kbamu/vovnet57_statedict_norm.pth
wget https://www.dropbox.com/s/s7f4vyfybyc9qpr/vovnet39_statedict_norm.pth

Installation

Check INSTALL.md for installation instructions which is orginate from maskrcnn-benchmark

Training

Follow the instructions maskrcnn-benchmark guides

For example,

cd maskrcnn_benchmark-vovnet
export NGPUS=8
python -m torch.distributed.launch --nproc_per_node=$NGPUS tools/train_net.py --config-file "configs/vovnet/e2e_faster_rcnn_V_39_FPN_2x.yaml" 

Evaluation

Follow the instruction

For multi-gpu evaluation & test batch size 16,

export NGPUS=8
python -m torch.distributed.launch --nproc_per_node=$NGPUS tools/test_net.py --config-file "configs/vovnet/e2e_faster_rcnn_V_39_FPN_2x.yaml" TEST.IMS_PER_BATCH 16

For single-gpu evaluation & test batch size 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

About

Detectron with VoVNet : select the vovnet branch

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Python 75.4%
  • Cuda 19.3%
  • C++ 4.7%
  • Dockerfile 0.6%