441 Commits

Author SHA1 Message Date
Glenn Jocher
4d59f65db5
New TensorFlow TFDWConv() module (#7824)
* New TensorFlow `TFDWConv()` module

Analog to DWConv() module:
8aa2085a7e/models/common.py (L53-L57)

* Fix and new activations() function

* Update tf.py
2022-05-16 01:04:16 +02:00
Glenn Jocher
8aa2085a7e
Refactor modules (#7823) 2022-05-15 19:44:16 +02:00
Glenn Jocher
9d8ed37df7
Rename utils/datasets.py > utils/dataloaders.py (#7799) 2022-05-13 14:34:16 +02:00
Glenn Jocher
d059d1da03
Report fused model summary by default (#7722) 2022-05-06 23:51:59 -07:00
Glenn Jocher
950a85d9f6
TensorRT PyTorch Hub inference fix (#7560)
Solution proposed in https://github.com/ultralytics/yolov5/issues/7128 to TRT PyTorch Hub CUDA illegal memory errors.
2022-04-24 12:45:56 -07:00
Glenn Jocher
c16671fc74
Add print(results) override for PyTorch Hub results (#7559) 2022-04-24 12:07:05 -07:00
Glenn Jocher
be67572279
Enable results.print() when _verbose=False (#7558)
Follows implementation of _verbose flag for PyTorch Hub models. Currently these are so silent that result.print() does nothing 😂
2022-04-24 11:30:40 -07:00
Glenn Jocher
3f3852e2ff
Fix val.py Ensemble() (#7490) 2022-04-19 21:15:04 -07:00
rglkt
aa542ce6a6
DetectMultiBackend() default stride=32 (#7342)
* set common default stride as 32

* restore default stride, and set it on argument optional

* fix wrong use of opt

* fix missing parameter of stride

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix format of parameters

* Update val.py

* Update common.py

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2022-04-09 19:11:55 +02:00
Glenn Jocher
3bb233a7fb
Add ONNX export metadata (#7353) 2022-04-09 13:27:49 +02:00
Glenn Jocher
302b00b5f4
Update _make_grid() (#7346) 2022-04-08 12:55:16 +02:00
Nrupatunga
b7faeda0f2
Fix Tf export for BottleneckCSP (#7330) 2022-04-07 13:52:44 +02:00
Glenn Jocher
5f97001ed4
Context manager open(file) as f fixes (#7289)
* Flask context manager `open()` fix

* Additional read context manager fixes
2022-04-05 12:54:25 +02:00
pre-commit-ci[bot]
7882950577
[pre-commit.ci] pre-commit suggestions (#7279)
* [pre-commit.ci] pre-commit suggestions

updates:
- [github.com/asottile/pyupgrade: v2.31.0 → v2.31.1](https://github.com/asottile/pyupgrade/compare/v2.31.0...v2.31.1)
- [github.com/pre-commit/mirrors-yapf: v0.31.0 → v0.32.0](https://github.com/pre-commit/mirrors-yapf/compare/v0.31.0...v0.32.0)

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update yolo.py

* Update activations.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update activations.py

* Update tf.py

* Update tf.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2022-04-04 22:47:00 +02:00
Glenn Jocher
ea72b84f5e
Integrate offset into grid (#7262)
Eliminate 1 op during training and inference.
2022-04-03 23:40:23 +02:00
Glenn Jocher
8bc839ed8e
TorchScript single-output fix (#7261) 2022-04-03 22:51:11 +02:00
Glenn Jocher
05cf0d1a44
Export single output only (#7259)
* Update

* Update

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-04-03 21:29:20 +02:00
Glenn Jocher
ad0e4d5d19
torch.split() replace slicing on out-of-place inference (#7258) 2022-04-03 20:05:50 +02:00
Glenn Jocher
4f839b7970
Refactor out-of-place Detect() for reduced ops (#7257) 2022-04-03 19:26:23 +02:00
Glenn Jocher
2c3221844b
CLI fire prep updates (#7229)
* CLI fire prep updates

* revert unintentional TF export change
2022-03-31 17:11:43 +02:00
Jirka Borovec
c3d5ac151e
precommit: yapf (#5494)
* precommit: yapf

* align isort

* fix

# Conflicts:
#	utils/plots.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update setup.cfg

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update setup.cfg

* Update setup.cfg

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update wandb_utils.py

* Update augmentations.py

* Update setup.cfg

* Update yolo.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update val.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* simplify colorstr

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* val run fix

* export.py last comma

* Update export.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Update hubconf.py

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* PyTorch Hub tuple fix

* PyTorch Hub tuple fix2

* PyTorch Hub tuple fix3

* Update setup

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2022-03-31 16:52:34 +02:00
Glenn Jocher
cf4f3c3455
yolo.py profiling updates (#7178)
* yolo.py profiling updates

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-03-29 10:15:53 +02:00
Glenn Jocher
ee77632393
Revert C3() change (#7172) 2022-03-28 02:31:00 +02:00
Glenn Jocher
1832264dd6 Update 2022-03-28 02:26:44 +02:00
Glenn Jocher
b2194b9015
yolo.py --profile updates (#7170) 2022-03-27 20:24:42 +02:00
Glenn Jocher
7830e91b9a
yolo.py --profile default GPU batch size 16 2022-03-26 16:53:42 +01:00
Glenn Jocher
e19f87eb4b
Sidestep os.path.relpath() Windows bug (#7158)
* Sidestep os.path.relpath() Windows bug

os.path.relpath() seems to have a major bug on Windows due to Windows horrible path handling. This fix attempts to sidestep the issue.

```
File "C:\Users\mkokg/.cache\torch\hub\ultralytics_yolov5_master\export.py", line 64, in
ROOT = Path(os.path.relpath(ROOT, Path.cwd())) # relative
File "C:\Users\mkokg\AppData\Local\Programs\Python\Python310\lib\ntpath.py", line 718, in relpath
raise ValueError("path is on mount %r, start on mount %r" % (
ValueError: path is on mount 'C:', start on mount 'D:'
```

* Update yolo.py

* Update yolo.py

* Update yolo.py

* Update export.py
2022-03-26 14:18:53 +01:00
Glenn Jocher
a0a4adf6de
Add PyTorch Hub results.save(labels=False) option (#7129)
Resolves https://github.com/ultralytics/yolov5/issues/388#issuecomment-1077121821
2022-03-24 11:31:22 +01:00
Glenn Jocher
ecc2c7ba73
Remove named arguments where possible (#7105)
* Remove named arguments where possible

Speed improvements.

* Update yolo.py

* Update yolo.py

* Update yolo.py
2022-03-22 20:44:07 +01:00
Glenn Jocher
9b771a3e71
Revert "Update detect.py non-inplace with y.tensor_split() (#7062)" (#7074)
This reverts commit d5e363f29d7619f2a186678eb6d61672f49b11f1.
2022-03-21 09:33:39 +01:00
Glenn Jocher
0529b77232
Update common.py lists for tuples (#7063)
Improved profiling.
2022-03-20 18:03:37 +01:00
Glenn Jocher
d5e363f29d
Update detect.py non-inplace with y.tensor_split() (#7062) 2022-03-20 18:02:05 +01:00
Glenn Jocher
f327eee614
Fix check_anchor_order() in pixel-space not grid-space (#7060)
* Update `check_anchor_order()`

Use mean area per output layer for added stability.

* Check in pixel-space not grid-space fix
2022-03-20 16:27:51 +01:00
Mrinal Jain
4effd064b1
Consistent saved_model output format (#7032) 2022-03-18 12:29:24 +01:00
Glenn Jocher
932dc78496
YOLOv5 Export Benchmarks for GPU (#6963)
* Add benchmarks.py GPU support

* Updates

* Updates

* Updates

* Updates

* Add --half

* Add TRT requirements

* Cleanup

* Add TF to warmup types

* Update export.py

* Update export.py

* Update benchmarks.py
2022-03-14 15:07:13 +01:00
Glenn Jocher
2d45de617e
Model ema key backward compatibility fix (#6972)
Fix for older model loading issue in d3d9cbce22 (commitcomment-68622388)
2022-03-14 10:54:51 +01:00
paradigm
c13d4ce7ef
EdgeTPU optimizations (#6808)
* removed transpose op for better edgetpu support

* fix for training case

* enabled experimental new quantizer flag

* precalculate add and mul ops at compile time

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2022-03-12 16:15:09 +01:00
Glenn Jocher
701e1177ac
Tensor initialization on device improvements (#6959)
* Update common.py speed improvements

Eliminate .to() ops where possible for reduced data transfer overhead. Primarily affects warmup and PyTorch Hub inference.

* Updates

* Updates

* Update detect.py

* Update val.py
2022-03-12 14:00:48 +01:00
Glenn Jocher
52c1399fdc
DetectMultiBackend() return device update (#6958)
Fixes ONNX validation that returns outputs on CPU.
2022-03-12 13:16:29 +01:00
Glenn Jocher
b94b59e199
DetectMultiBackend() --half handling (#6945)
* DetectMultiBackend() `--half` handling

* CI fixes

* rename .half to .fp16 to avoid conflict

* warmup fix

* val update

* engine update

* engine update
2022-03-11 16:31:52 +01:00
Glenn Jocher
84efa62b2d
Fix PyTorch Hub export inference shapes (#6949)
May resolve https://github.com/ultralytics/yolov5/issues/6947
2022-03-11 16:18:40 +01:00
Glenn Jocher
055e72af5b
Optimize PyTorch 1.11.0 compatibility update (#6933) 2022-03-10 12:58:41 +01:00
Glenn Jocher
d3d9cbce22
PyTorch 1.11.0 compatibility updates (#6932)
Resolves `AttributeError: 'Upsample' object has no attribute 'recompute_scale_factor'` first raised in https://github.com/ultralytics/yolov5/issues/5499
2022-03-10 12:41:06 +01:00
DavidB
596de6d5a0
Default FP16 TensorRT export (#6798)
* Assert engine precision #6777

* Default to FP32 inputs for TensorRT engines

* Default to FP16 TensorRT exports #6777

* Remove wrong line #6777

* Automatically adjust detect.py input precision #6777

* Automatically adjust val.py input precision #6777

* Add missing colon

* Cleanup

* Cleanup

* Remove default trt_fp16_input definition

* Experiment

* Reorder detect.py if statement to after half checks

* Update common.py

* Update export.py

* Cleanup

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2022-03-06 21:21:16 +01:00
Raffaele Galliera
a297efc383
Edge TPU inference fix (#6686)
* refactor: use edgetpu flag

* fix: remove bitwise and assignation to tflite

* Cleanup and fix tflite

* Cleanup

Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2022-02-19 15:10:07 +01:00
Glenn Jocher
56697c43ff
Fix CoreML P6 inference (#6700)
* Fix CoreML P6 inference

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-02-18 20:38:33 +01:00
Jiacong Fang
66e5d794c7
Fix TF exports >= 2GB (#6292)
* Fix exporting saved_model: pb exceeds 2GB

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Replace TF v1.x API with TF v2.x API for saved_model export

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Clean up

* Remove lambda in tf.function()

* Revert "Remove lambda in tf.function()" to be compatible with TF v2.4

This reverts commit 46c7931f11dfdea6ae340c77287c35c30b9e0779.

* Fix for pre-commit.ci

* Cleanup1

* Cleanup2

* Backwards compatibility update

* Update common.py

* Update common.py

* Cleanup3

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2022-02-18 16:36:45 +01:00
Glenn Jocher
ee6c70ae43
Fix yolov3.yaml remove list (#6655)
Per https://github.com/ultralytics/yolov3/issues/1887#issuecomment-1041135181
2022-02-16 10:13:05 +01:00
Glenn Jocher
a45e472358
YOLOv5 Export Benchmarks (#6613)
* Add benchmarks.py

* Update

* Add requirements

* Updates

* Updates

* Updates

* Updates

* Updates

* Updates

* dataset autodownload from root

* Update

* Redirect to /dev/null

* sudo --help

* Cleanup

* Add exports pd df

* Updates

* Updates

* Updates

* Cleanup

* dir handling fix

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Cleanup

* Cleanup2

* Cleanup3

* Cleanup model_type

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2022-02-12 16:05:43 +01:00
Glenn Jocher
dc7e093071
Edge TPU TF imports fix (#6542)
* Edge TPU TF imports fix

Fix for https://github.com/ultralytics/yolov5/issues/6535#issuecomment-1030631526

* Update common.py
2022-02-05 15:45:44 +01:00