Skip to content

第 1 章 概述与架构 ​

1.1 读者对象与范围 ​

智眸(UanVision)是智觉(UanSense)下的视觉神经,将现场相机画面转换为带证据的结构化事件。画面从相机到识别引擎之间的传输、鉴权、配置下发与故障处理,统称现场接入。本章说明现场接入的部署形态、系统组件、接入流程、安全边界与故障域;后续各章分别说明部署场景、部署全景、安装配置、运维排障与接口数据。

读者为沅虹交付与运维工程师,以及合作集成商的技术人员。客户管理员的日常操作见文档中心的智眸产品文档,不在本指南范围内。

本指南按部署与运维的顺序组织,内容以对应的软件版本为准,版本变化见附录 F。

1.2 部署形态 ​

现场接入支持三种部署形态,按识别引擎所在位置区分。

形态现场设备检测位置判定位置画面是否离开场站
远程(云托管)接入盒:双网口小型主机,仅负责拉流与推流沅虹处理中心沅虹处理中心(智悟与蓝精灵)经加密通道传出
本地轻带独立显卡的小型主机,内存 64 GB 起现场本机现场本机(蓝精灵放内存)或云端智悟不离开
本地重DGX Spark(64 GB 或 128 GB)现场本机现场本机不离开

本版主要描述远程形态。远程形态涉及接入盒、控制面与处理节点三方协作,组件最多。本地两种形态的安装程序正在开发,完成后补充相应章节。

智眸的识别分两层。处理节点上的小模型完成检测、跟踪、区域与时序规则,直接给出入侵、烟火、安全帽、反光衣、车辆、异常光源等科目的结果;打架、倒地、攀爬等行为科目以及规则判断不清的事件,节点只组装候选(多帧蒙太奇、时间线、姿态),以"待判定"事件经虹元送到智悟,由智悟调用蓝精灵(沅虹在自有现场数据上微调的判定模型)给出最终结论与处置建议,结论回流后告警才成为正式科目。判定能力的位置决定部署形态:云托管由处理中心的智悟统一判定;本地形态要么在本机运行蓝精灵(硬件要求见第 2 章),要么在合同允许时把候选送云端智悟判定;完全断网的现场必须在本机运行蓝精灵。

候选在上行之前先经过处理节点上的行为时序门控。视频行为模型对攒帧窗口内的每个人框给出打架、倒下、攀登三类分数,三类分数都低于门限时该窗口不上行;其余情况一律上行,分数附在事件时间线上供智悟与复核人员参考。门限取真值集上三类全部召回的位置,缓冲帧不足或模型不可用时门控放行。门控的作用是把大量正常走动的窗口挡在节点,判定本身仍由智悟完成。

1.3 系统组件 ​

远程形态由接入控制面、接入盒代理、处理节点代理、智眸中心接入页四个服务组件和一个公共库构成。

接入控制面 uanlink 运行在公网入口主机上,由 nginx 反向代理为 link.uanhon.cn,负责接入码签发、盒子入网与心跳、相机清单下发、推流账号管理、口令密文中转、计量台账与审计。公网入口主机的资源有限,控制面的常驻内存控制在 100 MB 以内。

接入盒代理 uanbox-agent 运行在客户现场的接入盒上,完成入网、自检、相机发现、口令解密、本机 mediamtx 配置渲染、心跳上报与失败退避。

处理节点代理 uanhub-agent 运行在处理节点上,将推流账号同步到节点的 mediamtx,上报每路收到的字节数,并处理上行拥塞卸路与公网地址跟随。

智眸中心接入页由租户的中心实例提供,路径 /api/link/*,代客户管理员调用控制面的租户侧接口,管理员本人不接触租户钥匙。

智悟(UanMind)与蓝精灵不属于现场接入组件,但识别链路依赖它们:智眸中心把事件送入虹元,智悟取出待判定事件,用蓝精灵判定后把结论与处置写回虹元并回流智眸中心。

公共库 common 为上述组件提供签名、接入码、推流口令、密封格式与接口数据结构的统一实现,接口的字段定义以公共库为准。

组件之间的关系如下图所示。

远程形态的组件关系:实线为视频流与事件,虚线为控制与信令,判定由智悟调用蓝精灵完成后回流

视频流不经过任何控制组件。接入盒上的 mediamtx 通过 WHIP 将每路画面直接推送到处理节点的 mediamtx,控制面只下发推送地址与账号。由此得到两条性质:控制面不可用时,正在推送的画面不受影响;控制面上不保存任何口令明文与画面。证据短片的回放同样不经过公网入口:中心返回处理节点上的按需路径,节点将短片转为一路临时流,浏览器以 WHEP 直连播放。

1.4 接入流程 ​

步骤执行者位置操作系统行为
0沅虹运营运维主机sense-tenant add <租户> <序号> 开通租户处理节点建立网络命名空间与节点实例,中心实例生效并登记到入口网关;控制面建立租户,租户钥匙写入中心环境
1沅虹运营预绑定场所盒子安装系统,接入页建立现场并生成接入码,uanbox-prebind <接入码> 入网,贴标签盒子生成身份密钥(Ed25519)与密封密钥(P-256),绑定现场
2安装员现场蓝口接宽带,黄口接相机交换机,通电盒子联网、自检,每 60 秒在黄口发现相机,结果上报控制面
3客户管理员接入页确认盒子在线、网络合格,发现的相机默认全选中心每 10 秒从控制面拉取状态
4客户管理员接入页填写账号口令并保存浏览器用盒子公钥加密,控制面只存密文;盒子 1 秒内拉取、解密,每台相机以 RTSP 探测一次
5客户管理员接入页点击"全部接入(n 台)"控制面分配 cam01 至 camNN 并生成推流账号;盒子开始推送,节点接收;中心写入相机配置,节点 20 秒内建立通道
6系统每路转为在线并显示缩略图;异常的路显示原因盒子心跳携带每路状态与原因

从设备到货到 30 路上线,现场操作仅为接线通电,管理员操作约 10 分钟。

1.5 安全边界 ​

接入盒只主动出站:HTTPS 到 link.uanhon.cn,WHIP 到处理节点。盒子不向公网开放任何端口;黄口仅开放本地诊断页 8080、DHCP、对时以及相机发现的回包。

盒子身份在入网时由盒子自行生成 Ed25519 密钥对,此后每个请求携带 x-box-id、x-ts、x-sig,签名覆盖方法、路径、时间戳与请求体哈希。时间差超过 300 秒、同一时间戳同一签名重放、盒子状态非 active 的请求一律返回 401。

相机口令只在管理员浏览器内加密(P-256 ECDH、HKDF-SHA256、AES-256-GCM,格式 sealed_v1),密钥推导与附加数据均绑定 box_id|ip,密文更换盒子或 IP 后均无法解开。控制面、中心、日志与备份中只有密文。盒子本地 /etc/uanbox/cameras.secret(权限 600)中手工填写的条目优先于下发的条目。

推流账号按相机签发,账号为 p_<租户>_<相机>,口令为 32 字节随机值,数据库仅保存 mediamtx 可直接使用的 sha256 哈希,明文只在下发给盒子时出现一次。

租户隔离在处理节点上以系统用户、网络命名空间与独立存储实现,nftables 仅放行该租户需要到达的端口。智眸的入口域名是 vision.uanhon.cn,原入口 sense.uanhon.cn/app 并行保留,两者共用同一套租户路由,不为租户设子域:用户经门户(portal.uanhon.cn)登录,门户签票时确定租户,入口网关按租户码把页面与接口转到该租户的中心实例,中心兑换票据后种路由 cookie;控制面租户侧接口按 x-tenant-key 鉴权,其他租户的现场、盒子与相机一律按不存在返回 404。运营侧钥匙 x-admin-key 仅接受来自本机回环或 nginx /v1/admin/ 前缀(来源 IP 白名单)的请求。

1.6 故障域 ​

一路画面从相机到事件经过五个环节。各环节的故障表现与应对方式如下,多盒互备的设计以此为出发点。

环节故障表现单盒现场双盒现场
相机与相机交换机相机掉电、交换机故障无法应对,属客户设备同左。交换机为单点,勘查时向客户说明
接入盒掉电、硬盘故障该盒全部相机停止另一台盒子在失联判定后接管其相机
现场上行断网、带宽占满占满时节点卸路;断网全部停止两台盒子各接一条宽带,一条中断由另一条承担
处理节点宕机、机房断网全部云托管租户停止同左,节点级互备在后续阶段
控制面服务不可用盒子按最后配置继续推送,配置不可更改同左

沅虹科技 · 智建管建设,智安保稳产,智觉察现场,智悟定行动