Person Detection
本文使用 neoruntime-apps/examples/person-detection,完成一个最小的容器化人员检测应用:订阅原始视频流,调用设备上的 person-detection 模型,发布检测事件,并在设备支持时触发白光。
完整代码、清单和 Dockerfile 见 Person Detection 示例目录。本文只保留能让你跑通示例的步骤。
1. 应用链路
third.raw 原始帧
↓
person-detection 模型推理
↓
app.py 过滤 label=person 且达到阈值的目标
├─ app/person-detection/detection
├─ alerts/detection(按冷却时间发送)
└─ DeviceClient.set_white_light(50)(可选)
当前示例的关键值来自仓库中的 app.yaml 和 app.py:
| 项目 | 当前值 | 用途 |
|---|---|---|
| SDK 模块 | hailo_ipc_sdk | 容器内导入的 Python SDK |
| 视频权限 | third.raw | 原始视频流权限 |
| 订阅流 | third | InferenceClient.subscribe() 使用的流名 |
| 模型 ID | person-detection | 设备上必须可用的模型 |
| 检测阈值 | 0.7 | 清单注入的人员置信度门槛 |
| 告警主题 | alerts/detection | 按 ALERT_COOLDOWN_SECONDS 限制发送频率 |
不要把 third、person-detection 或 hailo_ipc_sdk 擅自替换成旧示例中的名称。若设备固件提供的模型或流名不同,必须同时修改 app.yaml 和 app.py,并先按设备实际值验证。