Files
yovision/docs/02-requirements.md
T
QiuSW e18a1ea83b
Harness governance / validate (push) Has been cancelled
Harness governance / validate (pull_request) Has been cancelled
docs(design): apply Sense prototype review
2026-08-04 10:05:56 +08:00

8.1 KiB
Raw Blame History

需求

本文是 agent 实现入口,完整需求编号、推导和风险见 docs/raw/01-需求收集.md 与 docs/raw/02-需求分析.md。

1. MVP 范围

首个可交付 MVP 覆盖 M0–M3:

  1. ONVIF/RTSP 摄像头批量接入、校时、探活、断线重连和设备台账。
  2. MediaMTX 媒体路由与可收敛的控制面对账。
  3. 默认 16 路的推理、规则、事件证据和预警闭环。
  4. 多租户/RBAC 的最小隔离、事件不可变存储、审计。
  5. 预警 ack、超时升级、双路径投递、限时静默和重启续跑。
  6. 误报标记与样本回流。

交付边界已定为客户侧私有化部署的 S2 民办寄宿学校,默认 16 路高风险点位;代码保留 SaaS-ready 租户边界。M1–M3 只接 ONVIF/RTSP,只验证 NVIDIA x86/Jetson 主路径,不包含 GB/T 28181、信创适配、人脸或独立原生 App。

2. 当前 M0 验收

  • 在隔离实验室运行 MiBeeNvr 等现成测试台,不改 _reference/,不接真实客户摄像头。
  • 选择 3–5 款候选摄像头,逐款通过 GetProfiles、GetStreamUri、SetSystemDateAndTime。
  • 记录断线恢复、认证失败、时间漂移、主/子码流和厂商差异,形成采购白名单。
  • 执行 raw/01-需求收集.md §8 已批准的决策台账;只将明确记录的下游法务、客户、硬件和供应商门禁留到对应里程碑。
  • M0 代码与临时配置可丢弃,不作为生产基线;可借鉴范围严格遵循 NVR 白名单。

3. P0 功能要求

3.1 接入与设备

  • 支持标准 ONVIF/RTSP,不绑定摄像头品牌。
  • 台账与管理端以“设备”为根实体,使用 modality 表达 video / radar / contact / button / wearable / other,并使用 capabilities 决定是否展示画面、媒体、空间配置、遥测等能力;M1~M5 只完整实现 video 适配器,M6 再接入非视频设备,但不得因此把数据模型和一级信息架构写死为摄像头。
  • 支持 NAT 后的边缘主动推流;设备身份使用稳定序列号而非 IP。
  • 批量开通不依赖逐路手工操作,支持待激活中间态。
  • 探活、离线告警、开通校时、断线自动恢复。
  • 容量写入时校验站点配额;配额服务不可用时拒绝新增/启用,但不影响已有流。
  • 隐私准入策略属于 Area,使用 capture_policy = video_allowed | non_imaging_only;Sense 在设备新增/启用时依据设备成像能力校验。策略读取失败时拒绝新的成像设备变更并告警,已有链路不静默停用或伪装为已收敛。

3.2 分析与规则

  • 检测能力与场景解耦;规则位于推理之后、告警之前。
  • 支持目标类型、属性/身份、区域、时段、行为和持续时长组合。
  • 支持多边形区域、方向性警戒线和租户/站点/设备三级覆盖。
  • ReID 是默认同一性手段;人脸识别按租户授权、默认关闭,失败时降级而非漏报。

3.3 事件与证据

  • 规则命中生成事件实例:结构化数据、抓拍和含 pre-roll 的视频片段。
  • 事件与预警分离;事件不可变,误判只追加/更新处置结果,不改写事实。
  • 支持设备冷却、站点聚合、已处置抑制和误报反馈。
  • Brain → Bell 必须符合冻结的事件契约 v0.1 和代码级断言。

3.4 预警与处置

  • 预警必须有 ack;未 ack 自动升级,进程重启后能续跑。
  • 升级链、超时、联系人和时段可按租户/站点配置。
  • 至少两条独立投递路径,其中一条可绕过互联网。
  • 区分已发出、已送达、已看到;没有回执不能当成功。
  • 静默必须限时且自动恢复,单次不超过 4 小时,无永久静默。
  • 业务预警与运维告警使用不同通道和值班配置。

3.5 平台、安全与运维

  • 多租户数据、账号、配置和存储隔离;最小 RBAC 为平台管理员、租户管理员、站点管理员、值班员、只读。
  • 全链路审计,预警生命周期可追溯。
  • Prometheus/Grafana 至少覆盖设备在线、流状态、推理延迟、事件量、未收敛项和投递 SLA。
  • 断网时边缘缓存事件,恢复后补传。
  • 不在代码、日志、证据文件名和工单中泄露摄像头凭据、客户名或敏感地址。

3.6 管理端与外部集成

  • Bell 自研并持有事件、Alert、ack、升级链、租户和审计真相;客户既有平台不得成为这些状态的唯一真相源。
  • 对外使用版本化 OpenAPI/Webhook;M3 客户端为值班室 Web + 响应式移动 H5,可嵌入客户系统。
  • 投递层必须使用供应商无关的 provider 接口;试点至少有本地声光/Web 与一条短信或语音,生产前补齐两条独立路径及故障切换。

4. 容量与性能

维度 默认交付 本阶段上限 验收方式
站点视频配额 16 路 128 路 配置项 site.max_video_channels,Bell 持有、Sense 执行
媒体 1 个初始分片 建议 4 个起步 码率、连接、重连和单分片故障隔离实测
推理 1 个逻辑分片起步 最多 8 个 16 路逻辑分片 模型、分辨率、FPS、batch、硬件实测
UI 16 路默认视图 128 路站点 分页/虚拟列表/筛选/批量操作;不一次加载全部视频

硬约束:

  • 16 是默认配额,不得写死到数据库约束、数组、循环、规则、分页或批量操作中。
  • 128 路不等于单机能力。接入/录像带宽、同时解码、AI 推理、证据存储分别压测和验收。
  • 默认由客户已有 NVR 承担常态录像,YoVision 优先保存事件证据,避免重复存储全量视频。

5. 场景优先级

  • 首个场景为 S2 民办寄宿学校:客户侧 16 路高风险点位,先做越线、危险区域、聚集等匿名安全规则,不启用人脸。
  • S1 居家养老、S3 社区仍是后续目标场景;S1 卧室/卫生间只能使用非成像传感器,该能力在 M6 实现。
  • S4 工厂/园区在 M4 前不实现;首个人脸试点最早 M5,仅候选成人访客/承包商白名单且首库不超过 10,000 人。
  • 高空抛物不进通用底座。

6. 合规门禁

  • 家庭卧室、卫生间不安装摄像头,只能使用非成像传感器。
  • 真实 S2 生产试点在 M3 上线前,客户/法务必须确认未成年人影像处理、公共安全视频法规适用性、告示/备案、角色权限和最终留存期限;不阻塞 M1 实验室 Sense 骨架。
  • 首个人脸试点在 M5 上线前,必须完成必要性与个人信息保护影响评估、单独同意/替代方式、合法底库来源和撤回/删除流程;方向批准不等于法务批准。
  • 人脸特征加密、独立审计、有效期必填、到期失效;原始人脸图不与普通事件证据混存。
  • YOLO 商用必须取得 Ultralytics Enterprise License;未获批则走已记录的开源替代路线。

7. MVP 非目标

  • 不使用完整 MiBeeNvr 作为生产系统。
  • 不在 M1 开发完整管理端、人脸、异构传感器或多场景包。
  • M1–M3 不实现 GB/T 28181、国产化信创适配和独立原生 App。
  • 不为 128 路提前堆一套分布式平台,但所有边界必须可分片、可配置、可观测。
  • 不承诺未经现场数据验证的检出率或误报率;先建立可重复测试集和基线。

8. 验收与证据留存

  • M3 先 dry-run 不少于 2 周,冻结站点机位、规则版本、人工标注口径和现场标注集。
  • 效果指标按规则分别报告召回率与每路每天误报数;现场基线形成后,在站点验收附件中签署数值阈值,不使用跨场景统一“准确率”。
  • 事件片段默认存客户侧 MinIO/S3 兼容对象存储,常态录像留在客户 NVR。技术默认 30 天并在目的完成后删除;客户/法务确认最终期限。元数据、审计、人脸与训练样本使用独立策略。

9. 追溯