From e0c48af4968945166e0558ee637e1eb90dcdc02c Mon Sep 17 00:00:00 2001 From: daquexian Date: Tue, 19 Jul 2022 15:29:45 +0800 Subject: [PATCH 1/6] upgrade onnxsim to v0.4.1 Signed-off-by: daquexian --- export.py | 4 +--- requirements.txt | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/export.py b/export.py index 9868fcae95c3..d3d9dad0784c 100644 --- a/export.py +++ b/export.py @@ -156,9 +156,7 @@ def export_onnx(model, im, file, opset, train, dynamic, simplify, prefix=colorst import onnxsim LOGGER.info(f'{prefix} simplifying with onnx-simplifier {onnxsim.__version__}...') - model_onnx, check = onnxsim.simplify(model_onnx, - dynamic_input_shape=dynamic, - input_shapes={'images': list(im.shape)} if dynamic else None) + model_onnx, check = onnxsim.simplify(model_onnx) assert check, 'assert check failed' onnx.save(model_onnx, f) except Exception as e: diff --git a/requirements.txt b/requirements.txt index a3284d6529eb..8548f67b5a48 100644 --- a/requirements.txt +++ b/requirements.txt @@ -25,7 +25,7 @@ seaborn>=0.11.0 # Export -------------------------------------- # coremltools>=4.1 # CoreML export # onnx>=1.9.0 # ONNX export -# onnx-simplifier>=0.3.6 # ONNX simplifier +# onnx-simplifier>=0.4.1 # ONNX simplifier # nvidia-pyindex # TensorRT export # nvidia-tensorrt # TensorRT export # scikit-learn==0.19.2 # CoreML quantization From 991de7576baf963326bd676d33478c82f9a1ab87 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 19 Jul 2022 18:27:41 +0200 Subject: [PATCH 2/6] Update export.py --- export.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/export.py b/export.py index d3d9dad0784c..9fc71e7d45ab 100644 --- a/export.py +++ b/export.py @@ -152,7 +152,7 @@ def export_onnx(model, im, file, opset, train, dynamic, simplify, prefix=colorst # Simplify if simplify: try: - check_requirements(('onnx-simplifier',)) + check_requirements(('onnx-simplifier>=0.4.1',)) import onnxsim LOGGER.info(f'{prefix} simplifying with onnx-simplifier {onnxsim.__version__}...') From cf4ee803f7e96dbb88b4665f0b3826d3501e0431 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 19 Jul 2022 18:35:43 +0200 Subject: [PATCH 3/6] Update export.py --- export.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/export.py b/export.py index 9fc71e7d45ab..82b71a0f801a 100644 --- a/export.py +++ b/export.py @@ -152,6 +152,7 @@ def export_onnx(model, im, file, opset, train, dynamic, simplify, prefix=colorst # Simplify if simplify: try: + check_requirements(('onnx', 'onnxruntime-gpu' if cuda else 'onnxruntime')) check_requirements(('onnx-simplifier>=0.4.1',)) import onnxsim @@ -491,7 +492,7 @@ def run( imgsz *= 2 if len(imgsz) == 1 else 1 # expand assert nc == len(names), f'Model class count {nc} != len(names) {len(names)}' if optimize: - assert device.type != 'cuda', '--optimize not compatible with cuda devices, i.e. use --device cpu' + assert device.type == 'cpu', '--optimize not compatible with cuda devices, i.e. use --device cpu' # Input gs = int(max(model.stride)) # grid size (max stride) From 51388aa3d82ed2062e67b534bccc914e134e76f0 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 19 Jul 2022 18:42:25 +0200 Subject: [PATCH 4/6] Update export.py --- export.py | 1 + 1 file changed, 1 insertion(+) diff --git a/export.py b/export.py index 82b71a0f801a..284d480088aa 100644 --- a/export.py +++ b/export.py @@ -112,6 +112,7 @@ def export_torchscript(model, im, file, optimize, prefix=colorstr('TorchScript:' def export_onnx(model, im, file, opset, train, dynamic, simplify, prefix=colorstr('ONNX:')): # YOLOv5 ONNX export try: + cuda = 'cuda' in next(model.parameters()).device.type check_requirements(('onnx',)) import onnx From 64dffd8e2f9167fe61b6a371f00d22bf86dc0b2e Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 19 Jul 2022 18:47:26 +0200 Subject: [PATCH 5/6] Update export.py --- export.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/export.py b/export.py index 284d480088aa..dde32b0ef516 100644 --- a/export.py +++ b/export.py @@ -153,8 +153,7 @@ def export_onnx(model, im, file, opset, train, dynamic, simplify, prefix=colorst # Simplify if simplify: try: - check_requirements(('onnx', 'onnxruntime-gpu' if cuda else 'onnxruntime')) - check_requirements(('onnx-simplifier>=0.4.1',)) + check_requirements(('onnxruntime-gpu' if cuda else 'onnxruntime', 'onnx-simplifier>=0.4.1')) import onnxsim LOGGER.info(f'{prefix} simplifying with onnx-simplifier {onnxsim.__version__}...') From fbf3b8ce6b9baae7311367e217b66b32a1465c69 Mon Sep 17 00:00:00 2001 From: Glenn Jocher Date: Tue, 19 Jul 2022 18:53:07 +0200 Subject: [PATCH 6/6] Update export.py --- export.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/export.py b/export.py index dde32b0ef516..3629915f028d 100644 --- a/export.py +++ b/export.py @@ -112,7 +112,6 @@ def export_torchscript(model, im, file, optimize, prefix=colorstr('TorchScript:' def export_onnx(model, im, file, opset, train, dynamic, simplify, prefix=colorstr('ONNX:')): # YOLOv5 ONNX export try: - cuda = 'cuda' in next(model.parameters()).device.type check_requirements(('onnx',)) import onnx @@ -153,6 +152,7 @@ def export_onnx(model, im, file, opset, train, dynamic, simplify, prefix=colorst # Simplify if simplify: try: + cuda = torch.cuda.is_available() check_requirements(('onnxruntime-gpu' if cuda else 'onnxruntime', 'onnx-simplifier>=0.4.1')) import onnxsim