社区计算机视觉课程文档
基于 CNN 的视频模型
并获得增强的文档体验
开始使用
基于 CNN 的视频模型
通用趋势:
深度学习的成功,尤其是大规模数据集(如 ImageNet)上训练的 CNN,彻底改变了图像识别。这一趋势在视频处理中也得以延续。然而,与静态图像相比,视频数据引入了另一个维度:时间。这种简单的变化带来了一系列新的挑战,而静态图像中训练的 CNN 并没有为此做好准备。
视频处理中之前的 SOTA 模型
双流网络 (2014)

本文扩展了深度卷积网络 (ConvNets) 以在视频数据中执行动作识别。
所提出的架构被称为双流网络。它在神经网络中使用了两个独立的路径:
- 空间流: 标准的 2D CNN 处理单个帧以捕获外观信息。
- 时间流: 2D CNN 或其他网络,处理多个帧序列(光流)以捕获运动信息。
- 融合: 然后将两个流的输出组合起来,以利用外观和运动线索进行动作识别等任务。
3D ResNet (2017)

标准 3D CNN 扩展了概念,使用 3D 核(2D 空间信息 + 时间信息)同时捕获空间和时间信息。该模型的一个缺点是参数数量庞大,导致训练计算量更大,因此比 2D 版本慢。因此,ConvNet 的 3D 版本通常比 2D CNN 的更深层架构具有更少的层。
在本文中,作者将 ResNet 架构应用于 3D CNN。这种方法为 3D CNN 引入了更深的模型并实现了更高的准确性。
实验表明,3D ResNet(尤其是 ResNet-34 等更深的模型)优于 C3D 等模型,特别是在更大的数据集上。Sports-1M C3D 等预训练模型可以帮助减轻小数据集上的过拟合。总体而言,3D ResNet 有效地利用了更深层架构来捕获视频数据中复杂的时空模式。
方法 | 验证集 | 测试集 | ||||
---|---|---|---|---|---|---|
Top-1 | Top-5 | 平均分 | Top-1 | Top-5 | 平均分 | |
3D ResNet-34 | 58.0 | 81.3 | 69.7 | - | - | 68.9 |
C3D* | 55.6 | 79.1 | 67.4 | 56.1 | 79.5 | 67.8 |
带 BN 的 C3D | 56.1 | 79.5 | 67.8 | - | - | - |
不带 ImageNet 的 RGB-I3D | - | - | 68.4 | 88.0 | 78.2 |
(2+1)D ResNet (2017)
D convolution..png)
(2+1)D ResNet 的灵感来源于 3D ResNet。然而,关键的区别在于层的结构。这种架构引入了 2D 卷积和 1D 卷积的组合
- 2D 卷积捕获帧内的空间特征。
- 1D 卷积捕获连续帧之间的运动信息。
该模型可以直接从视频数据中学习时空特征,可能在动作识别等视频分析任务中带来更好的性能。
- 优点
- 在两次操作之间添加非线性整流(ReLU)使非线性操作的数量增加了一倍,与使用相同参数数量的完整 3D 卷积网络相比,该模型能够表示更复杂的函数。
- 分解有助于优化,在实践中产生更低的训练损失和测试损失。
方法 | Clip@1 准确率 | Video@1 准确率 | Video@5 准确率 |
---|---|---|---|
DeepVideo | 41.9 | 60.9 | 80.2 |
C3D | 46.1 | 61.1 | 85.2 |
2D ResNet-152 | 46.5 | 64.6 | 86.4 |
卷积池化 | - | 71.7 | 90.4 |
P3D | 47.9 | 66.4 | 87.4 |
R3D-RGB-8帧 | 53.8 | - | - |
R(2+1)D-RGB-8帧 | 56.1 | 72.0 | 91.2 |
R(2+1)D-Flow-8帧 | 44.5 | 65.5 | 87.2 |
R(2+1)D-双流-8帧 | - | 72.2 | 91.4 |
R(2+1)D-RGB-32帧 | 57.0 | 73.0 | 91.5 |
R(2+1)D-Flow-32帧 | 46.4 | 68.4 | 88.7 |
R(2+1)D-双流-32帧 | - | 73.3 | 91.9 |
当前研究
目前,研究人员正在探索更深的 3D CNN 架构。另一种有前途的方法是将 3D CNN 与注意力机制等其他技术相结合。除此之外,还有一项推动开发 Kinetics 等更大视频数据集的努力。Kinetics 数据集是一个大规模高质量视频数据集,常用于人类动作识别研究。它包含数十万个涵盖广泛人类活动的视频片段。
当前研究
自监督学习:MoCo (动量对比)

概览
MoCo 是自监督学习领域的一个突出模型,它使用对比学习方法从未标记的视频片段中提取特征。通过利用基于动量的队列,它有效地从大规模视频数据集中学习,使其非常适合动作识别和事件检测等任务。
主要功能
- 动量编码器:使用动量更新的编码器来保持表示空间的一致性,增强训练稳定性。
- 动态字典:采用基于队列的字典,为对比学习提供大量一致的负样本。
- 对比损失函数:利用对比损失通过比较正负对来学习不变特征。
高效视频模型:X3D (扩展 3D 网络)
.png)
概览
X3D 是一种轻量级 3D ConvNet 模型,专为视频识别任务而设计。它基于 3D CNN 的概念,但优化了更少的参数和更低的计算成本,同时保持了高性能。这使得它适用于实时视频分析和在移动或边缘设备上的部署。
主要功能
- 效率:以显着更少的参数和更低的计算成本实现高精度。
- 渐进式扩展:利用系统方法扩展网络维度(例如,深度、宽度)以获得最佳性能。
- 易于部署:专为在计算资源有限的设备上轻松部署而设计。
实时视频处理:ST-GCN (时空图卷积网络)
.png)
概览
ST-GCN 是一种专为实时动作识别而设计的模型,特别是在分析视频序列中的人体运动方面。它使用图结构建模时空数据,有效地捕获人体关节位置和运动。该模型广泛用于监控和体育分析等应用中的实时动作检测。
这些尖端模型在推动视频处理方面发挥着至关重要的作用,在视频分类、动作识别和实时处理等领域表现出色。
主要功能
- 基于图的建模:将人体骨骼数据表示为图,允许自然地建模关节连接。
- 时空卷积:集成空间和时间图卷积以捕获动态运动模式。
- 实时性能:针对快速计算进行了优化,使其适用于实时应用。
结论
视频分析模型的演变令人着迷。这些模型深受其他 SOTA 模型的影响。例如,双流网络(Two-StreamNets)受到 ConvNets 的启发,而 (2+1)D ResNet 则受到 3D ResNet 的启发。随着研究的深入,未来有望出现更先进的架构和技术。
< > 在 GitHub 上更新