视频理解:时间证据与长程记忆¶
视频不是图片数量增加后的自然延伸。它多出一个不可交换的维度:时间。帧的顺序、持续时长、镜头切换和未被采样的间隔都会改变结论。
同一段视频至少包含四类问题:
- 外观:谁和什么出现在画面里;
- 运动:对象怎样移动或变化;
- 事件:什么在何时发生,先后关系是什么;
- 叙事:跨镜头的人物、目标与因果怎样持续。
只在均匀采样帧上做图像问答,通常只能覆盖第一类和部分第三类。
从运动特征到时空网络¶
早期视频识别常把 RGB 外观与 optical flow 运动分开。双流网络显式提供短期运动线索,3D CNN 则用时空卷积联合处理局部帧块:
I3D 把图像卷积核扩展到时间维;SlowFast 用低帧率通道建模语义、用高帧率轻量通道捕捉快速运动。这里形成了一个持续至今的设计原则:外观和运动需要不同时间带宽。
Transformer 之后,视频可以被写成时空 token。TimeSformer 比较了空间与时间 attention 的分解方式;ViViT 系统化研究 tubelet 与 factorized encoder。全时空注意力表达直接,但 token 数为
其二次复杂度很快成为瓶颈。
自监督视频表示在预测什么¶
视频标注昂贵,自监督学习主要利用时间连续性与遮蔽预测。
VideoMAE 以很高的 tubelet 遮蔽率重建像素,迫使模型从可见时空上下文恢复缺失内容。高遮蔽率有效的一部分原因是相邻帧高度冗余;如果遮蔽策略让模型总能从相邻像素复制,预训练也可能只学到局部捷径。
V-JEPA 不重建像素,而是在表示空间预测被遮蔽目标。它更关注可预测的语义与运动状态,避免花容量恢复难以预测的纹理。两类目标不能只凭预训练 loss 比较:
- 像素重建更容易检查重建内容,却可能过度关注低层细节;
- 表示预测更抽象,但目标 encoder、collapse 避免与下游可解释性成为新契约。
V-JEPA 2 进一步把大规模视频表示学习与动作条件预测、机器人规划连接起来。这种连接是否构成“世界模型”,取决于动作介入、闭环规划和真实转移,而不是仅凭视频 backbone 名称。
采样决定模型能否看到事件¶
设原视频帧率为 \(f\),均匀步长为 \(s\),模型观察帧率为 \(f/s\)。若一个事件只持续 \(\delta\) 秒,观察到它的概率与事件相位、采样网格和 \(\delta f/s\) 有关。单次均匀采样可能完全错过短暂事件。
常用采样策略各有偏差:
| 策略 | 优点 | 主要盲区 |
|---|---|---|
| 均匀稀疏采样 | 覆盖全局、成本稳定 | 短事件与快速运动 |
| 连续 clip | 保留局部运动 | 长程叙事 |
| 多尺度采样 | 同时看局部与全局 | 计算与去重复杂 |
| 事件/镜头驱动 | 把预算给变化位置 | detector 的漏检会前置 |
| 查询驱动检索 | 长视频效率高 | 检索器不理解问题时漏证据 |
评测视频模型时必须记录原始 fps、解码 fps、clip 长度、stride、镜头策略和最终视觉 token。只写“输入 64 帧”无法判断覆盖了 2 秒还是 20 分钟。
下面的实现从真实时间范围生成均匀采样索引,并保证最后一个采样点不越界。它显式接收原始 fps,避免把 frame id 当作秒。
import torch
def sample_video_indices(frame_count, fps, samples):
if frame_count <= 0 or fps <= 0 or samples <= 0:
raise ValueError("invalid video metadata")
duration = (frame_count - 1) / fps
seconds = torch.linspace(0, duration, min(samples, frame_count))
index = (seconds * fps).round().long().clamp_max(frame_count - 1)
return torch.unique_consecutive(index), seconds
index, seconds = sample_video_indices(300, 30, 8)
assert index[0] == 0 and index[-1] == 299
assert torch.all(index[1:] > index[:-1])
生产系统还要处理 variable frame rate、损坏帧、音轨 offset 和镜头时间基。容器时间戳比“假定恒定 fps”更可靠。
时间位置不只是帧编号¶
若不同视频以不同 fps 编码,帧编号差相同并不代表真实时间差相同。时间位置应尽量由 timestamp 生成:
再与二维空间位置组合。多 clip 拼接时还要区分:
- clip 内相对时间;
- 原视频绝对时间;
- 对话中媒体出现顺序;
- 音频与视频共同的时钟。
位置编码只能告诉模型“何时”,不能替代缺失帧。把 1 fps 视频插值成 30 fps 不会恢复真实的快速动作。
事件定位与边界¶
视频问答常只要求最终文本,时间 grounding 则要求区间
常用 temporal IoU:
边界具有标注歧义:一个动作从“伸手”开始,还是从“接触物体”开始?因此评测应报告不同 tIoU threshold、boundary error 与人工一致性,而不是只给单一命中率。
对自然语言问题,较可靠的中间协议是先返回候选时间段与证据帧,再基于这些片段回答。这样可以分别诊断检索失败和推理失败。
长视频需要层级记忆¶
把几小时视频全部展开成细粒度 token 通常不可行。更实用的架构是层级处理:
粗扫¶
用低 fps、镜头摘要、音频转写或轻量 embedding 建立全局索引。它追求召回率,不承担最终细节判断。
精读¶
根据问题检索相关片段,提高帧率和分辨率,必要时加入邻近上下文。精读窗口过窄会丢失事件前因,过宽又浪费预算。
证据记忆¶
保存人物、对象、事件、时间和来源片段。摘要应带 provenance;如果只保留自然语言摘要,早期识别错误会在后续被当作事实。
迭代检索¶
初次证据不足时,根据中间结论生成新查询。查询漂移可能让模型只寻找支持当前假设的片段,因此应保留反证检索与停止条件。
这种“检索式观看”与文本 RAG 相似,却多了时间连续性:命中一帧后,证据常位于其前后,而非另一个独立文档。
多模态视频:字幕、语音与环境声¶
视频理解中的文本至少来自三处:
- 画面内 OCR;
- 人工或自动字幕;
- 语音识别。
它们的可信度和时间粒度不同。字幕可能总结而非逐字转写,ASR 可能错位,OCR 可能只在少数帧可见。融合时应保留来源和 timestamp,避免把三者拼成一段无来源文本。
环境声又提供镜头外事件和同步线索。视觉—音频对齐既可以做 clip 级语义,也可以做毫秒级同步;详见音频理解。
从视频语言模型到世界模型¶
视频语言模型可以回答“发生了什么”,视频生成模型可以合成“可能发生什么”,世界模型则要求“在动作 \(a_t\) 下会发生什么,并能否据此改善决策”:
没有动作条件、奖励/价值或规划验证的视频模型,可以是强大的时序表示或生成器,但不能仅因预测未来帧就被视为可用控制模型。两者的边界见世界模型总览;生成侧的运动与长时一致性见视频生成。
评测矩阵¶
| 能力 | 评测对象 | 关键切片 |
|---|---|---|
| 外观 | 对象、属性、OCR | 分辨率、小目标、遮挡 |
| 运动 | 动作、方向、速度 | fps、快慢动作、相机运动 |
| 顺序 | before/after、步骤 | 打乱帧、反转视频 |
| 定位 | event span、证据帧 | 短事件、边界歧义 |
| 长程 | 人物与目标持续 | 视频长度、证据位置、中部遗忘 |
| 音画 | 同步、声源、字幕 | offset、静音、冲突模态 |
| 证据依赖 | 反事实与检索 | 替换片段、遮挡、无关字幕 |
| 系统 | decode/encode/prefill | 原始时长、token、延迟、显存 |
最重要的反事实包括:打乱顺序、反转时间、替换关键片段、静音、移动字幕和只保留静态帧。若分数几乎不变,数据集或模型可能没有真正要求时间理解。
tubelet、时间采样与 mask 的组合测试见多模态手撕实现。
Reference¶
- Carreira and Zisserman, Quo Vadis, Action Recognition? A New Model and the Kinetics Dataset
- Feichtenhofer et al., SlowFast Networks for Video Recognition
- Bertasius et al., Is Space-Time Attention All You Need for Video Understanding?
- Arnab et al., ViViT: A Video Vision Transformer
- Tong et al., VideoMAE: Masked Autoencoders are Data-Efficient Learners for Self-Supervised Video Pre-Training
- Bardes et al., V-JEPA: Feature Prediction for Video Pre-Training
- Assran et al., V-JEPA 2: Self-Supervised Video Models Enable Understanding, Prediction and Planning