Skip to content

Commit 06ea47c

Browse files
committed
fix predictt's inputs annotation and don't recreate xarrays
1 parent 4154d7c commit 06ea47c

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

bioimageio/core/prediction.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,20 +129,23 @@ def load_tile(tile):
129129

130130
def predict(
131131
prediction_pipeline: PredictionPipeline,
132-
inputs: Union[xr.DataArray, List[xr.DataArray], Tuple[xr.DataArray]],
132+
inputs: Union[
133+
xr.DataArray, List[xr.DataArray], Tuple[xr.DataArray], np.ndarray, List[np.ndarray], Tuple[np.ndarray]
134+
],
133135
) -> List[xr.DataArray]:
134136
"""Run prediction for a single set of input(s) with a bioimage.io model
135137
136138
Args:
137139
prediction_pipeline: the prediction pipeline for the input model.
138-
inputs: the input(s) for this model represented as xarray data.
140+
inputs: the input(s) for this model represented as xarray data or numpy nd array.
139141
"""
140142
if not isinstance(inputs, (tuple, list)):
141143
inputs = [inputs]
142144

143145
assert len(inputs) == len(prediction_pipeline.input_specs)
144146
tagged_data = [
145-
xr.DataArray(ipt, dims=ipt_spec.axes) for ipt, ipt_spec in zip(inputs, prediction_pipeline.input_specs)
147+
ipt if isinstance(ipt, xr.DataArray) else xr.DataArray(ipt, dims=ipt_spec.axes)
148+
for ipt, ipt_spec in zip(inputs, prediction_pipeline.input_specs)
146149
]
147150
return prediction_pipeline.forward(*tagged_data)
148151

0 commit comments

Comments
 (0)