Commit Graph
100 Commits
Author SHA1 Message Date
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
Glenn Jocher 7af1b4c266 Improved detect.py timing (#4741)
* Improved detect.py timing

* Eliminate 1 time_sync() call

* Inference-only time

* dash

* #Save section

* Cleanup
2021-09-10 14:34:09 +02:00
Glenn Jocher c5360f6e70 Fix --data from_HUB.zip (#4732)
@KalenMike
2021-09-09 18:01:59 +02:00
Glenn Jocher 4a025ae97f Fix user_config_dir() for GCP/AWS functions (#4726)
* Fix `user_config_dir()` for GCP/AWS functions

Compatability fix for GCP functions and AWS lambda for user config directory in https://github.com/ultralytics/yolov5/pull/4628

* Windows skip check
2021-09-09 17:57:46 +02:00
Glenn Jocher 8e94bf62d9 Add user_config_dir('Ultralytics') (#4715)
* Add `user_config_dir`

* Linux to .config
2021-09-08 18:13:59 +02:00
Glenn Jocher 25a7e1dae5 Update check_yaml() comment (#4713)
* Update `check_yaml()` comment

* Cleanup
2021-09-08 16:01:03 +02:00
Glenn Jocher f984cce52a Fix check_suffix() (#4712)
Fix a bug when `file=''`
2021-09-08 15:06:31 +02:00
Glenn Jocher a2b3c71636 Add suffix checks (#4711)
* Add suffix checks

* Cleanup

* Cleanup2

* Cleanup3
2021-09-08 14:36:12 +02:00
Glenn Jocher 548745181a EarlyStopper updates (#4679) 2021-09-05 19:09:53 +02:00
Glenn Jocher fad57c29cd Fix is_coco on missing data['val'] key (#4642) 2021-09-01 16:30:14 +02:00
Glenn Jocher 234e8ae6fa Fix for plot_evolve() string argument (#4639) 2021-09-01 15:00:13 +02:00
Glenn Jocher de534e9221 Fix 3 for Arial.ttf redownloads with hub inference (#4629)
Fix 3 for Arial.ttf redownloads with hub inference, follow-on to #4628.
2021-08-31 20:54:10 +02:00
Glenn Jocher a4e8f78c5e Fix 2 for Arial.ttf redownloads with hub inference (#4628) 2021-08-31 20:05:17 +02:00
Glenn Jocher ba0f80874f Fix for Arial.ttf redownloads with hub inference (#4627) 2021-08-31 15:01:41 +02:00
Glenn Jocher 50a9828679 DDP torch.jit.trace() --sync-bn fix (#4615)
* Remove assert

* debug0

* trace=not opt.sync

* sync to sync_bn fix

* Cleanup
2021-08-30 18:35:07 +02:00
Glenn Jocher bb5ebc290e Close matplotlib plots after opening (#4612)
* Close plots

* Replace fig.close() for plt.close()
2021-08-30 17:22:21 +02:00
Glenn Jocher 3a72d4a7e3 Update check_git_status() warning (#4610) 2021-08-30 17:05:45 +02:00
Glenn Jocher e7d1842a98 Auto-download Arial.ttf on init (#4606)
* Auto-download Arial.ttf on init

* Fix ROOT
2021-08-30 14:58:22 +02:00
Glenn Jocher bb4da083d1 Created using Colaboratory 2021-08-30 14:33:53 +02:00
Glenn Jocher dc13820c9d TensorBoard on_train_end() speed improvements (#4605) 2021-08-30 13:01:41 +02:00
Glenn Jocher b894e69dfc Update mosaic plots font size (#4596) 2021-08-29 18:05:49 +02:00
Glenn Jocher bfad364455 Created using Colaboratory 2021-08-29 17:56:35 +02:00
Glenn Jocher dbbc6b5c48 Re-order plots.py to class-first (#4595) 2021-08-29 17:44:51 +02:00
Glenn Jocher e5e5ebc799 Auto-UTF handling (#4594) 2021-08-29 17:15:18 +02:00
Glenn Jocher de44376d1b Create Annotator() class (#4591)
* Add Annotator() class

* Download Arial

* 2x for loop

* Cleanup

* tuple 2 list

* max_size=1920

* bold logging results to

* tolist()

* im = annotator.im

* PIL save in detect.py

* Smart asarray in detect.py

* revert to cv2.imwrite

* Cleanup

* Return result asarray

* Add `Profile()` profiler

* CamelCase Timeout

* Resize after mosaic

* pillow>=8.0.0

* daemon imwrite

* Add cv2 support

* Remove plot_wh_methods and plot_one_box

* pil=False for hubconf.py annotations

* im.shape bug fix

* colorstr common.py

* join daemons

* Update t.daemon

* Removed daemon saving
2021-08-29 16:46:13 +02:00
Glenn Jocher bbfafeabdb Add Profile() profiler (#4587)
* Add `Profile()` profiler

* CamelCase Timeout
2021-08-29 13:49:04 +02:00
Glenn Jocher d7aa3f153d Remove image_weights DDP code (#4579)
* Initial commit

* Update
2021-08-28 19:17:21 +02:00
Glenn Jocher 93cc015748 Add EarlyStopping feature (#4576)
* Add EarlyStopping feature

* Add comment

* Cleanup

* Cleanup2

* debug

* debug2

* debug3

* debug3

* debug4

* debug5

* debug6

* debug7

* debug8

* debug9

* debug10

* debug11

* debug12

* Cleanup

* Add TODO for known DDP issue
2021-08-28 19:03:52 +02:00