Folders
Run inference on entire image folders with predict_dir, streaming results efficiently from flat or nested directories.
Estimated read time: 2 minutes
You can run inference over a whole directory of images using model.predict_dir(...).
Signature
degirum.model.Model.predict_dir(
path, *, recursive=False,
extensions=['.jpg', '.jpeg', '.png', '.bmp']
)What it does: runs the full inference lifecycle for all files in a folder that match the given extensions, yielding one
InferenceResultsper imageReturns: an iterator (
Iterator[InferenceResults]), so you can use it directly in aforloopLimitations: supports only single-input models
Common setup (used in all cases)
from pathlib import Path
from degirum_tools import ModelSpec
# Configure & load once
model_spec = ModelSpec(
model_name="yolov8n_coco--640x640_quant_hailort_multidevice_1",
zoo_url="degirum/hailo",
inference_host_address="@local", # or "@cloud" / server URL
model_properties={"device_type": ["HAILORT/HAILO8", "HAILORT/HAILO8L"]},
)
model = model_spec.load_model()Basic folder (non-recursive, default extensions)
Use when you have a flat folder of standard image formats.
in_dir = Path("images") # folder with .jpg/.jpeg/.png/.bmp
for result in model.predict_dir(str(in_dir)):
# result contains detections & convenience fields like image_overlay
print(result) # optional: inspect structured outputNested folders (recursive walk)
Use when working with datasets split across subdirectories (e.g., class-based folders).
in_dir = "datasets/val" # root directory with subfolders
for result in model.predict_dir(in_dir, recursive=True):
# handle/save each result as it arrives
passMinimal example
for result in model.predict_dir("./some_path"):
print(result)Last updated
Was this helpful?

