DL Human Detector (f8.dl.humandetector)¶
ONNXRuntime human detection/pose service (no tracking).
- Service class:
f8.dl.humandetector - Version:
0.0.1 - Source directory:
f8/dl/humandetector - Tags:
onnx,vision,human,pose
When to Use¶
- Use
f8.dl.humandetectorwhen the graph only cares about people rather than general objects. - It is a strong choice for human-presence logic, person ROI filtering, and person-first analysis chains.
- It usually fits better than a general detector when the scene is fundamentally human-centered.
Common Wiring Patterns¶
- A common chain is
video source -> f8.dl.humandetector -> tracking / mp.pose / pyengine. - If later logic depends on people, stabilize the "where is the person?" step before building the rest of the graph.
- Keep detections visible during development.
Pitfalls / Gotchas¶
- Small people, strong backlight, and heavy occlusion reduce quality quickly.
- Human detection is not the same as pose estimation; use it as a person-localization stage, not as a skeleton source.
- In multi-person scenes, decide early which person the graph should follow.
Service Reference¶
How to Run¶
pixi run -e onnx f8pydl_humandetector
- 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
Related Scenarios¶
- No bundled scenario references this node yet.