From 6be69e5a4784dbb1e07508d61c5e893d7cc913d0 Mon Sep 17 00:00:00 2001 From: DevTekVE Date: Mon, 6 Jan 2025 12:25:23 +0100 Subject: [PATCH] Cleanup --- sunnypilot/modeld/runners/onnxmodel.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sunnypilot/modeld/runners/onnxmodel.py b/sunnypilot/modeld/runners/onnxmodel.py index 7637e4192e..2e08afa804 100644 --- a/sunnypilot/modeld/runners/onnxmodel.py +++ b/sunnypilot/modeld/runners/onnxmodel.py @@ -40,6 +40,7 @@ class ONNXModel(RunModel): def __init__(self, path, output, runtime, use_tf8, cl_context): self.inputs = {} self.output = output + self.use_tf8 = use_tf8 self.session = create_ort_session(path, fp16_to_fp32=True) self.input_names = [x.name for x in self.session.get_inputs()] @@ -63,7 +64,10 @@ class ONNXModel(RunModel): return None def execute(self): - inputs = {k: v.view(self.input_dtypes[k]) for k,v in self.inputs.items()} + # The input below causes issues because its converting the input data when in reality it doesn't need conversion as it was already the target type. + # I am leaving this comment and the input down because this needs to be looked before merging. I had similar issues when trying the tinygrad runner... + # inputs = {k: v.view(self.input_dtypes[k]) for k,v in self.inputs.items()} + inputs = {k: (v.view(np.uint8) / 255. if self.use_tf8 and k == 'input_img' else v) for k,v in self.inputs.items()} inputs = {k: v.reshape(self.input_shapes[k]).astype(self.input_dtypes[k]) for k,v in inputs.items()} outputs = self.session.run(None, inputs) assert len(outputs) == 1, "Only single model outputs are supported"