README.md 2.6 KB

Redesigned YOLOv3:

  • VOC
  • COCO
Model Batch Scale APval
0.5
Weight Logs
YOLOv3-S 1xb16 640 75.5 ckpt log
  • For training, we train redesigned YOLOv3 with 300 epochs on COCO. We also use the gradient accumulation.
  • For data augmentation, we use the RandomAffine, RandomHSV, Mosaic and Mixup augmentation.
  • For optimizer, we use AdamW with weight decay of 0.05 and per image base lr of 0.001 / 64.
  • For learning rate scheduler, we use cosine decay scheduler.
  • For batch size, we set it to 16, and we also use the gradient accumulation to approximate batch size of 256.

Train YOLOv3

Single GPU

Taking training YOLOv3-S on COCO as the example,

python train.py --cuda -d coco --root path/to/coco -m yolov3_s -bs 16 --fp16 

Multi GPU

Taking training YOLOv3-S on COCO as the example,

python -m torch.distributed.run --nproc_per_node=8 train.py --cuda --distributed -d coco --root path/to/coco -m yolov3_s -bs 16 --fp16 

Test YOLOv3

Taking testing YOLOv3-S on COCO-val as the example,

python test.py --cuda -d coco --root path/to/coco -m yolov3_s --weight path/to/yolov3.pth --show 

Evaluate YOLOv3

Taking evaluating YOLOv3-S on COCO-val as the example,

python eval.py --cuda -d coco --root path/to/coco -m yolov3_s --weight path/to/yolov3.pth 

Demo

Detect with Image

python demo.py --mode image --path_to_img path/to/image_dirs/ --cuda -m yolov3_s --weight path/to/weight --show

Detect with Video

python demo.py --mode video --path_to_vid path/to/video --cuda -m yolov3_s --weight path/to/weight --show --gif

Detect with Camera

python demo.py --mode camera --cuda -m yolov3_s --weight path/to/weight --show --gif
Model Batch Scale APval
0.5:0.95
APval
0.5
FLOPs
(G)
Params
(M)
Weight Logs
YOLOv3-S 1xb16 640 31.3 49.2 25.2 7.3 ckpt log