v3.0
版本发布时间: 2019-03-21 07:19:17
ultralytics/yolov3最新发布版本:v9.6.0(2021-11-15 05:26:56)
This release requires PyTorch >= v1.0.0 to function properly. Please install the latest version from https://github.com/pytorch/pytorch/releases
Breaking Changes
There are no breaking changes in this release.
Bug Fixes
- Multi GPU support https://github.com/ultralytics/yolov3/issues/21.
Added Functionality
- Tutorial created: https://github.com/ultralytics/yolov3/wiki/Example:-Transfer-Learning
- Tutorial created: https://github.com/ultralytics/yolov3/wiki/Example:-Train-Single-Image
- Tutorial created: https://github.com/ultralytics/yolov3/wiki/Example:-Train-Single-Class
- Tutorial created: https://github.com/ultralytics/yolov3/wiki/Train-Custom-Data
-
test.py
optionally outputs pycocotools compatible json files now with the--save-json
flag, and computes official COCO mAP using pycocotools. Output is verified against official darknet results from https://arxiv.org/abs/1804.02767. https://github.com/ultralytics/yolov3/issues/2#issuecomment-434751531.
ultralytics/yolov3 mAP | darknet mAP | |
---|---|---|
YOLOv3-320 | 51.3 | 51.5 |
YOLOv3-416 | 54.9 | 55.3 |
YOLOv3-608 | 57.9 | 57.9 |
Performance
- 10% improvement in training speed via code optimization. Performance should be further improved by multithreading the dataloader (on the TODO list).
https://cloud.google.com/deep-learning-vm/
Machine type: n1-highmem-4 (4 vCPUs, 26 GB memory)
CPU platform: Intel Skylake
GPUs: 1-4 x NVIDIA Tesla P100
HDD: 100 GB SSD
GPUs | batch_size |
speed | COCO epoch |
---|---|---|---|
(P100) | (images) | (s/batch) | (min/epoch) |
1 | 16 | 0.54s | 66min |
2 | 32 | 0.99s | 61min |
4 | 64 | 1.61s | 49min |
TODO (help and PR's welcome!)
- Dataloader should enable multithread. Single thread loading takes about 230 ms per batch currently, out of total batch time of 550 ms (40%). Low GPU utilization reported. https://github.com/ultralytics/yolov3/issues/141
- test.py should natively output the same results as pycocotools https://github.com/ultralytics/yolov3/issues/2
- Video Inference. Pass a video file to detect.py.
- YAPF linting (including possible wrap to PEP8 79 character-line standard) https://github.com/ultralytics/yolov3/issues/88.
- Add iOS App inference to photos and videos in Camera Roll.
- Add parameter to switch between 'darknet' and 'power' wh methods.