feat(v1): compose temporal fall event pipeline
This commit is contained in:
+5
-3
@@ -32,7 +32,7 @@
|
||||
```
|
||||
|
||||
- `rtsp_url_env` 必填;应用从同名环境变量读取真实 URL。
|
||||
- 数值是待现场录像校准的默认值;每个值必须真正进入事件逻辑。示例中的全零 SHA-256 只占位配置形状,T-103 必须以受控模型的真实哈希替换并验证后才能启动推理。
|
||||
- 数值是待现场录像校准的默认值;每个值必须真正进入事件逻辑:`keypoint_confidence_threshold` 决定姿态质量门槛;`suspect_window_seconds` 限制快速下移到水平姿态的最大间隔;`confirm_window_seconds` 是水平倒地候选需持续的确认时间;`recovery_window_seconds` 是恢复姿态需持续的时间;`cooldown_seconds` 是确认事件后允许开始恢复判断前的最短等待时间。示例中的全零 SHA-256 只占位配置形状,T-103 必须以受控模型的真实哈希替换并验证后才能启动推理。
|
||||
- 缺少环境变量、模型不存在或哈希不符时,应用显示配置错误,不启动监控。
|
||||
|
||||
## 核心数据
|
||||
@@ -66,6 +66,7 @@ PoseEvidence = {
|
||||
FallEvent = {
|
||||
event_id: string,
|
||||
track_id: string,
|
||||
config_version: string,
|
||||
suspected_at_monotonic: float,
|
||||
confirmed_at_monotonic: float,
|
||||
latency_seconds: float,
|
||||
@@ -73,7 +74,7 @@ FallEvent = {
|
||||
}
|
||||
```
|
||||
|
||||
`FallEvent` 是 T-105 状态机的纯内存确认事件,只在状态首次进入 `CONFIRMED` 时创建一次。连续帧更新 UI 状态,但不重复创建事件。T-202 的 `alerts` 会在不改变事件幂等语义的前提下,为截图/JSONL 记录补充来源、UTC 时间、证据和配置版本。
|
||||
`FallEvent` 是状态机的纯内存确认事件,只在状态首次进入 `CONFIRMED` 时创建一次。连续帧更新 UI 状态,但不重复创建事件。`config_version` 是由运行配置快照计算的非敏感版本标识;T-202 的 `alerts` 会在不改变事件幂等语义的前提下,为截图/JSONL 记录补充来源、UTC 时间和证据。
|
||||
|
||||
`PersonPose` 是 T-103 的纯模型输出,不带人员 ID;T-104 的跟踪模块产生 `TrackedPersonPose` 后,才允许事件证据按人员连续积累。
|
||||
|
||||
@@ -88,7 +89,8 @@ FramePacket = {
|
||||
}
|
||||
```
|
||||
|
||||
- 录像优先使用容器时间戳;首帧时间戳无效或倒退时,回退为帧序号/FPS,保证回放时间单调。
|
||||
- `SourceMode.REPLAY` 的录像优先使用容器时间戳;首帧时间戳无效或倒退时,回退为帧序号/FPS,保证回放时间单调;到达 EOF 后保持 EOF,不重放。
|
||||
- `SourceMode.STREAM` 的实时流以成功读帧时的单调时钟计时;读取失败进入有界指数退避重连,不使用 `CAP_PROP_POS_MSEC` 作为事件时间。
|
||||
- `retrying`、`error`、`eof` 和 `closed` 都没有图像,且绝不伪造人员、姿态或摔倒事件。
|
||||
- 可重连来源以有界指数退避重新打开;断流不推进状态机的证据时间。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user