Skip to content

DL Detector (f8.dl.detector)

ONNXRuntime object detector service (no tracking).

  • Service class: f8.dl.detector
  • Version: 0.0.1
  • Source directory: f8/dl/detector
  • Tags: onnx, vision, detection

When to Use

  • Use f8.dl.detector when you need bounding boxes, classes, and confidence scores for objects in the frame.
  • It is the usual first step when the graph needs to know where targets are.
  • Choose it when multiple candidate objects may appear and later logic needs structured detections.

Common Wiring Patterns

  • Typical inputs are f8.implayer and f8.screencap.
  • Keep the original video visible during tuning so detection quality can be verified against the image.
  • Detection output often continues into f8.dl.detsorter, f8.cvkit.tracking, or f8.pyengine.

Pitfalls / Gotchas

  • Do not tune thresholds before confirming that model selection, input sizing, and class mapping are correct.
  • Slow performance can come from oversized input or deployment limits, not just from the model itself.
  • If results fluctuate badly, inspect source image quality before over-tuning postprocessing.

Service Reference

How to Run

pixi run -e onnx f8pydl_detector
  • Workdir: ../../../../
  • Environment overrides: none

Typical Inputs / Outputs

  • Data inputs: none
  • Data outputs: detections, monitor
  • Commands: none

Service State Fields

Name Access Required On Node Schema Description
shmName rw true true string / default= Video SHM mapping name (e.g. shm.implayer.video).
weightsDir rw true true string / default=services/f8/dl/weights Directory containing .yaml + .onnx model files. Reset to the default relative path when exporting publish JSON.
modelId rw true true string / default= Model id selected from weightsDir (ignored if modelYamlPath is set).
modelYamlPath rw true false string / default= Optional explicit model yaml path (overrides modelId). Cleared when exporting publish JSON.
ortProvider rw true true string / enum[auto, cuda, cpu] / default=auto auto prefers CUDAExecutionProvider when available.
autoDownloadWeights rw true false boolean / default=True When model file is missing, download from onnxUrl in model yaml.
inferEveryN rw true true integer / default=1 Run model inference every N frames (>=1).
confThreshold rw true false number / default=-1.0 Override confidence threshold (negative uses model yaml).
iouThreshold rw true false number / default=-1.0 Override IoU threshold for NMS (negative uses model yaml).
enabledClasses rw true false array[string] Optional class whitelist for output. Empty means all classes.
perClassK rw true true integer / default=0 Per-class top-K by score (<=0 means unlimited).
modelClasses ro true false array[string] Current loaded model class labels.
availableModels ro true false array[string] List of model ids discovered from weightsDir.
loadedModel ro true false string / default= Current loaded model id/task.
ortActiveProviders ro true false string / default= JSON list of active ONNX Runtime providers for this session.
lastError ro true false string / default= Last runtime error string (best-effort).
active rw true false boolean / default=True Service lifecycle state (activate/deactivate).
svcId ro true false string Readonly: current service instance id (svcId).

Key Fields That Matter

  • shmName (Video SHM, rw): Video SHM mapping name (e.g. shm.implayer.video). Schema: string / default=.
  • weightsDir (Weights Dir, rw): Directory containing .yaml + .onnx model files. Reset to the default relative path when exporting publish JSON. Schema: string / default=services/f8/dl/weights.
  • modelId (Model Id, rw): Model id selected from weightsDir (ignored if modelYamlPath is set). Schema: string / default=.
  • modelYamlPath (Model YAML Path, rw): Optional explicit model yaml path (overrides modelId). Cleared when exporting publish JSON. Schema: string / default=.
  • ortProvider (ONNX Runtime Provider, rw): auto prefers CUDAExecutionProvider when available. Schema: string / enum[auto, cuda, cpu] / default=auto.
  • autoDownloadWeights (Auto Download Weights, rw): When model file is missing, download from onnxUrl in model yaml. Schema: boolean / default=True.
  • inferEveryN (Infer Every N Frames, rw): Run model inference every N frames (>=1). Schema: integer / default=1.
  • confThreshold (Conf Threshold Override, rw): Override confidence threshold (negative uses model yaml). Schema: number / default=-1.0.

Service Commands

None

Service Data Input Ports

None

Service Data Output Ports

Name Required On Node Schema Description
detections true true object{detections, frameId, height, model, ...} Detection output in schema f8visionDetections/1.
monitor true false object{active, alive, cpu, error, ...} Unified runtime monitor snapshots (health/resource/perf/error).

Operators

None

  • No bundled scenario references this node yet.