Commit Graph
100 Commits
Author SHA1 Message Date
Glenn Jocherandpre-commit 34b859a41e Keras CI fix (#5486)
* Keras CI fix

* pre-commit fixes

* Update ci-testing.yml

Co-authored-by: pre-commit <pre-commit@example.com>
2021-11-03 19:25:44 +01:00
Glenn Jocher 06bf8ef7e5 Add tf.py verification printout (#5484)
* Update tf.py with verified confirmation

* Update ci-testing.yml

* Update ci-testing.yml
2021-11-03 19:04:51 +01:00
Glenn Jocher 62d77a1027 Created using Colaboratory 2021-11-03 18:55:25 +01:00
Glenn Jocher 84a8099b75 Update torch_utils.py import LOGGER (#5483) 2021-11-03 17:17:38 +01:00
Glenn Jocher df30426c03 Improve GPU name (#5478)
* Improve GPU name

* Update torch_utils.py

* Update torch_utils.py

* Update torch_utils.py

* Update torch_utils.py
2021-11-03 16:59:53 +01:00
Glenn Jocher 0eb37ad8af Remove check_requirements(('tensorflow>=2.4.1',)) (#5476)
`check_requirements()` is unreliable for large packages like torch and tensorflow that may have multiple installation routes (i.e. conda, pip, tensorflow-cpu, etc.)
2021-11-03 14:51:37 +01:00
Glenn Jocher 042f02ff9b Fix tf.py LoadImages() dataloader return values (#5455) 2021-11-02 23:04:15 +01:00
Glenn Jocher 4c0982a243 Update README.md (#5438)
2-line update
2021-11-01 18:28:14 +01:00
Glenn Jocherandpre-commit 7b1f7aec46 Update get_loggers() (#4854)
* Update `set_logging()`

* Update export.py

* pre-commit fixes

* Update LoadImages

* Update LoadStreams

* Update print_args

* Single LOGGER definition

* yolo.py fix

Co-authored-by: pre-commit <pre-commit@example.com>
2021-11-01 18:22:13 +01:00
Glenn Jocher 8c326a1edf Meshgrid indexing='ij' for PyTorch 1.10 (#5309)
* Meshgrid `indexing='ij'` for PyTorch 1.10

Will not merge currently as breaks backwards compatibility.

* Meshgrid `indexing='ij'` for PyTorch 1.10

Will not merge currently as breaks backwards compatibility.

* Add check_version hard argument

* Update comment
2021-11-01 14:33:08 +01:00
Glenn Jocher 5d4258fac5 Fix MixConv2d() remove shortcut + apply depthwise (#5410) 2021-10-30 13:38:51 +02:00
Glenn Jocherandpre-commit 7f9bbf0268 Update GitHub issues templates (#5404)
* Update GitHub issues templates

* pre-commit fixes

Co-authored-by: pre-commit <pre-commit@example.com>
2021-10-29 23:16:04 +02:00
Glenn Jocher a4fece8c14 DDP nl fix (#5332) 2021-10-25 16:03:39 +02:00
Glenn Jocher 9c31a66f5d Update AutoShape.forward() model.classes example (#5324) 2021-10-25 14:03:25 +02:00
Glenn Jocher ca19df5f7f Add autobatch feature for best batch-size estimation (#5092)
* Autobatch

* fix mem

* fix mem2

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Update train.py

* print result

* Cleanup print result

* swap fix in call

* to 64

* use total

* fix

* fix

* fix

* fix

* fix

* Update

* Update

* Update

* Update

* Update

* Update

* Update

* Cleanup printing

* Update final printout

* Update autobatch.py

* Update autobatch.py

* Update autobatch.py
2021-10-25 13:56:13 +02:00
Glenn Jocher 79d8f1f678 Created using Colaboratory 2021-10-22 21:19:23 +02:00
Glenn Jocher b760acec11 Created using Colaboratory 2021-10-22 21:11:29 +02:00
Glenn Jocher 441b47c443 More informative EarlyStopping() message (#5303) 2021-10-22 20:02:19 +02:00
Glenn Jocher a18b0c36cd Update rebase.yml with workflows permissions (#5255)
Update token with workflows permissions
2021-10-19 12:02:15 +02:00
Glenn Jocher 4f5e274eee Update rebase.yml (#5245) 2021-10-19 09:46:05 +02:00
Glenn Jocher 752d97df2c Add on_fit_epoch_end callback (#5232)
* Add `on_fit_epoch_end` callback

* Add results to train

* Update __init__.py
2021-10-18 14:28:22 +02:00
Glenn Jocher 13f7275555 Update/inplace ops (#5233)
* Clip Objects365 autodownload labels (#5214)

Fixes out of bounds labels that seem to affect ~10% of images in dataset.

* Inplace ops
2021-10-18 14:24:48 +02:00
Glenn Jocher 0000334a6f Update Objects365.yaml val count (#5212) 2021-10-15 12:40:40 -07:00
Glenn Jocher 991c654e81 Autofix duplicate label handling (#5210)
* Autofix duplicate labels

PR changes duplicate label handling from report error and ignore image-label pair to report warning and autofix image-label pair. 

This should fix this common issue for users and allow everyone to get started and get a model trained faster and easier than before.

* sign fix

* Cleanup

* Increment cache version

* all to any fix
2021-10-15 12:32:08 -07:00
Glenn Jocher 1c9f710b46 Add hyp.scratch-med.yaml (#5196)
* Add hyp.scratch-med.yaml

* Update hyp.scratch-med.yaml
2021-10-14 20:40:30 -07:00
Glenn Jocher 6b31cfd793 Highlight contributors in README (#5173)
* Highlight contributors in README

* Adjust Contact section

* Update README.md
2021-10-14 12:49:16 -07:00
Glenn Jocher 7ee5aed0b3 Improved check_suffix() robustness to '' and "" (#5192)
* Improved check_suffix() robustness to `''` and `""`

* Cleanup
2021-10-14 12:00:39 -07:00
Glenn Jocher e520e820f1 Update autodownload fallbacks to v6.0 assets (#5177) 2021-10-13 19:58:38 -07:00
Glenn Jocher a346926996 Add class filtering to LoadImagesAndLabels() dataloader (#5172)
* Add train class filter feature to datasets.py

Allows for training on a subset of total classes if `include_class` list is defined on datasets.py L448:
```python
        include_class = []  # filter labels to include only these classes (optional)
```

* segments fix
2021-10-13 15:48:54 -07:00
Glenn Jocher b754525e99 Check 'onnxruntime-gpu' if torch.has_cuda (#5087)
* Check `'onnxruntime-gpu' if torch.has_cuda`

* fix indent
2021-10-12 22:25:38 -07:00
Glenn Jocher 20a809dee5 Update stale.yml (#5156) 2021-10-12 17:54:56 -07:00
Glenn Jocher 26784afd99 Use YOLOv5n for CI testing (#5154) 2021-10-12 08:42:26 -07:00
Glenn Jocher 956be8e642 YOLOv5 release v6.0 (#5141)
* Update P5 models

* Update P6 models

* Update with GFLOPs and Params

* Update with GFLOPs and Params

* Update README

* Update

* Update README

* Update

* Update

* Add times

* Update README

* Update results

* Update results

* Update results

* Update hyps

* Update plots

* Update plots

* Update README.md

* Add nano models to hubconf.py
2021-10-11 23:47:18 -07:00
Glenn Jocher 0bf24cf641 Add OpenCV DNN option for ONNX inference (#5136)
* Add OpenCV DNN option for ONNX inference

Usage:

```bash
python detect.py --weights yolov5s.onnx  # ONNX Runtime inference
python detect.py --weights yolov5s.onnx -dnn  # OpenCV DNN inference
```

* DNN prediction to tensor

* Update detect.py
2021-10-11 12:39:20 -07:00
Glenn Jocher 4cf7d487a6 Update plots.py (#5127) 2021-10-11 01:59:22 -07:00
Glenn Jocher 7d37b3c52e Update val.py pad = 0.0 if task == speed else 0.5 (#5121)
* Update val.py `pad = 0.0 if task == speed else 0.5`

* Cleanup
2021-10-10 23:20:42 -07:00
Glenn Jocher ba4b79de8b Update val.py --speed and --study usages (#5120) 2021-10-10 21:15:28 -07:00
Glenn Jocher 4f9718abe6 Pass --device for --task study (#5118) 2021-10-10 15:07:26 -07:00
Glenn Jocher 276b674513 Fix SKU-110K HUB: OSError (#5106) 2021-10-09 00:12:59 -07:00
Glenn Jocher 57ce73cd4f Update datasets.py comments (#5088) 2021-10-07 16:04:08 -07:00
Glenn Jocher ce8e5dc8bb Update Dockerfile to ADD Arial.ttf (#5084)
* Update Dockerfile to `ADD` Arial.ttf

Fix for `Arial.ttf download in Docker` #5078

* Cleanup

* Cleanup2
2021-10-07 14:16:33 -07:00
Glenn Jocher 070af88108 Fix yaml.safe_load() ignore emoji errors (#5060) 2021-10-05 13:41:52 -07:00
Glenn Jocher 5afc9c25ef Implement --save-period locally (#5047)
This PR adds a new training argument `--save-period` to save training checkpoints every `x` epochs. To save training every 50 epochs for example:
```
python train.py --save-period 50  # saves epoch50.pt, epoch100.pt, epoch150.pt, ... etc.
```

This saved checkpoints in addition to existing last.pt and best.pt checkpoints and does not affect their behavior. Default value is -1, i.e. disabled.
2021-10-04 18:48:46 -07:00
Glenn Jocher d133968b1e Clip TTA Augmented Tails (#5028)
* Clip TTA Augmented Tails

Experimental TTA update.

* Update yolo.py

* Update yolo.py

* Update yolo.py

* Update yolo.py
2021-10-04 15:48:55 -07:00
Glenn Jocher b0ade48457 Fix missing opt.device on --task study (#5031) 2021-10-02 17:55:55 -07:00
Glenn Jocher cce7e78fae Created using Colaboratory 2021-09-30 19:10:55 -07:00
Glenn Jocher 89a6e9ffa7 Compute loss on final val (#5017) 2021-09-30 15:16:11 -07:00
Glenn Jocher b20e381492 Update README.md (#5015) 2021-09-30 14:06:00 -07:00
Glenn Jocher 452e84703c Update train.py (#5014) 2021-09-30 13:57:53 -07:00
Glenn Jocher ba99092304 Update W&B README (#5006) 2021-09-30 00:35:00 -07:00
Glenn Jocher 1916226841 Created using Colaboratory 2021-09-29 22:18:16 -07:00
Glenn Jocher 42354d7025 Update README.md 2021-09-29 16:56:10 -07:00
Glenn Jocher cd35a009ba Revert torch.hub.load() test (#4986)
Temporarily reverts https://github.com/ultralytics/yolov5/pull/4978 until torch 1.10 is released, which should resolve `urllib.error.HTTPError: HTTP Error 403: rate limit exceeded` errors generated by torch hub from GitHub actions runners.
2021-09-28 20:11:20 -07:00
Glenn Jocher 9988059b10 Clickable CI badge (#4985) 2021-09-28 17:46:14 -07:00
Glenn Jocher 6b19f728a1 Created using Colaboratory 2021-09-28 17:33:48 -07:00
Glenn Jocher cff7d2af45 Created using Colaboratory 2021-09-28 17:29:05 -07:00
Glenn Jocher 0c93ec762a Faster --img 64 CI tests (#4979) 2021-09-28 12:41:28 -07:00
Glenn Jocher 94705a9528 Add Hub custom models to CI tests (#4978)
* Update ci-testing.yml for Hub custom model tests

* Update ci-testing.yml
2021-09-28 12:28:18 -07:00
Glenn Jocher 38c779b099 Created using Colaboratory 2021-09-28 10:04:56 -07:00
Glenn Jocher fb982d6030 Fix relative ROOT Pytorch Hub custom model bug (#4974)
* Fix relative `ROOT` Pytorch Hub custom model bug

* Update yolo.py
2021-09-28 06:36:12 -07:00
Glenn Jocher 2993c3fa7a Add roboflow (#4956) 2021-09-27 19:00:05 -07:00
Glenn Jocher 3aeb57d66f Created using Colaboratory 2021-09-27 18:32:22 -07:00
Glenn Jocher 5ed28603cf Update relative ROOT logic (#4955)
* Update relative `ROOT` logic

* python 3.9 Path().is_relative_to() removal
2021-09-27 18:26:41 -07:00
Glenn Jocher 4e04cb0dc8 Allow YOLOv5 execution from arbitrary cwd (#4954)
* Allow YOLOv5 execution from arbitrary `cwd`

* Fix str bugs
2021-09-27 17:40:20 -07:00
Glenn Jocher a820b43aca Automatic Chinese fonts plotting (#4951)
* Automatic Chinese fonts plotting

* Default PIL=False
2021-09-27 13:48:15 -07:00
Glenn Jocher c5ba2abb4a Update Dockerfile (#4935) 2021-09-26 19:16:14 -07:00
Glenn Jocher 5a8e4343d8 Scope check_file() search space (#4933)
`check_file()` is now limited to searching opt-in directories: /data, /models, /utils. This prevents large non-project directories like /.git and /venv from being searched, which may cause `check_file()` to slow significantly.
2021-09-26 17:11:46 -07:00
Glenn Jocher 793383232f Update default Albumentations (#4931) 2021-09-26 12:10:33 -07:00
Glenn Jocher d856c48298 Validate best.pt on train end (#4889)
* Validate best.pt on train end

* 0.7 iou for COCO only

* pass callbacks

* active model.float() if not half

* print Validating best.pt...

* add newline
2021-09-26 11:54:53 -07:00
Glenn Jocher e687873436 Add Slack Forum badge to README (#4930)
Add badge with link to join the new YOLOv5 Slack Forum!
https://join.slack.com/t/ultralytics/shared_invite/zt-w29ei8bp-jczz7QYUmDtgo6r6KcMIAg
2021-09-26 10:54:55 -07:00
Glenn Jocher 39c17ce0b9 Fix root referenced before assignment (#4920)
* Fix `root` referenced before assignment

Fix for bug introduced by #4919 discovered on VOC autodownload:
```
python train.py --data VOC.yaml
```

* Cleanup
2021-09-25 09:16:14 -07:00
Glenn Jocher a64a4c839f Replace os.system('unzip file.zip') -> ZipFile.extractall() (#4919)
* Replace `os.system('unzip file.zip')` -> `ZipFile.extractall()`

* Cleanup
2021-09-25 08:52:36 -07:00
Glenn Jocher 8ad9e4ed5b Annotator check_font() RANK -1 remove progress (#4864)
* Annotator `check_font()` RANK -1 remove progress

* Cleanup
2021-09-20 13:57:23 +02:00
Glenn Jocher 2b3109eeb0 Fix DDP destruction LOGGER.info() (#4863) 2021-09-20 13:12:48 +02:00
Glenn Jocher 2809616345 Update Dockerfile (#4862) 2021-09-20 13:10:41 +02:00
Glenn Jocher 40d1c80503 Update Dockerfile (#4861) 2021-09-20 12:22:24 +02:00
Glenn Jocher 9ef94940aa Update greetings.yml (#4856) 2021-09-18 18:43:26 +02:00
Glenn Jocher 4c839eeb10 Simplify check_requirements() usage (#4855)
* Simplify `check_requirements()` usage

* remove assert, print()
2021-09-18 18:34:30 +02:00
Glenn Jocher 4d1a2ac87e Update sys.path.append(str(ROOT)) (#4852)
* Update `sys.path.append(str(ROOT))`

* Cleanup
2021-09-18 15:02:08 +02:00
Glenn Jocher 3732f9ac8a Refactor argparser printing to print_args() (#4850)
* Refactor argparser printing to `print_args()`

* Cleanup
2021-09-18 14:16:19 +02:00
Glenn Jocher 84bfa89236 Consolidate init_seeds() (#4849) 2021-09-18 13:28:42 +02:00
Glenn Jocher 4fdaec0449 Single cache_version definition (#4846)
Defines dataset labels *.cache version in a single place, fixing a bug introduced in #4845.
2021-09-17 18:01:52 +02:00
Glenn Jocher fe39562a5f Sorted datasets update to cache_labels() (#4845)
PR should produce datasets sorted alphabetically by filename. Cache version incremented to 0.5. 

Note: will force a one-time re-caching of existing datasets on first-use.
2021-09-17 17:35:45 +02:00
Glenn Jocher 3a822a22ce PIL.ImageDraw.text(anchor=...) removal, reduce to >=7.1.2 (#4842)
* Unpin Pillow

* Update requirements.txt

* Update plots.py
2021-09-17 13:02:37 +02:00
Glenn Jocher e83792e65c Created using Colaboratory 2021-09-17 11:40:47 +02:00
Glenn Jocher 850f98f508 Created using Colaboratory 2021-09-17 11:39:00 +02:00
Glenn Jocher 27a4736e96 Fix val.py study plot (#4831)
* Fix val.py study plot

* call plot_val_study

* Rename plot_study_txt to plot_val_study
2021-09-16 17:55:58 +02:00
Glenn Jocher 6b44ecd53d Fix 'PyTorch starting from' for URL weights (#4828)
Follows #4823
2021-09-16 14:38:35 +02:00
Glenn Jocher 0dc725e3dc Refactor forward() method profiling (#4816) 2021-09-16 09:47:34 +02:00
Glenn Jocher 621b6d5ba8 Evolution --resume fix (#4802)
Also disable `/weights` dir creation when evolving as no weights are saved and empty folder causes user expectations of weights.
2021-09-15 13:13:33 +02:00
Glenn Jocher b74dd4ba4f Add --int8 argument (#4799)
* Add `--int8` argument

* parents[0] bug fix

* Fix order
2021-09-15 11:33:46 +02:00
Glenn Jocher aa1859909c Update ci-testing.yml (#4772) 2021-09-12 23:40:28 +02:00
Glenn Jocher b161edf873 Update ci-testing.yml (#4770) 2021-09-12 17:55:41 +02:00
Glenn Jocher c3a93d783d Add TensorFlow formats to export.py (#4479)
* Initial commit

* Remove unused export_torchscript return

* ROOT variable

* Add prefix to fcn arg

* fix ROOT

* check_yaml into run()

* interim fixes

* imgsz=(320, 320)

* Hardcode tf_raw_resize False

* Finish opt elimination

* Update representative_dataset_gen()

* Update export.py with TF methods

* SiLU and GraphDef fixes

* file_size() directory handling feature

* export fixes

* add lambda: to representative_dataset

* Detect training False default

* Fuse false for TF models

* Embed agnostic NMS arguments

* Remove lambda

* TensorFlow.js export success

* Add pb to Usage

* Add *_tfjs_model/ to ignore files

* prepend YOLOv5 to function headers

* Remove end --- comments

* parameterize tfjs export pb file

* update run() data default /ROOT

* update --include help

* update imports

* return ct_model

* Consolidate TFLite export

* pb prerequisite to tfjs

* TF modules CamelCase

* Remove exports from tf.py and cleanup

* pass agnostic NMS arguments

* CI

* CI

* ignore *_web_model/

* Add tensorflow to CI dependencies

* CI tensorflow-cpu

* Update requirements.txt

* Remove tensorflow check_requirement

* CI coreml tfjs

* export only onnx torchscript

* reorder exports torchscript first
2021-09-12 15:52:24 +02:00
Glenn Jocher c47be26f34 Replace path.absolute() with path.resolve() (#4763) 2021-09-11 22:46:33 +02:00
Glenn Jocher cd810c8286 Centralize user_config_dir() decision making (#4755) 2021-09-11 16:32:08 +02:00
Glenn Jocher 22ee6fb7c1 Update is_writeable() for 2 methods (#4744)
* Writeable test

* Fix

* Cleanup
2021-09-10 17:52:33 +02:00
Glenn Jocher ff35292520 Add TF and TFLite models to .dockerignore (#4748) 2021-09-10 17:52:21 +02:00
Glenn Jocher 6c554b75ea Add TF and TFLite models to .gitignore (#4747) 2021-09-10 17:51:22 +02:00
Glenn Jocher a144536f88 Fix is_writeable() for 3 OS support (#4743)
* Fix `is_writeable()` for 3 OS support

* Update general.py
2021-09-10 17:06:22 +02:00