Diego Montes
2c6317547a
Add nms and agnostic nms to export.py ( #5938 )
...
* add nms and agnostic nms to export.py
* fix agnostic implies nms
* reorder args to group TF args
* PEP8 120 char
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-12-10 18:24:32 +01:00
Diego Montes
4fb6dd4b26
Fix ONNX opset inconsistency with parseargs and run args ( #5937 )
2021-12-09 23:10:16 +01:00
Glenn Jocher
1075488d89
Single-command multiple-model export ( #5882 )
...
* Export multiple models in series
Export multiple models in series by adding additional `*.pt` files to the `--weights` argument, i.e.:
```bash
python export.py --include tflite --weights yolov5n.pt # export 1 model
python export.py --include tflite --weights yolov5n.pt yolov5s.pt yolov5m.pt yolov5l.pt yolov5x.pt # export 5 models
```
* Update export.py
* Update README.md
2021-12-04 16:28:40 +01:00
Glenn Jocher
7bf04d9bbf
`AutoShape()` models as `DetectMultiBackend()` instances ( #5845 )
...
* Update AutoShape()
* autodownload ONNX
* Cleanup
* Finish updates
* Add Usage
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* fix device
* Update hubconf.py
* Update common.py
* smart param selection
* autodownload all formats
* autopad only pytorch models
* new_shape edits
* stride tensor fix
* Cleanup
2021-12-04 15:00:07 +01:00
Glenn Jocher
00e308f7be
Update TorchScript suffix to `*.torchscript` ( #5856 )
2021-12-02 16:06:45 +01:00
imyhxy
a4207a202d
Fix TensorRT potential unordered binding addresses ( #5826 )
...
* feat: change file suffix in pythonic way
* fix: enforce binding addresses order
* fix: enforce binding addresses order
2021-11-30 13:52:22 +01:00
rockstarr
4c7b2bdc30
TorchScript `torch==1.7.0` Path support ( #5781 )
...
* fix path error in export.py
* Update export.py
updated!
* Update export.py
oops forget something
2021-11-25 11:18:30 +01:00
imyhxy
7a39803476
Export, detect and validation with TensorRT engine file ( #5699 )
...
* Export and detect with TensorRT engine file
* Resolve `isort`
* Make validation works with TensorRT engine
* feat: update export docstring
* feat: change suffix from *.trt to *.engine
* feat: get rid of pycuda
* feat: make compatiable with val.py
* feat: support detect with fp16 engine
* Add Lite to Edge TPU string
* Remove *.trt comment
* Revert to standard success logger.info string
* Fix Deprecation Warning
```
export.py:310: DeprecationWarning: Use build_serialized_network instead.
with builder.build_engine(network, config) as engine, open(f, 'wb') as t:
```
* Revert deprecation warning fix
@imyhxy it seems we can't apply the deprecation warning fix because then export fails, so I'm reverting my previous change here.
* Update export.py
* Update export.py
* Update common.py
* export onnx to file before building TensorRT engine file
* feat: triger ONNX export failed early
* feat: load ONNX model from file
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-11-22 14:58:07 +01:00
Glenn Jocher
562191f575
Update export.py docstring ( #5689 )
2021-11-17 15:18:50 +01:00
Glenn Jocher
3883261143
New `DetectMultiBackend()` class ( #5549 )
...
* New `DetectMultiBackend()` class
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* pb to pt fix
* Cleanup
* explicit apply_classifier path
* Cleanup2
* Cleanup3
* Cleanup4
* Cleanup5
* Cleanup6
* val.py MultiBackend inference
* warmup fix
* to device fix
* pt fix
* device fix
* Val cleanup
* COCO128 URL to assets
* half fix
* detect fix
* detect fix 2
* remove half from DetectMultiBackend
* training half handling
* training half handling 2
* training half handling 3
* Cleanup
* Fix CI error
* Add torchscript _extra_files
* Add TorchScript
* Add CoreML
* CoreML cleanup
* New `DetectMultiBackend()` class
* pb to pt fix
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Cleanup
* explicit apply_classifier path
* Cleanup2
* Cleanup3
* Cleanup4
* Cleanup5
* Cleanup6
* val.py MultiBackend inference
* warmup fix
* to device fix
* pt fix
* device fix
* Val cleanup
* COCO128 URL to assets
* half fix
* detect fix
* detect fix 2
* remove half from DetectMultiBackend
* training half handling
* training half handling 2
* training half handling 3
* Cleanup
* Fix CI error
* Add torchscript _extra_files
* Add TorchScript
* Add CoreML
* CoreML cleanup
* revert default to pt
* Add Usage examples
* Cleanup val
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2021-11-09 16:45:02 +01:00
Jirka Borovec
0155548384
precommit: isort ( #5493 )
...
* precommit: isort
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update isort config
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Update name
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>
2021-11-04 17:24:25 +01:00
Glenn Jocher
5866646cc8
Fix float zeros format ( #5491 )
...
* Fix float zeros format
* 255 to integer
2021-11-03 23:36:53 +01:00
Glenn Jocher
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
Malte Lorbach
153873e9e4
Fix `ROOT` as relative path ( #5129 )
...
* use os.path.relpath instead of relative_to
* use os.path.relpath instead of relative_to
* Remove os.path from val.py
* Remove os.path from train.py
* Update detect.py import to os
* Update export.py import to os
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-10-11 09:47:24 -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
Jiacong Fang
2c2ef25f8b
TensorFlow.js export enhancements ( #4905 )
...
* Add arguments to TensorFlow NMS call
* Add regex substitution to reorder Identity_*
* Delete reorder in docstring
* Cleanup
* Cleanup2
* Removed `+ \` on string ends (not needed)
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-09-24 14:18:15 -07: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
Jiacong Fang
3beb871ba4
Multiple TF export improvements ( #4824 )
...
* Add fused conv support
* Set all saved_model values to non trainable
* Fix TFLite fp16 model export
* Fix int8 TFLite conversion
2021-09-16 15:27:22 +02:00
Glenn Jocher
6b44ecd53d
Fix 'PyTorch starting from' for URL weights ( #4828 )
...
Follows #4823
2021-09-16 14:38:35 +02:00
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>
2021-09-16 13:33:54 +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
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
Zegorax
2d9411dbb8
Scope `onnx-simplifier` requirements check ( #4730 )
...
* Changed onnx-simplifier check behavior
Export.py has been updated to check for onnx-simplifier requirement only when the --simplify argument is added.
Allows for better flexibility and one less requirement if simplify is not needed.
* Fix single-element tuples
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-09-09 16:49:10 +02:00
Glenn Jocher
8b18b66304
ONNX opset 13 ( #4566 )
2021-08-27 16:00:39 +02:00
Glenn Jocher
d1182c4f29
`check_requirements(('coremltools',))` ( #4478 )
...
* `check_requirements(('coremltools',))`
* Update ci-testing.yml
* Update ci-testing.yml
2021-08-18 21:16:57 +02:00
Glenn Jocher
24bea5e4b7
Standardize headers and docstrings ( #4417 )
...
* Implement new headers
* Reformat 1
* Reformat 2
* Reformat 3 - math
* Reformat 4 - yaml
2021-08-14 21:17:51 +02:00
Glenn Jocher
57c342a6a5
Simplify ONNX inference command ( #4405 )
2021-08-13 13:22:13 +02:00
junji hashimoto
2d99063201
Feature `python train.py --cache disk` ( #4049 )
...
* Add cache-on-disk and cache-directory to cache images on disk
* Fix load_image with cache_on_disk
* Add no_cache flag for load_image
* Revert the parts('logging' and a new line) that do not need to be modified
* Add the assertion for shapes of cached images
* Add a suffix string for cached images
* Fix boundary-error of letterbox for load_mosaic
* Add prefix as cache-key of cache-on-disk
* Update cache-function on disk
* Add psutil in requirements.txt
* Update train.py
* Cleanup1
* Cleanup2
* Skip existing npy
* Include re-space
* Export return character fix
Co-authored-by: Glenn Jocher <glenn.jocher@ultralytics.com>
2021-08-02 18:47:24 +02:00
Glenn Jocher
388016e9e3
Update 'results saved to' string ( #4275 )
2021-08-02 15:48:53 +02:00
Glenn Jocher
6e4358f3f3
Add `export.py` ONNX inference suggestion ( #4146 )
2021-07-25 13:46:16 +02:00
Glenn Jocher
264be1a616
Rename `opset_version` to `opset` ( #4135 )
2021-07-24 13:19:12 +02:00
Glenn Jocher
3bef77f5cb
Addition refactor `export.py` ( #4089 )
...
* Addition refactor `export.py`
* Update export.py
2021-07-20 18:42:27 +02:00
Glenn Jocher
442a7abdf2
Refactor `export.py` ( #4080 )
...
* Refactor `export.py`
* cleanup
* Update check_requirements()
* Update export.py
2021-07-20 13:21:52 +02:00
fcakyon
0e2d0d54d7
Fix typo ( #3729 )
2021-06-22 13:33:38 +02:00
Glenn Jocher
1f69d12591
Update 4 main ops for paths and .run() ( #3715 )
...
* Add yolov5/ to path
* rename functions to run()
* cleanup
* rename fix
* CI fix
* cleanup find models/export.py
2021-06-21 17:25:04 +02:00