This project is inspired by Stronger-Yolo. I reimplemented with Pytorch and continue improving yolov3 with latest papers.
This project will also try out some model-compression approaches(e.g. channel-pruning).
See reimplementation results in MODELZOO.
python3.6, pytorch1.2(1.0+ should be ok), ubuntu14/16/18 tested.
All checkpoints as well as converted darknet can be downloaded here.链接 提取码: i3pa
See Usage.md for details.
model | mAP50 | mAP75 | configs |
---|---|---|---|
baseline(with GIOU) | 79.6 | 43.4 | strongerv3.yaml |
+ kl loss&&varvote | 78.9 | 49.2 | strongerv3_kl.yaml |
Note:
1.Set EVAL.varvote=True to enable varvote in KL-loss. According to the paper, kl-loss(and varvote) can strongly boost the performance of mAP75(or higher), but decrease mAP50 slightly.
Model | Backbone | MAP | Flops(G) | Params(M) |
---|---|---|---|---|
strongerv3 | Mobilev2 | 79.6 | 4.33 | 6.775 |
strongerv3-sparsed | Mobilev2 | 77.4 | 4.33 | 6.775 |
strongerv3-Pruned(30% pruned) | Mobilev2 | 77.1 | 3.14 | 3.36 |
strongerv2 | Darknet53 | 80.2 | 49.8 | 61.6 |
strongerv2-sparsed | Darknet53 | 78.1 | 49.8 | 61.6 |
strongerv2-Pruned(20% pruned) | Darknet53 | 76.8 | 49.8 | 45.2 |
Note:
1.Tuning _C.Prune.sr can get better prune ratio, I picked the official number 0.01.
- MobileV2(Pruning suppoted)
- DarkNet(Pruning supported) ...