Skip to content

Commit

Permalink
[Cherry Pick] Support for dynamic input YOLO models (1.4.2) (#971)
Browse files Browse the repository at this point in the history
* initial commit

* bump version to 1.4.2

---------

Co-authored-by: Benjamin Fineran <bfineran@users.noreply.github.com>
  • Loading branch information
dbogunowicz and bfineran committed Mar 22, 2023
1 parent 9d96eef commit c391607
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 2 deletions.
2 changes: 1 addition & 1 deletion src/deepsparse/version.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@
from deepsparse.generated_version import is_enterprise, is_release, splash, version
except Exception:
# otherwise, fall back to version info in this file
version = "1.4.1"
version = "1.4.2"
is_release = False
is_enterprise = False
splash = (
Expand Down
6 changes: 6 additions & 0 deletions src/deepsparse/yolo/pipelines.py
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,12 @@ class properties into an inference ready onnx file to be compiled by the
model_path = model_to_path(self.model_path)
if self._image_size is None:
self._image_size = get_onnx_expected_image_shape(onnx.load(model_path))
if self._image_size == (0, 0):
raise ValueError(
"The model does not have a static image size shape. "
"Specify the expected image size by passing the"
"`image_size` argument to the pipeline."
)
else:
# override model input shape to given image size
if isinstance(self._image_size, int):
Expand Down
2 changes: 2 additions & 0 deletions src/deepsparse/yolo/utils/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -359,6 +359,8 @@ def modify_yolo_onnx_input_shape(
model_input = model.graph.input[0]

initial_x, initial_y = get_onnx_expected_image_shape(model)
if initial_x == initial_y == 0:
initial_x, initial_y = image_shape

if not (isinstance(initial_x, int) and isinstance(initial_y, int)):
return model_path, None # model graph does not have static integer input shape
Expand Down
2 changes: 1 addition & 1 deletion tests/test_benchmark.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ def test_benchmark_help():
),
(
"zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/base-none",
["-pin", "numa"],
["-pin", "numa", "-shapes", "[1,3,640,640]"],
),
(
"zoo:cv/detection/yolov5-s/pytorch/ultralytics/coco/pruned-aggressive_96",
Expand Down

0 comments on commit c391607

Please sign in to comment.