v6.0
版本发布时间: 2021-10-12 15:08:07
ultralytics/yolov5最新发布版本:v7.0(2022-11-22 23:29:09)
This release incorporates many new features and bug fixes (465 PRs from 73 contributors) since our last release v5.0 in April, brings architecture tweaks, and also introduces new P5 and P6 'Nano' models: YOLOv5n and YOLOv5n6. Nano models maintain the YOLOv5s depth multiple of 0.33 but reduce the YOLOv5s width multiple from 0.50 to 0.25, resulting in ~75% fewer parameters, from 7.5M to 1.9M, ideal for mobile and CPU solutions.
Example usage:
python detect.py --weights yolov5n.pt --img 640 # Nano P5 model trained at --img 640 (28.4 mAP@0.5:0.95)
python detect.py --weights yolov5n6.pt --img 1280 # Nano P6 model trained at --img 1280 (34.0 mAP0.5:0.95)
Important Updates
-
Roboflow Integration ⭐ NEW: Train YOLOv5 models directly on any Roboflow dataset with our new integration! (https://github.com/ultralytics/yolov5/issues/4975 by @Jacobsolawetz)
-
YOLOv5n 'Nano' models ⭐ NEW: New smaller YOLOv5n (1.9M params) model below YOLOv5s (7.5M params), exports to 2.1 MB INT8 size, ideal for ultralight mobile solutions. (https://github.com/ultralytics/yolov5/discussions/5027 by @glenn-jocher)
-
TensorFlow and Keras Export: TensorFlow, Keras, TFLite, TF.js model export now fully integrated using
python export.py --include saved_model pb tflite tfjs
(https://github.com/ultralytics/yolov5/pull/1127 by @zldrobit) -
OpenCV DNN: YOLOv5 ONNX models are now compatible with both OpenCV DNN and ONNX Runtime (https://github.com/ultralytics/yolov5/pull/4833 by @SamFC10).
-
Model Architecture: Updated backbones are slightly smaller, faster and more accurate.
- Replacement of
Focus()
with an equivalentConv(k=6, s=2, p=2)
layer (https://github.com/ultralytics/yolov5/issues/4825 by @thomasbi1) for improved exportability - New
SPPF()
replacement forSPP()
layer for reduced ops (https://github.com/ultralytics/yolov5/pull/4420 by @glenn-jocher) - Reduction in P3 backbone layer
C3()
repeats from 9 to 6 for improved speeds - Reorder places
SPPF()
at end of backbone - Reintroduction of shortcut in the last
C3()
backbone layer - Updated hyperparameters with increased mixup and copy-paste augmentation
- Replacement of
New Results
YOLOv5-P5 640 Figure (click to expand)
Figure Notes (click to expand)
- COCO AP val denotes mAP@0.5:0.95 metric measured on the 5000-image COCO val2017 dataset over various inference sizes from 256 to 1536.
- GPU Speed measures average inference time per image on COCO val2017 dataset using a AWS p3.2xlarge V100 instance at batch-size 32.
- EfficientDet data from google/automl at batch size 8.
-
Reproduce by
python val.py --task study --data coco.yaml --iou 0.7 --weights yolov5n6.pt yolov5s6.pt yolov5m6.pt yolov5l6.pt yolov5x6.pt
mAP improves from +0.3% to +1.1% across all models, and ~5% FLOPs reduction produces slight speed improvements and a reduced CUDA memory footprint. Example YOLOv5l before and after metrics:
YOLOv5l Large |
size (pixels) |
mAPval 0.5:0.95 |
mAPval 0.5 |
Speed CPU b1 (ms) |
Speed V100 b1 (ms) |
Speed V100 b32 (ms) |
params (M) |
FLOPs @640 (B) |
---|---|---|---|---|---|---|---|---|
v5.0 (previous) | 640 | 48.2 | 66.9 | 457.9 | 11.6 | 2.8 | 47.0 | 115.4 |
v6.0 (this release) | 640 | 48.8 | 67.2 | 424.5 | 10.9 | 2.7 | 46.5 | 109.1 |
Pretrained Checkpoints
Model | size (pixels) |
mAPval 0.5:0.95 |
mAPval 0.5 |
Speed CPU b1 (ms) |
Speed V100 b1 (ms) |
Speed V100 b32 (ms) |
params (M) |
FLOPs @640 (B) |
---|---|---|---|---|---|---|---|---|
YOLOv5n | 640 | 28.4 | 46.0 | 45 | 6.3 | 0.6 | 1.9 | 4.5 |
YOLOv5s | 640 | 37.2 | 56.0 | 98 | 6.4 | 0.9 | 7.2 | 16.5 |
YOLOv5m | 640 | 45.2 | 63.9 | 224 | 8.2 | 1.7 | 21.2 | 49.0 |
YOLOv5l | 640 | 48.8 | 67.2 | 430 | 10.1 | 2.7 | 46.5 | 109.1 |
YOLOv5x | 640 | 50.7 | 68.9 | 766 | 12.1 | 4.8 | 86.7 | 205.7 |
YOLOv5n6 | 1280 | 34.0 | 50.7 | 153 | 8.1 | 2.1 | 3.2 | 4.6 |
YOLOv5s6 | 1280 | 44.5 | 63.0 | 385 | 8.2 | 3.6 | 16.8 | 12.6 |
YOLOv5m6 | 1280 | 51.0 | 69.0 | 887 | 11.1 | 6.8 | 35.7 | 50.0 |
YOLOv5l6 | 1280 | 53.6 | 71.6 | 1784 | 15.8 | 10.5 | 76.8 | 111.4 |
YOLOv5x6 + TTA |
1280 1536 |
54.7 55.4 |
72.4 72.3 |
3136 - |
26.2 - |
19.4 - |
140.7 - |
209.8 - |
Table Notes (click to expand)
- All checkpoints are trained to 300 epochs with default settings. Nano models use hyp.scratch-low.yaml hyperparameters, all others use hyp.scratch-high.yaml.
-
mAPval values are for single-model single-scale on COCO val2017 dataset.
Reproduce bypython val.py --data coco.yaml --img 640 --conf 0.001 --iou 0.65
-
Speed averaged over COCO val images using a AWS p3.2xlarge instance. NMS times (~1 ms/img) not included.
Reproduce bypython val.py --data coco.yaml --img 640 --conf 0.25 --iou 0.45
-
TTA Test Time Augmentation includes reflection and scale augmentations.
Reproduce bypython val.py --data coco.yaml --img 1536 --iou 0.7 --augment
Changelog
Changes between previous release and this release: https://github.com/ultralytics/yolov5/compare/v5.0...v6.0 Changes since this release: https://github.com/ultralytics/yolov5/compare/v6.0...HEAD
New Features and Bug Fixes (465)
- YOLOv5 v5.0 Release patch 1 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2764
- Flask REST API Example by @robmarkcole in https://github.com/ultralytics/yolov5/pull/2732
- ONNX Simplifier by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2815
- YouTube Bug Fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2818
- PyTorch Hub cv2 .save() .show() bug fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2831
- Create FUNDING.yml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2832
- Update FUNDING.yml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2833
- Fix ONNX dynamic axes export support with onnx simplifier, make onnx simplifier optional by @timstokman in https://github.com/ultralytics/yolov5/pull/2856
- Update increment_path() to handle file paths by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2867
- Detection cropping+saving feature addition for detect.py and PyTorch Hub by @Ab-Abdurrahman in https://github.com/ultralytics/yolov5/pull/2827
- Implement yaml.safe_load() by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2876
- Cleanup load_image() by @JoshSong in https://github.com/ultralytics/yolov5/pull/2871
- bug fix: switched rows and cols for correct detections in confusion matrix by @MichHeilig in https://github.com/ultralytics/yolov5/pull/2883
- VisDrone2019-DET Dataset Auto-Download by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2882
- Uppercase model filenames enabled by @r-blmnr in https://github.com/ultralytics/yolov5/pull/2890
- ACON activation function by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2893
- Explicit opt function arguments by @fcakyon in https://github.com/ultralytics/yolov5/pull/2817
- Update yolo.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2899
- Update google_utils.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2900
- Add detect.py --hide-conf --hide-labels --line-thickness options by @Ashafix in https://github.com/ultralytics/yolov5/pull/2658
- Default optimize_for_mobile() on TorchScript models by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2908
- Update export.py onnx -> ct print bug fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2909
- Update export.py for 2 dry runs by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2910
- Add file_size() function by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2911
- Update download() for tar.gz files by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2919
- Update visdrone.yaml bug fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2921
- changed default value of hide label argument to False by @albinxavi in https://github.com/ultralytics/yolov5/pull/2923
- Change default value of hide-conf argument to false by @albinxavi in https://github.com/ultralytics/yolov5/pull/2925
- test.py native --single-cls by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2928
- Add verbose option to pytorch hub models by @NanoCode012 in https://github.com/ultralytics/yolov5/pull/2926
- ACON Activation batch-size 1 bug patch by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2901
- Check_requirements() enclosing apostrophe bug fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2929
- Update README.md by @BZFYS in https://github.com/ultralytics/yolov5/pull/2934
- Improved yolo.py profiling by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2940
- Add yolov5/ to sys.path() for *.py subdir exec by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2949
- New Colors() class by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2963
- Update restapi.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2967
- Global Wheat Detection 2020 Dataset Auto-Download by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2968
- Objects365 Dataset AutoDownload by @ferdinandl007 in https://github.com/ultralytics/yolov5/pull/2932
- Update check_requirements() exclude list by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2974
- Make cache saving optional by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2977
- YOLOv5 AWS Inferentia Inplace compatibility updates by @jluntamazon in https://github.com/ultralytics/yolov5/pull/2953
- PyTorch Hub load directly when possible by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/2986
- Improve performance of dataset Logger by @AyushExel in https://github.com/ultralytics/yolov5/pull/2943
- Add unzip flag to download() by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3002
- Curl update by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3004
- Update hubconf.py for unified loading by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3005
- hubconf.py bug fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3007
- Added support for fp16 (half) to export.py by @hodovo in https://github.com/ultralytics/yolov5/pull/3010
- Add is_colab() function by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3018
- Add NMS threshold checks by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3020
- Fix ONNX export using --grid --simplify --dynamic simultaneously by @jylink in https://github.com/ultralytics/yolov5/pull/2982
- download() ThreadPool update by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3027
- FROM nvcr.io/nvidia/pytorch:21.04-py3 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3030
- Fix #3031 : use check_file for --data by @AyushExel in https://github.com/ultralytics/yolov5/pull/3035
- Add get_coco128.sh for downloading the coco128 dataset by @zldrobit in https://github.com/ultralytics/yolov5/pull/3047
- Do not optimize CoreML TorchScript model by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3055
- Fixed #3042 by @kepler62f in https://github.com/ultralytics/yolov5/pull/3058
- Update export.py with --train mode argument by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3066
- Explicitly convert artifact path to posix_path by @AyushExel in https://github.com/ultralytics/yolov5/pull/3067
- Update P5 + P6 model ensembling by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3082
- Update detect.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3087
- Add check_python() by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3088
- Add --optimize argument by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3093
- Update train.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3099
- Update GlobalWheat2020.yaml test: # 1276 images by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3101
- detect.py streaming source
--save-crop
bug fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3102 - Replace print() with logging.info() in trainloader by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3103
- New Ultralytics Colors() Palette by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3046
- Update JSON response by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3139
- Update https://ultralytics.com/images/zidane.jpg by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3140
- Add yolov5/init.py by @KC-Zhang in https://github.com/ultralytics/yolov5/pull/3127
- Add
--include torchscript onnx coreml
argument by @CristiFati in https://github.com/ultralytics/yolov5/pull/3137 - TorchScript, ONNX, CoreML Export tutorial title by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3142
- Update requirements.txt
onnx>=1.9.0
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3143 - Scope imports for torch.hub.list() improvement by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3144
- Scope all hubconf.py imports for torch.hub.list() by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3145
- SKU-110K CVPR2019 Dataset Auto-Download by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3167
- rename class autoShape -> AutoShape by @developer0hye in https://github.com/ultralytics/yolov5/pull/3173
- Parameterize ONNX
--opset-version
by @CristiFati in https://github.com/ultralytics/yolov5/pull/3154 - Add
device
argument to PyTorch Hub models by @cgerum in https://github.com/ultralytics/yolov5/pull/3104 - Plot labels.png histogram colors by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3192
- Add CAP_PROP_FRAME_COUNT for YouTube sources by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3193
- Silent List Bug Fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3214
- 0 FPS stream bug fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3216
- Parameterize max_det + inference default at 1000 by @adrianholovaty in https://github.com/ultralytics/yolov5/pull/3215
- TensorBoard add_graph() fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3236
-
plot_one_box()
defaultcolor=(128, 128, 128)
by @yeric1789 in https://github.com/ultralytics/yolov5/pull/3240 - Add Cython by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3217
- Check CoreML models.train() mode by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3262
- Assert
--image-weights
not combined with DDP by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3275 - check
batch_size % utilized_device_count
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3276 - YouTube stream ending fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3277
- Fix TypeError: 'PosixPath' object is not iterable by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3285
- Improves docs and handling of entities and resuming by WandbLogger by @charlesfrye in https://github.com/ultralytics/yolov5/pull/3264
- Update LoadStreams init fallbacks by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3295
- PyTorch Hub
crops = results.crop()
return values by @yeric1789 in https://github.com/ultralytics/yolov5/pull/3282 - Comment Cython by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3297
- Improved check_requirements() robustness by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3298
- Explicit
git clone
master by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3311 - Implement
@torch.no_grad()
decorator by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3312 - Remove https://ultralytics.coms://ultralytics.com by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3320
- TensorBoard DP/DDP graph fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3325
- yolo.py header by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3347
- Updated cache v0.2 with
hashlib
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3350 - Add URL file download to check_file() by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3330
- ONNX export in
.train()
mode fix by @ChaofWang in https://github.com/ultralytics/yolov5/pull/3362 - Ignore blank lines in
*.txt
labels by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3366 - update ci-testing.yml by @SkalskiP in https://github.com/ultralytics/yolov5/pull/3322
- Enable direct
--weights URL
definition by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3373 - Add Open in Kaggle badge by @pizzaz93 in https://github.com/ultralytics/yolov5/pull/3368
-
cv2.imread(img, -1)
for IMREAD_UNCHANGED by @tudoulei in https://github.com/ultralytics/yolov5/pull/3379 - COCO evolution fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3388
- Create
is_pip()
function by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3391 - Revert "
cv2.imread(img, -1)
for IMREAD_UNCHANGED" by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3395 - Update FLOPs description. by @chocosaj in https://github.com/ultralytics/yolov5/pull/3422
- Parse URL authentication by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3424
- Add FLOPs title to table by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3453
- Suppress jit trace warning + graph once by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3454
- Update MixUp augmentation
alpha=beta=32.0
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3455 - Add
timeout()
class by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3460 - Faster HSV augmentation by @developer0hye in https://github.com/ultralytics/yolov5/pull/3462
- Add
check_git_status()
5 second timeout by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3464 - Improved
check_requirements()
offline-handling by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3466 - Add
output_names
argument for ONNX export with dynamic axes by @SamSamhuns in https://github.com/ultralytics/yolov5/pull/3456 - Revert FP16
test.py
anddetect.py
inference to FP32 default by @edificewang in https://github.com/ultralytics/yolov5/pull/3423 - Add additional links/resources to stale.yml message by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3467
- Update stale.yml HUB URL by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3468
- Stale
github.actor
bug fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3483 - Explicit
model.eval()
callif opt.train=False
by @developer0hye in https://github.com/ultralytics/yolov5/pull/3475 - check_requirements() exclude
opencv-python
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3495 - check_requirements() exclude
opencv-python
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3507 - early assert for cpu and half option by @developer0hye in https://github.com/ultralytics/yolov5/pull/3508
- Update tutorial.ipynb by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3510
- Reduce test.py results spacing by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3511
- Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3512
- Merge
develop
branch intomaster
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3518 - Use multi-threading in cache_labels by @deanmark in https://github.com/ultralytics/yolov5/pull/3505
- Update datasets.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3531
- Update FP16
--half
argument for test.py and detect.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3532 - Update
dataset_stats()
for HUB by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3536 - On-demand
pycocotools
pip install by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3547 - Update
check_python(minimum=3.6.2)
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3548 - Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3550
- Remove
opt
from `create_dataloader()`` by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3552 - Remove
is_coco
argument fromtest()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3553 - Multi-GPU default to single device 0 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3554
- Update test.py profiling by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3555
- Remove redundant speed/study
half
argument by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3557 - Bump pip from 18.1 to 19.2 in /utils/google_app_engine by @dependabot in https://github.com/ultralytics/yolov5/pull/3561
- Refactor test.py arguments by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3558
- Refactor detect.py arguments by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3559
- Refactor models/export.py arguments by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3564
- Refactoring cleanup by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3565
- Ignore Seaborn plot warnings by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3576
- Update export.py, yolo.py
sys.path.append()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3579 - Update stale.yml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3585
- Add ConfusionMatrix
normalize=True
flag by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3586 - ConfusionMatrix
normalize=True
fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3587 - train.py GPU memory fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3590
- W&B: Allow changed in config variable by @AyushExel in https://github.com/ultralytics/yolov5/pull/3588
- Update
dataset_stats()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3593 - Delete init.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3596
- Simplify README.md by @kalenmike in https://github.com/ultralytics/yolov5/pull/3530
- Update datasets.py by @masoodazhar in https://github.com/ultralytics/yolov5/pull/3591
- Download COCO and VOC by default by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3608
- Suppress wandb images size mismatch warning by @AyushExel in https://github.com/ultralytics/yolov5/pull/3611
- Fix incorrect end epoch by @wq9 in https://github.com/ultralytics/yolov5/pull/3612
- Update
check_file()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3622 - Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3624
- FROM nvcr.io/nvidia/pytorch:21.05-py3 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3633
- Add
**/*.torchscript.pt
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3634 - Update
verify_image_label()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3635 - RUN pip install --no-cache -U torch torchvision by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3637
- Assert non-premature end of JPEG images by @xiaowk5516 in https://github.com/ultralytics/yolov5/pull/3638
- Update CONTRIBUTING.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3645
- Update CONTRIBUTING.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3647
-
is_coco
list fix by @thanhminhmr in https://github.com/ultralytics/yolov5/pull/3646 - Update README.md by @SpongeBab in https://github.com/ultralytics/yolov5/pull/3650
- Update
dataset_stats()
to list of dicts by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3657 - Remove
/weights
directory by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3659 - Update download_weights.sh comment by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3662
- Update train.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3667
- Update
train(hyp, *args)
to accepthyp
file or dict by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3668 - Update TensorBoard by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3669
- Update
WORLD_SIZE
andRANK
retrieval by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3670 - Cache v0.3: improved corrupt image/label reporting by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3676
- EMA changes for pre-model's batch_size by @ZouJiu1 in https://github.com/ultralytics/yolov5/pull/3681
- Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3684
- Update cache check by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3691
- Skip HSV augmentation when hyperparameters are [0, 0, 0] by @thanhminhmr in https://github.com/ultralytics/yolov5/pull/3686
- Slightly modify CLI execution by @lb-desupervised in https://github.com/ultralytics/yolov5/pull/3687
- Reformat by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3694
- Update DDP for
torch.distributed.run
withgloo
backend by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3680 - Eliminate
total_batch_size
variable by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3697 - Add torch DP warning by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3698
- Add
train.run()
method by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3700 - Update DDP backend
if dist.is_nccl_available()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3705 - W&B: Don't resume transfer learning runs by @AyushExel in https://github.com/ultralytics/yolov5/pull/3604
- Update 4 main ops for paths and .run() by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3715
- Fix
img2label_paths()
order by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3720 - Fix typo in export.py by @fcakyon in https://github.com/ultralytics/yolov5/pull/3729
- Backwards compatible cache version checks by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3730
- Update
check_datasets()
for dynamic unzip path by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3732 - Create
data/hyps
directory by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3747 - Force non-zero hyp evolution weights
w
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3748 - edit comment for img2tensor process by @developer0hye in https://github.com/ultralytics/yolov5/pull/3759
- Add optional dataset.yaml
path
attribute by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3753 - COCO annotations JSON fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3764
- Add
xyxy2xywhn()
by @developer0hye in https://github.com/ultralytics/yolov5/pull/3765 - Remove DDP
nn.MultiheadAttention
fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3768 - fix/incorrect_fitness_import by @SkalskiP in https://github.com/ultralytics/yolov5/pull/3770
- W&B: Update Tables API and comply with new dataset_check by @AyushExel in https://github.com/ultralytics/yolov5/pull/3772
- NGA xView 2018 Dataset Auto-Download by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3775
- Update README.md fix banner width by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3785
- Objectness IoU Sort by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3610
- Update objectness IoU sort by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3786
- Create hyp.scratch-p6.yaml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3787
- Fix datasets for aws and get_coco.sh by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3788
- Update seeds for single-GPU reproducibility by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3789
- Update Usage examples by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3790
- nvcr.io/nvidia/pytorch:21.06-py3 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3791
- Update Dockerfile by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3792
- FROM nvcr.io/nvidia/pytorch:21.05-py3 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3794
- Fix competition link by @batrlatom in https://github.com/ultralytics/yolov5/pull/3799
- Fix warmup
accumulate
by @yellowdolphin in https://github.com/ultralytics/yolov5/pull/3722 - Add feature map visualization by @Zigars in https://github.com/ultralytics/yolov5/pull/3804
- Update
feature_visualization()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3807 - Fix for
dataset_stats()
with updated data.yaml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3819 - Move IoU functions to metrics.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3820
- Concise
TransformerBlock()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3821 - Fix
LoadStreams()
dataloader frame skip issue by @feras-oughali in https://github.com/ultralytics/yolov5/pull/3833 - Plot
AutoShape()
detections in ascending order by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3843 - Copy-Paste augmentation for YOLOv5 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3845
- Add EXIF rotation to YOLOv5 Hub inference by @vaaliferov in https://github.com/ultralytics/yolov5/pull/3852
-
--evolve 300
generations CLI argument by @san-soucie in https://github.com/ultralytics/yolov5/pull/3863 - Add multi-stream saving feature by @ketan-b in https://github.com/ultralytics/yolov5/pull/3864
- Models
*.yaml
reformat by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3875 - Create
utils/augmentations.py
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3877 - Improved BGR2RGB speeds by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3880
- Evolution commented
hyp['anchors']
fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3887 - Hub models
map_location=device
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3894 - YOLOv5 + Albumentations integration by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3882
- Save PyTorch Hub models to
/root/hub/cache/dir
by @johnohagan in https://github.com/ultralytics/yolov5/pull/3904 - Feature visualization update by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3920
- Fix
torch.hub.list('ultralytics/yolov5')
pathlib bug by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3921 - Update
setattr()
default for Hub PIL images by @jmiranda-laplateforme in https://github.com/ultralytics/yolov5/pull/3923 -
feature_visualization()
CUDA fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3925 - Update
dataset_stats()
for zipped datasets by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3926 - Fix inconsistent NMS IoU value for COCO by @eldarkurtic in https://github.com/ultralytics/yolov5/pull/3934
- Feature visualization improvements 32 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3947
- Update augmentations.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3948
- Cache v0.4 update by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3954
- Numerical stability fix for Albumentations by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3958
- Update
albumentations>=1.0.2
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3966 - Update
np.random.random()
torandom.random()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3967 - Update requirements.txt
albumentations>=1.0.2
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3972 -
Ensemble()
visualize fix by @seven320 in https://github.com/ultralytics/yolov5/pull/3973 - Update
probability
top
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3980 - Alert (no detections) by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3984
- Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/3996
- Rename
test.py
toval.py
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4000 - W&B: Proposal for supporting W&B sweeps by @AyushExel in https://github.com/ultralytics/yolov5/pull/3938
- Update greetings.yml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4024
- Add
--sync-bn
known issue by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4032 - Update greetings.yml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4037
- Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4041
- AutoShape PosixPath support by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4047
-
val.py
refactor by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4053 - Module
super().__init__()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4065 - Missing
nc
andnames
handling in check_dataset() by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4066 - Albumentations >= 1.0.3 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4068
- W&B: fix refactor bugs by @AyushExel in https://github.com/ultralytics/yolov5/pull/4069
- Refactor
export.py
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4080 - Addition refactor
export.py
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4089 - Add train.py
--img-size
floor by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4099 - Update resume.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4115
- Fix indentation in
log_training_progress()
by @imyhxy in https://github.com/ultralytics/yolov5/pull/4126 - Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4134
- detect.py ONNX inference feature by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4073
- Rename
opset_version
toopset
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4135 - Update train.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4136
- Refactor train.py and val.py
loggers
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4137 - Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4143
- Add
export.py
ONNX inference suggestion by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4146 - New CSV Logger by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4148
- Update dataset comments by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4162
- Update script headers by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4163
- W&B: Improve documentation of the logger & use wandb assigned run names by default by @AyushExel in https://github.com/ultralytics/yolov5/pull/4174
- Update comments header by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4184
- Train from
--data path/to/dataset.zip
feature by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4185 - Create yolov5-bifpn.yaml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4195
- Update Hub Path inputs by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4200
- W&B: Restructure code to support the new dataset_check() feature by @AyushExel in https://github.com/ultralytics/yolov5/pull/4197
- Update yolov5-bifpn.yaml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4208
- W&B: More improvements and refactoring by @AyushExel in https://github.com/ultralytics/yolov5/pull/4205
- PyCharm reformat by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4209
- Add
@try_except
decorator by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4224 - Explicit
requirements.txt
location by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4225 - Suppress torch 1.9.0
max_pool2d()
warning by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4227 - Fix weight decay comment by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4228
- Update profiler by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4236
- Add
python train.py --freeze N
argument by @IneovaAI in https://github.com/ultralytics/yolov5/pull/4238 - Update
profile()
for CUDA Memory allocation by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4239 - Add
train.py
andval.py
callbacks by @kalenmike in https://github.com/ultralytics/yolov5/pull/4220 - W&B: suppress warnings by @AyushExel in https://github.com/ultralytics/yolov5/pull/4257
- Update AP calculation by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4260
- Update Autoshape forward header by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4271
- Update variables by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4273
- Add
DWConvClass()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4274 - Update 'results saved to' string by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4275
- W&B: Fix sweep bug by @AyushExel in https://github.com/ultralytics/yolov5/pull/4276
- Feature
python train.py --cache disk
by @junjihashimoto in https://github.com/ultralytics/yolov5/pull/4049 - Fixed logging level in distributed mode by @imyhxy in https://github.com/ultralytics/yolov5/pull/4284
- Simplify callbacks by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4289
- Evolve in CSV format by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4307
- Update newline by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4308
- Update README.md by @Justsubh01 in https://github.com/ultralytics/yolov5/pull/4309
- Simpler code for DWConvClass by @developer0hye in https://github.com/ultralytics/yolov5/pull/4310
-
int(mlc)
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4385 - fix module count in parse_model by @orangeccc in https://github.com/ultralytics/yolov5/pull/4379
- Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4387
- W&B: Add advanced features tutorial by @AyushExel in https://github.com/ultralytics/yolov5/pull/4384
- W&B: Fix for 4360 by @AyushExel in https://github.com/ultralytics/yolov5/pull/4388
- Fix rename
utils.google_utils
toutils.downloads
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4393 - Simplify ONNX inference command by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4405
- No cache option for reading datasets by @ahmadmustafaanis in https://github.com/ultralytics/yolov5/pull/4376
- Update plots.py PIL box plotting by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4407
- Add
yolov5s-ghost.yaml
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4412 - Remove
encoding='ascii'
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4413 - Merge PIL and OpenCV in
plot_one_box(use_pil=False)
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4416 - Standardize headers and docstrings by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4417
- Add
SPPF()
layer by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4420 - Remove DDP process group timeout by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4422
- Update hubconf.py
attempt_load
import by @OmidSa75 in https://github.com/ultralytics/yolov5/pull/4428 - TFLite preparation by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4436
- Add TensorFlow and TFLite export by @zldrobit in https://github.com/ultralytics/yolov5/pull/1127
- Fix default
--weights yolov5s.pt
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4458 - Fix missing labels after albumentations by @huuquan1994 in https://github.com/ultralytics/yolov5/pull/4455
-
check_requirements(('coremltools',))
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4478 - W&B: Refactor the wandb_utils.py file by @AyushExel in https://github.com/ultralytics/yolov5/pull/4496
- Add
install=True
argument tocheck_requirements
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4512 - Automatic TFLite uint8 determination by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4515
- Fix for
python models/yolo.py --profile
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4541 - Auto-fix corrupt JPEGs by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4548
- Fix for corrupt JPEGs auto-fix PR by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4560
- Fix for AP calculation limits 0.0 - 1.0 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4563
- ONNX opset 13 by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4566
- Add EarlyStopping feature by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4576
- Remove
image_weights
DDP code by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4579 - Add
Profile()
profiler by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4587 - Fix bug in
plot_one_box
when label isNone
by @karasawatakumi in https://github.com/ultralytics/yolov5/pull/4588 - Create
Annotator()
class by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4591 - Auto-UTF handling by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4594
- Re-order
plots.py
to class-first by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4595 - Update mosaic plots font size by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4596
- TensorBoard
on_train_end()
speed improvements by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4605 - Auto-download Arial.ttf on init by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4606
- Fix: add P2 layer 21 to yolov5-p2.yaml
Detect()
inputs by @YukunXia in https://github.com/ultralytics/yolov5/pull/4608 - Update
check_git_status()
warning by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4610 - W&B: Don't log models in evolve operation by @AyushExel in https://github.com/ultralytics/yolov5/pull/4611
- Close
matplotlib
plots after opening by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4612 - DDP
torch.jit.trace()
--sync-bn
fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4615 - Fix for Arial.ttf redownloads with hub inference by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4627
- Fix 2 for Arial.ttf redownloads with hub inference by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4628
- Fix 3 for Arial.ttf redownloads with hub inference by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4629
- Fix for
plot_evolve()
string argument by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4639 - Fix
is_coco
on missingdata['val']
key by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4642 - Fixed 'meta' and 'hyp' may out of order when using evolve by @imyhxy in https://github.com/ultralytics/yolov5/pull/4657
- EarlyStopper updates by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4679
- Optimised Callback Class to Reduce Code and Fix Errors by @kalenmike in https://github.com/ultralytics/yolov5/pull/4688
- Remove redundant
ComputeLoss
code by @zhiqwang in https://github.com/ultralytics/yolov5/pull/4701 - Add suffix checks by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4711
- Fix
check_suffix()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4712 - Update
check_yaml()
comment by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4713 - Add
user_config_dir('Ultralytics')
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4715 - Add
crops = results.crop()
dictionary by @ELHoussineT in https://github.com/ultralytics/yolov5/pull/4676 - Make CONFIG_DIR configurable per environment variable by @joaodiogocosta in https://github.com/ultralytics/yolov5/pull/4727
- Allow
multi_label
option for NMS with PyTorch Hub by @jeanbmar in https://github.com/ultralytics/yolov5/pull/4728 - Scope
onnx-simplifier
requirements check by @Zegorax in https://github.com/ultralytics/yolov5/pull/4730 - Fix
user_config_dir()
for GCP/AWS functions by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4726 - Fix
--data from_HUB.zip
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4732 - Improved
detect.py
timing by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4741 - Add
callbacks
to train function in W&B sweep by @jveitchmichaelis in https://github.com/ultralytics/yolov5/pull/4742 - Fix
is_writeable()
for 3 OS support by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4743 - Add TF and TFLite models to
.gitignore
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4747 - Add TF and TFLite models to
.dockerignore
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4748 - Update
is_writeable()
for 2 methods by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4744 - Centralize
user_config_dir()
decision making by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4755 - Replace
path.absolute()
withpath.resolve()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4763 - Add TensorFlow formats to
export.py
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4479 - Update ci-testing.yml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4770
- Update ci-testing.yml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4772
- Shuffle all 4(or 9) images in mosaic augmentation by @kimnamu in https://github.com/ultralytics/yolov5/pull/4787
- Add
--int8
argument by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4799 - Evolution
--resume
fix by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4802 - Refactor
forward()
method profiling by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4816 - Feature/fix export on url by @kalenmike in https://github.com/ultralytics/yolov5/pull/4823
- Fix 'PyTorch starting from' for URL weights by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4828
- Multiple TF export improvements by @zldrobit in https://github.com/ultralytics/yolov5/pull/4824
- Fix val.py study plot by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4831
-
PIL.ImageDraw.text(anchor=...)
removal, reduce to>=7.1.2
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4842 - Sorted datasets update to
cache_labels()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4845 - Single
cache_version
definition by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4846 - W&B: Enable login timeout by @AyushExel in https://github.com/ultralytics/yolov5/pull/4843
- Consolidate
init_seeds()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4849 - Refactor argparser printing to
print_args()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4850 - Update
sys.path.append(str(ROOT))
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4852 - Simplify
check_requirements()
usage by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4855 - Update greetings.yml by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4856
- Update Dockerfile by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4861
- Update Dockerfile by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4862
- Fix DDP destruction
LOGGER.info()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4863 - Annotator
check_font()
RANK -1 remove progress by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4864 - W&B: Login only in master processes by @AyushExel in https://github.com/ultralytics/yolov5/pull/4866
- W&B: Fix dataset check by @AyushExel in https://github.com/ultralytics/yolov5/pull/4879
- Fix arg help string to match 'classes' arg name. by @NauchtanRobotics in https://github.com/ultralytics/yolov5/pull/4893
- Avoid out-of-image class labels by @zldrobit in https://github.com/ultralytics/yolov5/pull/4902
- TensorFlow.js export enhancements by @zldrobit in https://github.com/ultralytics/yolov5/pull/4905
- fix zipfile name for coco128-segments by @SamFC10 in https://github.com/ultralytics/yolov5/pull/4914
- Replace
os.system('unzip file.zip')
->ZipFile.extractall()
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4919 - Fix
root
referenced before assignment by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4920 - Add Slack Forum badge to README by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4930
- Validate
best.pt
on train end by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4889 - Update default Albumentations by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4931
- Scope
check_file()
search space by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4933 - Update Dockerfile by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4935
- Automatic Chinese fonts plotting by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4951
- Allow YOLOv5 execution from arbitrary
cwd
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4954 - Update relative
ROOT
logic by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4955 - Add
roboflow
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4956 - Fix
isascii()
method calls for python 3.6 by @d57montes in https://github.com/ultralytics/yolov5/pull/4958 - Fix relative
ROOT
Pytorch Hub custom model bug by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4974 - Add Roboflow to README by @kalenmike in https://github.com/ultralytics/yolov5/pull/4972
- Update wandb_utils.py by @d57montes in https://github.com/ultralytics/yolov5/pull/4953
- Add Hub custom models to CI tests by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4978
- Faster
--img 64
CI tests by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4979 - Clickable CI badge by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4985
- Revert
torch.hub.load()
test by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/4986 - Fix URL parsing bug by @kalenmike in https://github.com/ultralytics/yolov5/pull/4998
- Update W&B README by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5006
- Add YOLOv5 Survey link to README.md by @kalenmike in https://github.com/ultralytics/yolov5/pull/5000
- Update train.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5014
- Update README.md by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5015
- Compute loss on final val by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5017
- Fix missing
opt.device
on--task study
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5031 - Fix pylint: do not use bare 'except' by @zhiqwang in https://github.com/ultralytics/yolov5/pull/5025
- Clip TTA Augmented Tails by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5028
- Implement
--save-period
locally by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5047 - Fix
yaml.safe_load()
ignore emoji errors by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5060 - Update Dockerfile to
ADD
Arial.ttf by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5084 - Update datasets.py comments by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5088
- Re-open IP-camera videostream if disconnected by @EgOrlukha in https://github.com/ultralytics/yolov5/pull/5074
- Fix SKU-110K HUB:
OSError
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5106 - Add
requests
to requirements.txt by @sandstorm12 in https://github.com/ultralytics/yolov5/pull/5112 - Pass
LOCAL_RANK
totorch_distributed_zero_first()
by @qiningonline in https://github.com/ultralytics/yolov5/pull/5114 - Fix different devices bug when moving model from GPU to CPU by @SamFC10 in https://github.com/ultralytics/yolov5/pull/5110
- Pass
--device
for--task study
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5118 - Update val.py
--speed
and--study
usages by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5120 - Update val.py
pad = 0.0 if task == 'speed' else 0.5
by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5121 - Update plots.py by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5127
- Fix
ROOT
as relative path by @maltelorbach in https://github.com/ultralytics/yolov5/pull/5129 - Refactor
Detect()
anchors for ONNX <> OpenCV DNN compatibility by @SamFC10 in https://github.com/ultralytics/yolov5/pull/4833 - Add OpenCV DNN option for ONNX inference by @glenn-jocher in https://github.com/ultralytics/yolov5/pull/5136
- update
detect.py
in order to support torch script by @andreiionutdamian in https://github.com/ultralytics/yolov5/pull/5109
New Contributors (73)
- @robmarkcole made their first contribution in https://github.com/ultralytics/yolov5/pull/2732
- @timstokman made their first contribution in https://github.com/ultralytics/yolov5/pull/2856
- @Ab-Abdurrahman made their first contribution in https://github.com/ultralytics/yolov5/pull/2827
- @JoshSong made their first contribution in https://github.com/ultralytics/yolov5/pull/2871
- @MichHeilig made their first contribution in https://github.com/ultralytics/yolov5/pull/2883
- @r-blmnr made their first contribution in https://github.com/ultralytics/yolov5/pull/2890
- @fcakyon made their first contribution in https://github.com/ultralytics/yolov5/pull/2817
- @Ashafix made their first contribution in https://github.com/ultralytics/yolov5/pull/2658
- @albinxavi made their first contribution in https://github.com/ultralytics/yolov5/pull/2923
- @BZFYS made their first contribution in https://github.com/ultralytics/yolov5/pull/2934
- @ferdinandl007 made their first contribution in https://github.com/ultralytics/yolov5/pull/2932
- @jluntamazon made their first contribution in https://github.com/ultralytics/yolov5/pull/2953
- @hodovo made their first contribution in https://github.com/ultralytics/yolov5/pull/3010
- @jylink made their first contribution in https://github.com/ultralytics/yolov5/pull/2982
- @kepler62f made their first contribution in https://github.com/ultralytics/yolov5/pull/3058
- @KC-Zhang made their first contribution in https://github.com/ultralytics/yolov5/pull/3127
- @CristiFati made their first contribution in https://github.com/ultralytics/yolov5/pull/3137
- @cgerum made their first contribution in https://github.com/ultralytics/yolov5/pull/3104
- @adrianholovaty made their first contribution in https://github.com/ultralytics/yolov5/pull/3215
- @yeric1789 made their first contribution in https://github.com/ultralytics/yolov5/pull/3240
- @charlesfrye made their first contribution in https://github.com/ultralytics/yolov5/pull/3264
- @ChaofWang made their first contribution in https://github.com/ultralytics/yolov5/pull/3362
- @pizzaz93 made their first contribution in https://github.com/ultralytics/yolov5/pull/3368
- @tudoulei made their first contribution in https://github.com/ultralytics/yolov5/pull/3379
- @chocosaj made their first contribution in https://github.com/ultralytics/yolov5/pull/3422
- @SamSamhuns made their first contribution in https://github.com/ultralytics/yolov5/pull/3456
- @edificewang made their first contribution in https://github.com/ultralytics/yolov5/pull/3423
- @deanmark made their first contribution in https://github.com/ultralytics/yolov5/pull/3505
- @dependabot made their first contribution in https://github.com/ultralytics/yolov5/pull/3561
- @kalenmike made their first contribution in https://github.com/ultralytics/yolov5/pull/3530
- @masoodazhar made their first contribution in https://github.com/ultralytics/yolov5/pull/3591
- @wq9 made their first contribution in https://github.com/ultralytics/yolov5/pull/3612
- @xiaowk5516 made their first contribution in https://github.com/ultralytics/yolov5/pull/3638
- @thanhminhmr made their first contribution in https://github.com/ultralytics/yolov5/pull/3646
- @SpongeBab made their first contribution in https://github.com/ultralytics/yolov5/pull/3650
- @ZouJiu1 made their first contribution in https://github.com/ultralytics/yolov5/pull/3681
- @lb-desupervised made their first contribution in https://github.com/ultralytics/yolov5/pull/3687
- @batrlatom made their first contribution in https://github.com/ultralytics/yolov5/pull/3799
- @yellowdolphin made their first contribution in https://github.com/ultralytics/yolov5/pull/3722
- @Zigars made their first contribution in https://github.com/ultralytics/yolov5/pull/3804
- @feras-oughali made their first contribution in https://github.com/ultralytics/yolov5/pull/3833
- @vaaliferov made their first contribution in https://github.com/ultralytics/yolov5/pull/3852
- @san-soucie made their first contribution in https://github.com/ultralytics/yolov5/pull/3863
- @ketan-b made their first contribution in https://github.com/ultralytics/yolov5/pull/3864
- @johnohagan made their first contribution in https://github.com/ultralytics/yolov5/pull/3904
- @jmiranda-laplateforme made their first contribution in https://github.com/ultralytics/yolov5/pull/3923
- @eldarkurtic made their first contribution in https://github.com/ultralytics/yolov5/pull/3934
- @seven320 made their first contribution in https://github.com/ultralytics/yolov5/pull/3973
- @imyhxy made their first contribution in https://github.com/ultralytics/yolov5/pull/4126
- @IneovaAI made their first contribution in https://github.com/ultralytics/yolov5/pull/4238
- @junjihashimoto made their first contribution in https://github.com/ultralytics/yolov5/pull/4049
- @Justsubh01 made their first contribution in https://github.com/ultralytics/yolov5/pull/4309
- @orangeccc made their first contribution in https://github.com/ultralytics/yolov5/pull/4379
- @ahmadmustafaanis made their first contribution in https://github.com/ultralytics/yolov5/pull/4376
- @OmidSa75 made their first contribution in https://github.com/ultralytics/yolov5/pull/4428
- @huuquan1994 made their first contribution in https://github.com/ultralytics/yolov5/pull/4455
- @karasawatakumi made their first contribution in https://github.com/ultralytics/yolov5/pull/4588
- @YukunXia made their first contribution in https://github.com/ultralytics/yolov5/pull/4608
- @zhiqwang made their first contribution in https://github.com/ultralytics/yolov5/pull/4701
- @ELHoussineT made their first contribution in https://github.com/ultralytics/yolov5/pull/4676
- @joaodiogocosta made their first contribution in https://github.com/ultralytics/yolov5/pull/4727
- @jeanbmar made their first contribution in https://github.com/ultralytics/yolov5/pull/4728
- @Zegorax made their first contribution in https://github.com/ultralytics/yolov5/pull/4730
- @jveitchmichaelis made their first contribution in https://github.com/ultralytics/yolov5/pull/4742
- @kimnamu made their first contribution in https://github.com/ultralytics/yolov5/pull/4787
- @NauchtanRobotics made their first contribution in https://github.com/ultralytics/yolov5/pull/4893
- @SamFC10 made their first contribution in https://github.com/ultralytics/yolov5/pull/4914
- @d57montes made their first contribution in https://github.com/ultralytics/yolov5/pull/4958
- @EgOrlukha made their first contribution in https://github.com/ultralytics/yolov5/pull/5074
- @sandstorm12 made their first contribution in https://github.com/ultralytics/yolov5/pull/5112
- @qiningonline made their first contribution in https://github.com/ultralytics/yolov5/pull/5114
- @maltelorbach made their first contribution in https://github.com/ultralytics/yolov5/pull/5129
- @andreiionutdamian made their first contribution in https://github.com/ultralytics/yolov5/pull/5109
1、 yolov5l-fp16-320.tflite 88.94MB
2、 yolov5l.mlmodel 44.69MB
3、 yolov5l.onnx 177.58MB
4、 yolov5l.pt 89.21MB
5、 yolov5l6.pt 147.06MB
6、 yolov5m-fp16-320.tflite 40.53MB
7、 yolov5m.mlmodel 20.46MB
8、 yolov5m.onnx 80.82MB
9、 yolov5m.pt 40.72MB
10、 yolov5m6.pt 68.66MB
11、 yolov5m_Objects365.pt 43.01MB
12、 yolov5n-fp16-320.tflite 3.67MB
13、 yolov5n.mlmodel 2MB
14、 yolov5n.onnx 7.17MB
15、 yolov5n.pt 3.77MB
16、 yolov5n6.pt 6.56MB
17、 yolov5s-fp16-256x320.tflite 13.89MB
18、 yolov5s-fp16-320.tflite 13.89MB
19、 yolov5s-fp16-320x192.tflite 13.88MB
20、 yolov5s.mlmodel 7.11MB
21、 yolov5s.onnx 27.61MB
22、 yolov5s.pt 14.02MB
23、 yolov5s6.pt 24.47MB
24、 yolov5x-fp16-320.tflite 165.6MB
25、 yolov5x.mlmodel 83.05MB
26、 yolov5x.onnx 330.83MB
27、 yolov5x.pt 165.96MB
28、 yolov5x6.pt 269.32MB