Home

Awesome

A pytorch Implementation of VoVNet Backbone Networks

This is a pytorch implementation of VoVNet backbone networks as described in the paper An Energy and GPU-Computation Efficient Backbone Network for Real-Time Object Detection. This is implemented through pytorch/vision style.

What does this repo provide?

This repo provides VoVNet-39/57 models trained on ImageNet classification dataset with same training protocols as pytorch/examples/imagenet (e.g., 128 batch size, 90 epoch, data augmentations, lr_policy, etc) and compares to ResNet and DenseNet.

ImageNet results

Notes:

ModelTop-1Top-5Inference time
ResNet-5023.85%7.13%12 ms
DenseNet-20122.80%6.43%39 ms
VoVNet-3923.23%6.57%10 ms
ResNet-10122.63%6.44%20 ms
DenseNet-16122.35%6.20%27 ms
VoVNet-5722.27%6.28%13 ms

Pretrained models

Training & Inferecne

Installation

  1. python 3.6
  2. Install pytorch > 0.4
  3. git clone https://github.com/stigma0617/VoVNet.pytorch.git
  4. install depenecies : pip install -r requirements.txt

Imagenet data preparation

You can follow the instruction of pytorch/examples/imagenet

Train

run main.py specifying data path, the desired model name--arch, and save-directory--savedir.

python main.py [imagenet-folder with train and val folders] --arch vovnet39 --savedir VoVNet39

Related projects

VoVNet-Detectron VoVNet-DeepLabV3

TO DO