# AI 检测

云瞰 内置 8 类检测：运动 → 物体 → 人脸 / 车牌 / 跌倒 / 包裹 / 手势 / 音频（婴儿哭声）。本章讲解检测顺序、参数怎么调、人脸库管理、敏感区域、以及加速后端的选择。

## 检测顺序

每路摄像头独立检测，按 5 帧/秒 默认节流（可调）。检测顺序自上而下：前一步过不了就跳过后面所有，节省算力：

1. **运动检测**：先看帧间差异，没动跳过后面所有步骤（最便宜的滤波器）
2. **物体检测**：框出人 / 车 / 动物等 80 种常见物体
3. **目标追踪**：给每个物体打 ID，避免同一个人触发多次事件
4. **精细识别**（可选并行）：人脸识别、车牌识别、姿态 / 跌倒
5. **事件落库**：达到阈值 + 不在冷却期 → 写事件，触发推送 / 自动化

## 加速后端选哪个

镜像 tag 决定 AI 用哪种硬件加速。**安装时一次性选定**——不同变体装的是不同的 onnxruntime wheel（cpu / openvino-gpu / cuda），运行时不能热切换。要换后端就要拉对应变体的镜像重新 `docker compose up -d`。

| 后端 | 硬件 | 10 路 5fps 大致 CPU 占用 |
| --- | --- | --- |
| **cpu** | 纯 CPU | 70–90% 4 核 |
| **openvino** | Intel 集显 / NPU 11 代+ | 20–40% |
| **cuda** | NVIDIA 显卡 | 8–15% + GPU 50% |
| **trt** | NVIDIA 显卡（最快） | 5–10% + GPU 30%（首次启动需要 ~3min 模型优化） |

## 运动检测

默认开。**灵敏度** 越高越敏感，太高会被风吹树叶 / 阴影飘过触发；太低小孩慢慢走会漏。建议从默认值开始，根据误报情况往两边微调。

## 物体检测

认识 80 种常见物体，常用：人 / 车 / 自行车 / 摩托 / 公交 / 卡车 / 猫 / 狗 / 鸟。事件页面有筛选框可以只看你关心的类。

## 人脸识别

需要先建人脸库：网页后台 → 人脸 → 添加。每个人传 3–5 张正脸（不同光照 / 角度），系统提取面部特征存数据库。检测时用相似度匹配。

- **已知人脸**：识别到时事件标 "<姓名> 出现"
- **陌生人**：识别到但库里没匹配上 → 标 "陌生人"
- **无人脸**：物体检测识别到人但相机角度看不到脸 → 标 "行人"

> **⚠️ 光照差识别率会掉**
>
> 夜视红外 + 白天日光 在系统看是不同人。家门口建议白天和夜视各传 2–3 张。**人脸阈值** 提高会更严但漏识别多，降低会更松但易认错。

## 车牌识别

国内蓝牌 / 绿牌 / 黄牌都支持。车库 / 院子门口装一台对着车道方向的相机，识别率好的话可以做 "自家车回来自动开门" 之类的自动化。

## 跌倒检测（独居老人）

三层判定避免误报：

1. **单帧躺姿**：判断当前姿态像 "躺"
2. **连续多帧确认**：连续若干帧里都是躺姿，过滤短暂蹲下 / 弯腰
3. **下落速度门控**：从 "站" 到 "躺" 的速度足够快，过滤 "主动躺下"（如躺沙发睡觉）

> **💡 建议装在客厅 / 卧室**
>
> 跌倒检测对相机视角敏感：俯角 30–45° 最好。装得太高（俯角 80°）人在地上像一个圆点，检测会失败。

## 敏感区域（Zones）

默认全画面都触发检测。如果想 "只关心进入院子大门，不要管马路上路过的人"，画一个多边形 zone：

1. **进 zone 编辑器**

   摄像头详情 → 敏感区域 → 编辑

2. **在画面上画多边形**

   鼠标点击逐个顶点，闭合 ≥ 3 个点；可以画多个，每个独立配置

3. **配规则**

   每个 zone 选 "触发 / 排除"，触发=只在 zone 内的物体算，排除=zone 内的不算

4. **保存**

   立即生效，无需重启

## 阈值与冷却时间

设置 → 检测 全局调整，每个相机也可单独覆盖。常用：

| 参数 | 默认 | 调高的副作用 | 调低的副作用 |
| --- | --- | --- | --- |
| 物体置信度阈值 | person 0.40 / vehicle 0.30 / 其它 0.25 | 漏检 | 误报多 |
| 人脸相似度阈值 | 0.5 | 漏识别 | 认错人 |
| 事件冷却（秒） | 120（人脸）/ 30（音频）/ 5（手势） | 丢事件 | 刷屏 |
| 跌倒下落速率阈值 | 0.6 (bbox 高度归一化 / 秒) | 漏跌倒 | 误把躺沙发当跌倒 |

## 包裹检测（快递到家）

门口相机识别到 "快递/纸箱" 类物体并稳定停留若干秒后触发 "包裹送达" 事件；离开后触发 "包裹被取走"。配合自动化可以做 "快递到了推送通知 + TTS 喊话"。需要在 网页后台 → 设置 → 检测 手动启用（默认关闭，且需要 `skyview-package.onnx` 模型——商业镜像已内置）。

## 手势识别

在 person 物体框基础上对人手做手势识别，默认启用 6 个常用手势：like（点赞）/ ok / peace（V 手势）/ palm（手掌）/ stop（停止）/ fist（拳头）。可在 设置 → 检测 → 手势 中开关。配合自动化可以做 "对相机比 SOS 手势 → 推送报警"。

> **💡 需要 NVIDIA GPU**
>
> 手势识别推理代价较高，CPU/Intel 集显档位不建议开。商业镜像内置 `skyview-gesture.onnx` 模型，纯 CPU 跑会显著拖慢主流水线。

## 音频检测（婴儿哭声）

云瞰 内置 BC-ResNet 婴儿哭声识别（`skyview_audio_cry`），每 1 秒滑窗对 2 秒音频片段做一次推理，命中后触发 "婴儿哭声" 事件。需要相机有麦克风且 RTSP 流带音轨。默认关闭，在 设置 → 检测 → 音频 启用。

> **⚠️ 环境噪音容易误报**
>
> 猫叫、电视广告、洗碗机噪音偶尔会误报。建议把音频阈值往高调，并把 RMS 门控开起来过滤静音段。新生儿家长记得把 "婴儿哭声" 自动化的冷却调到 60s 以上避免连续推送轰炸。

## 关闭某些检测

经验值：6GB 显卡跑完整流水线（物体 + 人脸 + 跌倒 + 包裹 + 手势 + 音频）大约能稳 6–8 路 1080p 子码流。要放更多路，可以在每相机详情里关掉用不到的（比如门口相机不需要跌倒，关掉）；也可以全局关某类（设置 → 检测 → 启用项）。

---

来源:https://yun-kan.com/zh-TW/docs/detection
