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
vor 3 Jahren
Glenn Jocher
7ee5aed0b3
Improved check_suffix() robustness to `''` and `""` ( #5192 )
* Improved check_suffix() robustness to `''` and `""`
* Cleanup
vor 3 Jahren
NauchtanRobotics
0be58f16f0
Adjust legend labels for classes without instances ( #5174 )
* legend-labels Adjust legend labels for classes without instances.
* #5158 Re-indexed series names: only classes containing data.
* #5158 Re-indexed series names: only classes containing data.
* Cleanup
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
Ayush Chaurasia
1172ac15fb
W&B: DDP fix ( #5176 )
* fix dpp with wandb disabled
* PyCharm reformat
* Fix
* fix
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
Glenn Jocher
e520e820f1
Update autodownload fallbacks to v6.0 assets ( #5177 )
vor 3 Jahren
Ayush Chaurasia
d0bfeb3980
W&B: fix DDP with wandb disabled ( #5163 )
* fix dpp with wandb disabled
* PyCharm reformat
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
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
vor 3 Jahren
Jebastin Nadar
9d75e42f98
Refactor `Detect()` anchors for ONNX <> OpenCV DNN compatibility ( #4833 )
* refactor anchors and anchor_grid in Detect Layer
* fix CI failures by adding compatibility
* fix tf failure
* fix different devices errors
* Cleanup
* fix anchors overwriting issue
* better refactoring
* Remove self.anchor_grid shape check (redundant with self.grid check)
Also PEP8 / 120 line width
* Convert _make_grid() from static to dynamic method
* Remove anchor_grid.to(device)
clone() should already clone to same device as self.anchors
* fix different devices error
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
Glenn Jocher
4cf7d487a6
Update plots.py ( #5127 )
vor 3 Jahren
Glenn Jocher
276b674513
Fix SKU-110K HUB: `OSError` ( #5106 )
vor 3 Jahren
Egor Orel
48b00dbc0d
Re-open IP-camera videostream if disconnected ( #5074 )
* Re-open IP-camera videostream if disconnected. Provide IP-streaming analysis stability
* Re-open IP-camera videostream if disconnected. Provide IP-streaming analysis stability
* `self.imgs[i] *= 0` bug fix and cleanup
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
Glenn Jocher
57ce73cd4f
Update datasets.py comments ( #5088 )
vor 3 Jahren
Glenn Jocher
070af88108
Fix `yaml.safe_load()` ignore emoji errors ( #5060 )
vor 3 Jahren
Zhiqiang Wang
1922ddeac0
Fix pylint: do not use bare 'except' ( #5025 )
* Fix E722, do not use bare 'except'
* Remove used codes
* Add FileNotFoundError in LoadImagesAndLabels
* Remove AssertionError
* Ignore LoadImagesAndLabels
* Ignore downloads.py
* Ignore torch_utils.py
* Ignore train.py
* Ignore datasets.py
* Enable utils/download.py
* Fixing exception in thop
* Remove unused code
* Fixing exception in LoadImagesAndLabels
* Fixing exception in exif_size
* Fixing exception in parse_model
* Ignore exceptions in requests
* Revert the exception as suggested
* Revert the exception as suggested
vor 3 Jahren
Glenn Jocher
ba99092304
Update W&B README ( #5006 )
vor 3 Jahren
Kalen Michael
76d301bd21
Fix URL parsing bug ( #4998 )
* added callbacks
* added back callback to main
* added save_dir to callback output
* merged in upstream
* removed ghost code
* fixed parsing error for google temp links
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
Diego Montes
0c87478713
Update wandb_utils.py ( #4953 )
`is_valset_wandb_artifact` and `is_trainset_wandb_artifact` were referenced before assignment causing wandb to be unusable.
vor 3 Jahren
Diego Montes
c1bed601e9
Fix `isascii()` method calls for python 3.6 ( #4958 )
* fix isascii for python3.6
* update comment with python 3.7 note
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
Glenn Jocher
a820b43aca
Automatic Chinese fonts plotting ( #4951 )
* Automatic Chinese fonts plotting
* Default PIL=False
vor 3 Jahren
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.
vor 3 Jahren
Glenn Jocher
793383232f
Update default Albumentations ( #4931 )
vor 3 Jahren
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
vor 3 Jahren
Glenn Jocher
a64a4c839f
Replace `os.system('unzip file.zip')` -> `ZipFile.extractall()` ( #4919 )
* Replace `os.system('unzip file.zip')` -> `ZipFile.extractall()`
* Cleanup
vor 3 Jahren
Jiacong Fang
ce7fa81d4e
Avoid out-of-image class labels ( #4902 )
* Avoid out-of-image class labels
* Update plots.py
* Cleanup
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
Ayush Chaurasia
59aae85a7e
W&B: Fix dataset check ( #4879 )
* evolve fix
* Enable login timeout
* fix pkg
* check rank
* don't relogin
* fix
* reformat
vor 3 Jahren
Ayush Chaurasia
9febea79de
W&B: Login only in master processes ( #4866 )
* evolve fix
* Enable login timeout
* fix pkg
* check rank
* don't relogin
vor 3 Jahren
Glenn Jocher
8ad9e4ed5b
Annotator `check_font()` RANK -1 remove progress ( #4864 )
* Annotator `check_font()` RANK -1 remove progress
* Cleanup
vor 3 Jahren
Glenn Jocher
4c839eeb10
Simplify `check_requirements()` usage ( #4855 )
* Simplify `check_requirements()` usage
* remove assert, print()
vor 3 Jahren
Glenn Jocher
4d1a2ac87e
Update `sys.path.append(str(ROOT))` ( #4852 )
* Update `sys.path.append(str(ROOT))`
* Cleanup
vor 3 Jahren
Glenn Jocher
3732f9ac8a
Refactor argparser printing to `print_args()` ( #4850 )
* Refactor argparser printing to `print_args()`
* Cleanup
vor 3 Jahren
Glenn Jocher
84bfa89236
Consolidate `init_seeds()` ( #4849 )
vor 3 Jahren
Ayush Chaurasia
302a1b0bb0
W&B: Enable login timeout ( #4843 )
* evolve fix
* Enable login timeout
* fix pkg
vor 3 Jahren
Glenn Jocher
4fdaec0449
Single `cache_version` definition ( #4846 )
Defines dataset labels *.cache version in a single place, fixing a bug introduced in #4845 .
vor 3 Jahren
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.
vor 3 Jahren
Glenn Jocher
3a822a22ce
`PIL.ImageDraw.text(anchor=...)` removal, reduce to `>=7.1.2` ( #4842 )
* Unpin Pillow
* Update requirements.txt
* Update plots.py
vor 3 Jahren
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
vor 3 Jahren
Kalen Michael
43b2817f6e
Feature/fix export on url ( #4823 )
* added callbacks
* added back callback to main
* added save_dir to callback output
* merged in upstream
* removed ghost code
* added url check
* Add url2file()
* Update file-only
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
Jihoon Kim
fcb225c1c8
Shuffle all 4(or 9) images in mosaic augmentation ( #4787 )
Thank you for sharing nice open-source codes 👍
I applied to shuffle the order of all 4(or 9) images in mosaic augmentation
Currently, the order of images in mosaic augmentation is not completely random.
The remaining images except the first are randomly arranged. Apply shuffle all to increase the diversity of data composition.
vor 3 Jahren
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
vor 3 Jahren
Glenn Jocher
c47be26f34
Replace `path.absolute()` with `path.resolve()` ( #4763 )
vor 3 Jahren
Glenn Jocher
cd810c8286
Centralize `user_config_dir()` decision making ( #4755 )
vor 3 Jahren
Glenn Jocher
22ee6fb7c1
Update `is_writeable()` for 2 methods ( #4744 )
* Writeable test
* Fix
* Cleanup
vor 3 Jahren
Glenn Jocher
a144536f88
Fix `is_writeable()` for 3 OS support ( #4743 )
* Fix `is_writeable()` for 3 OS support
* Update general.py
vor 3 Jahren
Josh Veitch-Michaelis
19e28e3bfe
Add `callbacks` to train function in W&B sweep ( #4742 )
* add callbacks to train function in wandb sweep
Fix following https://github.com/ultralytics/yolov5/pull/4688 which modified the function signature to `train`
* Cleanup
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
vor 3 Jahren
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
vor 3 Jahren
JD Costa
deb434aefa
Make CONFIG_DIR configurable per environment variable ( #4727 )
vor 3 Jahren
Glenn Jocher
8e94bf62d9
Add `user_config_dir('Ultralytics')` ( #4715 )
* Add `user_config_dir`
* Linux to .config
vor 3 Jahren
Glenn Jocher
25a7e1dae5
Update `check_yaml()` comment ( #4713 )
* Update `check_yaml()` comment
* Cleanup
vor 3 Jahren
Glenn Jocher
f984cce52a
Fix `check_suffix()` ( #4712 )
Fix a bug when `file=''`
vor 3 Jahren
Glenn Jocher
a2b3c71636
Add suffix checks ( #4711 )
* Add suffix checks
* Cleanup
* Cleanup2
* Cleanup3
vor 3 Jahren