Commit Graph

42 Commits (f3c3d2ce5d85ba77336a9d0a87c6a446732cdda6)

Author SHA1 Message Date
Glenn Jocher f3c3d2ce5d
Merge `develop` branch into `master` (#3518)
* update ci-testing.yml (#3322)

* update ci-testing.yml

* update greetings.yml

* bring back os matrix

* update ci-testing.yml (#3322)

* update ci-testing.yml

* update greetings.yml

* bring back os matrix

* Enable direct `--weights URL` definition (#3373)

* Enable direct `--weights URL` definition

@KalenMike this PR will enable direct --weights URL definition. Example use case:
```
python train.py --weights https://storage.googleapis.com/bucket/dir/model.pt
```

* cleanup

* bug fixes

* weights = attempt_download(weights)

* Update experimental.py

* Update hubconf.py

* return bug fix

* comment mirror

* min_bytes

* Update tutorial.ipynb (#3368)

add Open in Kaggle badge

* `cv2.imread(img, -1)` for IMREAD_UNCHANGED (#3379)

* Update datasets.py

* comment

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* COCO evolution fix (#3388)

* COCO evolution fix

* cleanup

* update print

* print fix

* Create `is_pip()` function (#3391)

Returns `True` if file is part of pip package. Useful for contextual behavior modification.

```python
def is_pip():
    # Is file in a pip package?
    return 'site-packages' in Path(__file__).absolute().parts
```

* Revert "`cv2.imread(img, -1)` for IMREAD_UNCHANGED (#3379)" (#3395)

This reverts commit 21a9607e00.

* Update FLOPs description (#3422)

* Update README.md

* Changing FLOPS to FLOPs.

Co-authored-by: BuildTools <unconfigured@null.spigotmc.org>

* Parse URL authentication (#3424)

* Parse URL authentication

* urllib.parse.unquote()

* improved error handling

* improved error handling

* remove %3F

* update check_file()

* Add FLOPs title to table (#3453)

* Suppress jit trace warning + graph once (#3454)

* Suppress jit trace warning + graph once

Suppress harmless jit trace warning on TensorBoard add_graph call. Also fix multiple add_graph() calls bug, now only on batch 0.

* Update train.py

* Update MixUp augmentation `alpha=beta=32.0` (#3455)

Per VOC empirical results https://github.com/ultralytics/yolov5/issues/3380#issuecomment-853001307 by @developer0hye

* Add `timeout()` class (#3460)

* Add `timeout()` class

* rearrange order

* Faster HSV augmentation (#3462)

remove datatype conversion process that can be skipped

* Add `check_git_status()` 5 second timeout (#3464)

* Add check_git_status() 5 second timeout

This should prevent the SSH Git bug that we were discussing @KalenMike

* cleanup

* replace timeout with check_output built-in timeout

* Improved `check_requirements()` offline-handling (#3466)

Improve robustness of `check_requirements()` function to offline environments (do not attempt pip installs when offline).

* Add `output_names` argument for ONNX export with dynamic axes (#3456)

* Add output names & dynamic axes for onnx export

Add output_names and dynamic_axes names for all outputs in torch.onnx.export. The first four outputs of the model will have names output0, output1, output2, output3

* use first output only + cleanup

Co-authored-by: Samridha Shrestha <samridha.shrestha@g42.ai>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* Revert FP16 `test.py` and `detect.py` inference to FP32 default (#3423)

* fixed inference bug ,while use half precision

* replace --use-half with --half

* replace space and PEP8 in detect.py

* PEP8 detect.py

* update --half help comment

* Update test.py

* revert space

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* Add additional links/resources to stale.yml message (#3467)

* Update stale.yml

* cleanup

* Update stale.yml

* reformat

* Update stale.yml HUB URL (#3468)

* Stale `github.actor` bug fix (#3483)

* Explicit `model.eval()` call `if opt.train=False` (#3475)

* call model.eval() when opt.train is False

call model.eval() when opt.train is False

* single-line if statement

* cleanup

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>

* check_requirements() exclude `opencv-python` (#3495)

Fix for 3rd party or contrib versions of installed OpenCV as in https://github.com/ultralytics/yolov5/issues/3494.

* Earlier `assert` for cpu and half option (#3508)

* early assert for cpu and half option

early assert for cpu and half option

* Modified comment

Modified comment

* Update tutorial.ipynb (#3510)

* Reduce test.py results spacing (#3511)

* Update README.md (#3512)

* Update README.md

Minor modifications

* 850 width

* Update greetings.yml

revert greeting change as PRs will now merge to master.

Co-authored-by: Piotr Skalski <SkalskiP@users.noreply.github.com>
Co-authored-by: SkalskiP <piotr.skalski92@gmail.com>
Co-authored-by: Peretz Cohen <pizzaz93@users.noreply.github.com>
Co-authored-by: tudoulei <34886368+tudoulei@users.noreply.github.com>
Co-authored-by: chocosaj <chocosaj@users.noreply.github.com>
Co-authored-by: BuildTools <unconfigured@null.spigotmc.org>
Co-authored-by: Yonghye Kwon <developer.0hye@gmail.com>
Co-authored-by: Sam_S <SamSamhuns@users.noreply.github.com>
Co-authored-by: Samridha Shrestha <samridha.shrestha@g42.ai>
Co-authored-by: edificewang <609552430@qq.com>
2021-06-08 10:22:10 +02:00
WangChaofeng ef4d53818d
ONNX export in .train() mode fix (#3362) 2021-05-27 14:10:14 +02:00
Glenn Jocher 7b36e38cf8
Check CoreML models.train() mode (#3262)
* Check CoreML models.train() mode

* Update export.py
2021-05-20 15:22:36 +02:00
Cristi Fati 9ab561dbfc
Parameterize ONNX `--opset-version` (#3154) 2021-05-16 16:13:03 +02:00
Cristi Fati d9b4e6b748
Add `--include torchscript onnx coreml` argument (#3137)
* Allow users to skip exporting in formats that they don't care about

* Correct comments

* Update export.py

renamed --skip-format to --exclude

* Switched format from exclude to include (as instructed by @glenn-jocher)

* cleanup

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-05-12 19:46:32 +02:00
Glenn Jocher 525f4f86a9
Add --optimize argument (#3093)
Fix for c++ runtime errors in https://github.com/ultralytics/yolov5/issues/2973
2021-05-10 12:13:44 +02:00
Glenn Jocher e97d129db4
Update export.py with --train mode argument (#3066) 2021-05-07 13:10:07 +02:00
Glenn Jocher 3ef3a95cfa
Do not optimize CoreML TorchScript model (#3055) 2021-05-06 17:23:33 +02:00
jylink b292837e36
Fix ONNX export using --grid --simplify --dynamic simultaneously (#2982)
* Update yolo.py

* Update export.py

* fix export grid

* Update export.py, remove detect export attribute

* rearrange if order

* remove --grid, default inplace=False

* rename exp_dynamic to onnx_dynamic, comment

* replace bs with 1 in anchor_grid[i] index 0

* Update export.py

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-05-03 19:01:29 +02:00
Hodovo e2a80c6c0f
Add support for FP16 (half) to export.py (#3010)
* Added support for fp16 (half) to export.py

* minimize code additions

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-05-02 22:42:33 +02:00
Glenn Jocher 4200674a13
Add yolov5/ to sys.path() for *.py subdir exec (#2949)
* Add yolov5/ to sys.path() for *.py subdir exec

* Update export.py
2021-04-27 17:02:07 +02:00
Glenn Jocher 1b1ab4cca2
Add file_size() function (#2911)
* Add file_size() function

* Update export.py
2021-04-24 01:31:11 +02:00
Glenn Jocher 646386ff09
Update export.py for 2 dry runs (#2910)
* Update export.py for 2 dry runs

* Update export.py
2021-04-24 00:10:38 +02:00
Glenn Jocher a2a514dec8
Update export.py (#2909) 2021-04-23 23:50:02 +02:00
Glenn Jocher 28db237639
Default optimize_for_mobile() on TorchScript models (#2908)
Per https://pytorch.org/tutorials/recipes/script_optimized.html this should improve performance on torchscript models (and maybe coreml models also since coremltools operates on a torchscript model input, though this still requires testing).
2021-04-23 21:21:58 +02:00
Tim Stokman 1df8c6c963
Fix ONNX dynamic axes export support with onnx simplifier, make onnx simplifier optional (#2856)
* Ensure dynamic export works succesfully, onnx simplifier optional

* Update export.py

* add dashes

Co-authored-by: Tim <tim.stokman@hal24k.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-04-20 13:54:03 +02:00
Glenn Jocher 1f3e482bce
ONNX Simplifier (#2815)
* ONNX Simplifier

Add ONNX Simplifier to ONNX export pipeline in export.py. Will auto-install onnx-simplifier if onnx is installed but onnx-simplifier is not.

* Update general.py
2021-04-16 14:03:27 +02:00
Glenn Jocher 0f395b3e3b
YOLOv5 v5.0 Release patch 1 (#2764)
* torch.jit.trace(model, img, strict=False)

* Update check_file()

* Update hubconf.py

* Update README.md
2021-04-11 23:11:43 +02:00
Jan Hajek 7a0a81fd1d
GPU export options (#2297)
* option for skip last layer and cuda export support

* added parameter device

* fix import

* cleanup 1

* cleanup 2

* opt-in grid

--grid will export with grid computation, default export will skip grid (same as current)

* default --device cpu

GPU export causes ONNX and CoreML errors.

Co-authored-by: Jan Hajek <jan.hajek@gmail.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-03-06 12:02:10 -08:00
Aditya Lohia 95aefea493
Dynamic ONNX engine generation (#2208)
* add: dynamic onnx export

* delete: test onnx inference

* fix dynamic output axis

* Code reduction

* fix: dynamic output axes, dynamic input naming

* Remove fixed axes

Co-authored-by: Shivam Swanrkar <ss8464@nyu.edu>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-02-21 21:50:44 -08:00
Glenn Jocher 6bd5e8bca7
nn.SiLU() export support (#1713) 2020-12-16 17:55:57 -08:00
Glenn Jocher d45e349a1e
Rearrange export input after checks (#1118)
img size checks are warnings rather than errors, so current implementation allows improperly formed model inputs.
2020-10-11 16:23:36 +02:00
Glenn Jocher 883924d9dc classifier, export, torch seed updates 2020-10-06 14:54:02 +02:00
Glenn Jocher a12698f4c9
Update ci-testing.yml reflecting sys.path additions (#869)
* Update ci-testing.yml

* Update yolo.py

* Update ci-testing.yml

* Update export.py

* Update yolo.py
2020-10-04 18:50:32 +02:00
PetrDvoracek d55c326dda
export.py folder sys.path addition (#1052) 2020-10-04 17:42:05 +02:00
Glenn Jocher d68179953d Update export.py 2020-09-02 13:23:29 -07:00
Glenn Jocher 1e7674d4dd Update export.py --img-size comment 2020-08-25 23:07:22 -07:00
Glenn Jocher 4fb8cb353f Update export.py with v3.0 Hardswish() support (#831) 2020-08-24 21:59:26 -07:00
Glenn Jocher 4d7f222f73 Update export.py with v3.0 Hardswish() support 2020-08-24 21:47:49 -07:00
Glenn Jocher a8751e50de model.fuse() fix for export.py (#827) 2020-08-24 19:27:54 -07:00
Glenn Jocher b42e8a531b optimize imports 2020-08-20 21:17:40 -07:00
NanoCode012 0892c44bc4
Fix Logging (#719)
* Add logging setup

* Fix fusing layers message

* Fix logging does not have end

* Add logging

* Change logging to use logger

* Update yolo.py

I tried this in a cloned branch, and everything seems to work fine

* Update yolo.py

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2020-08-12 14:18:19 -07:00
Jirka Borovec d5b6416c87
Explicit Imports (#498)
* expand imports

* optimize

* miss

* fix
2020-08-02 15:47:36 -07:00
Glenn Jocher 9006b85d21 update export.py torchscript file extension 2020-07-10 11:56:01 -07:00
Laurentiu Diaconu a9918fbf2b updated coreml conversion to do pixel scaling between 0.0 and 1.0 2020-07-08 09:43:33 +03:00
Glenn Jocher 659ad748c8 update get_voc.sh 2020-07-04 17:13:43 -07:00
Glenn Jocher 7bd7b2c090 update export.py 2020-07-03 20:05:50 -07:00
Glenn Jocher a9d20eba3e export.py update 2020-07-03 11:50:59 -07:00
Glenn Jocher 569fbc63c8 export.py update 2020-07-03 11:29:53 -07:00
Glenn Jocher a62a1c2c67 export.py update 2020-07-01 16:14:49 -07:00
Glenn Jocher f1d67f4110 update export.py 2020-07-01 15:46:15 -07:00
Glenn Jocher 615d6d0cfa FROM nvcr.io/nvidia/pytorch:20.06-py3 2020-06-29 14:00:13 -07:00