场景任务配置:通道、区域、参数与告警
| 项目 | 说明 |
|---|---|
| 适合谁 | 需要把内置算法配置成实际业务任务的实施人员、集成商和高级用户 |
| 完成后能做什么 | 为通道选择算法,设置区域、参数和运行策略,观察可视化结果,并查询或导出事件 |
| 使用前提 | 已完成首次检测,并有可正常播放的视频通道 |
| 预计时间 | 35–50 分钟 |
| 是否需要设备 | 需要正在运行的 CosmoEdge;可使用离线视频,不要求摄像机 |
| 最终验收结果 | 实时展示只分析预期区域,参数与策略已保存,正负样本结果可解释,事件中心可查询或导出记录 |
本页用“未戴安全帽”完成一次手把手配置,再用“离岗检测”练习人数与持续时间规则。通用顺序是:
- 选择通道。
- 选择算法。
- 绘制检测区域。
- 设置检测与告警参数。
- 设置运行策略。
- 验证实时结果、事件和导出数据。
当前页面的实际标签是 检测区域、参数设置 和 运行策略。系统没有独立的 “告警配置”页;告警间隔、次数、持续时间和去重由 Pipeline 节点参数与运行策略共同控制。

1. 先理解区域、参数和运行策略
| 设置 | 控制对象 | 典型影响 | 不负责什么 |
|---|---|---|---|
| 检测区域 | 画面中的空间范围 | 哪些目标进入后续分析和规则判断 | 不改变模型置信度 |
| 参数设置 | 模型阈值、目标尺寸、持续时间、次数、去重等业务条件 | 什么结果被接受、何时形成事件 | 不决定任务在哪些日期和时段运行 |
| 运行策略 | 任务的运行日期、时段和离线视频策略 | 当前时刻是否执行任务 | 不改变目标识别结果 |
因此,“没有告警”可能是视频、任务状态、运行时段、区域、模型结果或告警规则中的任意一层问题。后面的排查顺序会逐层确认,不从一次性降低所有阈值开始。
2. 完整示例:未戴安全帽
2.1 选择通道
本例使用仓库中的可复现素材:
data/test-video/Safety Helmet.mp4若还没有通道,打开 视频接入,点击 添加,选择 离线视频,填写通道名称并上传 MP4。也可以使用项目 v1.0-videos 标签提供的演示素材。

保存后先确认视频能播放,再进入场景任务配置,避免同时排查视频接入和算法。
2.2 选择算法并理解业务链路
- 在视频接入列表中打开该通道的 场景任务分配。
- 在“所有服务”中选择 未戴安全帽。
- 确认它出现在已选服务中。


成功状态:页面显示已选算法,可以切换到检测区域、参数设置和运行策略。
如需理解参数来自哪里,打开 任务配置 → 场景任务,找到 未戴安全帽。

点击 算法编排 查看节点和连接。

当前内置模板的顺序是:
- 视频解码:把通道视频转换为可供后续节点处理的帧。
- 目标检测算法:定位行人。
- 追踪算法:让同一个人在连续帧中尽量保持同一身份。
- 类别过滤:只保留目标类别和尺寸符合要求的行人。
- 目标分类算法:判断头盔、安全帽、无帽或不确定等分类结果。
- 目标判断:把分类结果映射为业务是否命中。
- 灵敏度计算:模板可按计时或计数方式抑制偶发命中;具体节点以已安装任务为准。
- 事件上报:按间隔、次数和去重规则保存事件。
这解释了为什么“检测区域”“最小目标尺寸”“分类置信度”“检测时间”和“告警间隔”不是同一件事。它们位于不同节点,按顺序缩小或确认结果。修改节点本身请阅读 算法编排。
2.3 绘制检测区域
默认任务可以分析整个画面。检测区域(ROI)用于只关注业务位置,减少区域外目标干扰。
打开 检测区域,点击 新增区域。

输入能说明业务位置的名称,例如“北入口作业区”。

画面中会出现可调整的多边形;拖动顶点覆盖人员必须佩戴安全帽的区域。


完成绘制并保存。
当前页面最多支持 4 个独立区域。区域应覆盖完整人员活动范围,但尽量排除海报、反光屏幕和非作业道路。区域过小会让目标只短暂进入;区域过大会引入无关目标。首次调试可适当放大,确认工作后再收紧。
“区域内才处理”描述的是规则链路:上游检测节点仍可能识别整帧目标,但只有满足区域位置条件的目标才进入相应分类或告警判断。算力是否下降取决于具体 Pipeline,不能仅凭区域变小推断。
2.4 设置检测和告警参数
打开 参数设置。

以下名称和模板值来自当前仓库中 Sophon 与 x86 共用的“未戴安全帽”模板。已安装任务可能保存了不同值,页面显示值始终优先。
| 当前参数名 | 当前模板值 | 控制内容 | 调整建议 |
|---|---|---|---|
| 行人检测方式 | 底部 | 以检测框底部、中心或顶部判断行人是否进入区域 | 地面区域通常使用“底部” |
| 最小行人尺寸 | 60 | 小于约 60 × 60 像素的行人不进入后续判断 | 远处漏报时可降低,但会增加噪声和后续计算 |
| 头盔/安全帽/无帽/不确定置信度 | 由模型标签阈值提供 | 分类分数达到何种阈值才接受该类别 | 使用现场正负样本逐项调整 |
| 灵敏度 | 5 | 灵敏度节点接受连续命中的强度 | 先保留当前值,再根据瞬时误报或漏报调节 |
| 检测时间(秒) | 2 | 条件持续满足多久后形成事件 | 增大可抑制瞬时结果,但会增加告警延迟 |
| 告警时间间隔(秒) | 3 | 相邻事件之间的最短间隔 | 演示可保持较短;生产环境按处置节奏增大 |
| 告警次数 | 1 | 同类事件允许上报的次数;0 表示不限制 | 按业务闭环和通知负载设置 |
| 静止目标去重 | 关闭 | 是否抑制同一静止目标的重复事件 | 固定干扰目标反复告警时再开启 |
| 静止目标重叠率 | 0.2 | 判断是否为同一静止目标的重叠标准 | 仅在启用去重后调整 |
| 静止目标去重时间(小时) | 6 | 同一静止目标多久内不重复上报 | 根据现场处置周期调整 |
| 全景图叠加轨迹 | 关闭 | 告警全景图是否附带目标轨迹 | 需要追溯运动路径时开启并验证图片可读性 |
不同已安装任务可能使用 灵敏度计算-计数 而不是模板中的 灵敏度计算-计时,参数含义也会随之变化。不要把某一任务保存值当作所有版本的默认值。
每轮只改一项并记录输入视频、旧值、新值和结果。例如,把告警间隔改小可以快速验证重复事件,但完成演示后应改回与生产处置周期匹配的值。
2.5 设置运行策略并保存
打开 运行策略,选择任务应运行的日期和时段。首次验证时要让当前日期和当前时间落在有效时段内。

检查参数和区域后点击保存。

保存会启动服务。返回视频接入列表,确认通道运行开关已开启或状态为“进行中”。

2.6 验证实时可视化
点击 实时展示。

打开通道选择并选中刚配置的通道。


默认可能只播放视频,不显示算法叠加。打开算法叠加选择。

选择 未戴安全帽。

观察目标框、区域、节点耗时和右侧或右上角事件信息。

当未戴安全帽人员进入区域时,Sophon 模板的分类标签可包含 pedHelmet(头盔)、 pedSafeHelmet(安全帽)、hatless(无帽)和 unsure(不确定)。x86 或自定义模型的标签可能不同,应以当前模型元数据为准。

出现事件时,系统可以显示告警弹窗。

告警弹窗可通过页面左上角或个性化设置中的相关开关控制;关闭弹窗只改变展示方式,不会自动停止事件上报。

再用戴安全帽人员作为负样本。分类结果达到安全帽类别阈值时,不应产生“未戴安全帽”事件。

2.7 查询、查看和导出事件
打开 事件中心 → 检测/分析。

使用通道名称、告警类型、时间范围和上传状态等条件定位目标事件。

点击抓拍图片,核对触发时的目标、区域、分类和时间。

需要离线分析时,点击 数据导出。

打开导出的 CSV,确认列、编码、时区和筛选范围符合预期。

验收记录至少包含:通道与算法名称、检测区域截图、所有非默认参数、运行策略、一条正样本事件、一段负样本结果,以及需要时的 CSV。
3. 完整练习:离岗检测
离岗检测关注“岗位区域持续少于规定人数”,不是检测到单个目标就告警。区域的语义也发生变化:
- 未戴安全帽:只对进入区域的人员继续做安全帽分类;
- 离岗检测:区域表示必须有人值守的位置,人数条件持续满足后产生事件。
3.1 配置路径
- 准备含“有人值守”和“岗位空置”片段的视频通道。
- 在 场景任务分配 中选择 离岗检测。
- 绘制岗位区域,尽量只覆盖实际值守位置。
- 按下表设置人数与持续时间规则。
- 设置当前时间有效的运行策略并保存。
3.2 当前真实参数名称
当前资源文件中的字段如下;表中的“示例设置”用于实现“岗位连续 10 秒少于 1 人”,不是模板默认值。
| 当前参数名 | 模板值 | 示例设置 | 含义 |
|---|---|---|---|
| 目标数量阈值 | 0 | 1 | 与区域内实际有效目标数量比较的阈值 |
| 触发条件 | 小于目标数告警 | 小于目标数告警 | 实际人数与阈值满足哪种关系时命中;还可选大于、小于等于、大于等于、等于 |
| 检测时间 | 0 | 10 | 人数条件需要连续满足的时长数值 |
| 检测时间单位 | 秒 | 秒 | 与检测时间组合成实际持续时间,支持毫秒、秒、分钟和小时 |
| 告警时间间隔(秒) | 3 | 按处置节奏设置 | 相邻离岗事件的最短间隔 |
| 最小行人尺寸 | 60 | 根据画面设置 | 过小行人是否进入人数判断 |
| 静止目标去重 | 关闭 | 通常先关闭 | 是否抑制同一静止目标的重复事件 |
3.3 用正负样本验收
- [ ] 有人在岗位区域内超过 10 秒:不产生离岗事件。
- [ ] 岗位区域少于 1 人但不足 10 秒:不产生事件。
- [ ] 岗位区域连续少于 1 人超过 10 秒:产生离岗事件。
- [ ] 人员返回后,新画面不再持续命中离岗条件。
- [ ] 事件中心可以查询抓拍图和准确时间。
如果多人岗位要求至少 2 人,把 目标数量阈值 设为 2 并保留 小于目标数告警; 不要寻找不存在的“离岗时间阈值”或“最少人数”占位字段。
4. 当前内置场景与可配置模板速查
当前 Sophon 与 x86 资源目录各包含 29 个算法模板。安装包、授权、模型文件和资源导入状态会影响页面实际可见数量,因此不要把“29”当作每台设备必然可运行的承诺。
4.1 传统业务场景模板
| 类别 | 当前模板 | 配置重点 |
|---|---|---|
| 工地与人员防护 | 未戴安全帽、未穿反光衣、未穿工服、区域入侵 | 业务区域、目标尺寸、分类阈值、持续时间和告警间隔 |
| 人员行为与值守 | 睡岗检测、离岗检测、玩手机检测、打电话检测、吸烟检测 | 姿态或分类结果、人数条件、持续时间和去重 |
| 消防安全 | 烟雾检测、火焰检测 | 目标置信度、最小尺寸、持续时间和干扰区域 |
| 园区安防 | 人员跌倒、人员聚集、车辆违停、绊线检测 | 区域或检测线、人数、停留时间、方向和追踪稳定性 |
| 计数统计 | 区域人数统计、人流量统计 | 区域或检测线、统计方式、方向、上报间隔 |
| 识别 | 人脸识别、车牌识别 | 底库或识别配置、目标质量、相似度或解析结果 |
4.2 大模型和组合模板
资源目录还包含 检测大模型、分割大模型、视觉语言大模型,以及视觉检测、视觉分割、视觉语言分析和“检测后分类/分割”等组合模板。它们不是额外的固定业务答案,而是创建提示词任务或组合 Pipeline 的入口:
- 自然语言状态判断与开放类别检测,见VLM 与 DINO;
- 节点组合、检测后分类和分割,见算法编排;
- 需要自有模型时,见第三方模型接入。
先选择 1–2 个与业务最相关的任务跑通完整验证,不要一次启用所有模板。页面实际参数由所选模板节点生成,不能从场景名称猜测。
5. 如何确认配置已经生效
依次确认五层:
- 持久化:离开配置页再重新进入,区域、参数和策略仍是保存后的值。
- 运行:通道开关已开启,当前时间落在运行策略内。
- 检测:实时展示中的目标、区域、类别或统计结果符合预期。
- 事件:正样本形成事件,负样本不形成事件,抓拍图和时间可解释。
- 导出:需要留档时,CSV 的筛选范围、字段、时区和页面查询一致。
只有“保存成功”不能证明算法已经运行;只有检测框也不能证明告警规则正确。
6. 排查顺序
配置无法保存或保存后丢失
- 检查页面是否提示必填字段、区域未完成或参数范围错误。
- 只保留一个最小区域和模板值再次保存。
- 重新进入页面确认是否持久化。
- 查看浏览器网络请求和后端日志中的保存接口错误。
没有检测结果或没有告警
- 视频是否正常播放。
- 通道与算法是否关联,运行开关是否开启。
- 当前时间是否位于运行策略内。
- 目标是否进入区域或穿过检测线;检测框位置选项是否合适。
- 实时展示是否已有上游检测或分类结果。
- 正样本是否持续满足检测时间、人数或灵敏度条件。
- 是否受到告警间隔、告警次数或静止目标去重抑制。
- 最后才基于固定样本调整置信度和最小目标尺寸。
告警弹窗没有出现
先到事件中心查询。如果事件已经保存,问题在弹窗开关或实时展示,不在算法上报;如果事件也不存在,再按上一节从视频到规则逐层检查。
误报过多
- 用抓拍图判断误报来自区域外目标、错误类别、追踪不稳还是瞬时结果。
- 先收紧区域、调整检测线或改变检测框位置选项。
- 对固定干扰目标启用静止目标去重。
- 再逐步提高相关置信度、灵敏度或检测时间。
- 每次只改一项,并用同一组正负样本复测。
导出数据与页面不一致
核对通道、任务、状态和时间范围,确认浏览器、设备与导出时间的时区一致,再重新查询并导出。重复点击查询会刷新数据;应记录导出发生时的筛选条件。
如果经过区域、规则和阈值调整仍无法满足需求,可能需要换用更匹配的算法或模型,而不是继续堆叠参数。
下一步
阅读VLM 与 DINO,了解哪些长尾任务适合用自然语言定义,哪些仍应使用传统检测模型。
