了解视频分类任务与数据集——从数据组织到时空建模的完整认知
目录
一、前言
二、什么是视频分类任务
(一)基本定义
(二)输入输出形式
(三)任务特点
三、视频分类 vs 图像分类
四、视频数据的结构
(一)基本结构
(二)张量形式
(三)关键点
五、视频分类任务类型
(一)单标签分类
(二)多标签分类
(三)细粒度分类
(四)时序动作识别(扩展)
六、视频分类任务流程
(一)整体流程
(二)关键步骤
七、视频数据预处理
(一)帧采样策略
1、均匀采样
2、随机采样
3、密集采样
(二)帧数统一
(三)常见预处理
八、视频分类主流模型
(一)2D CNN + LSTM
(二)3D CNN
(三)C3D
(四)I3D
(五)SlowFast
(六)Transformer类模型
九、视频分类常见数据集
十、UCF101数据集
(一)简介
(二)特点
(三)类别示例
十一、HMDB51数据集
(一)特点
(二)类别
十二、Kinetics-400 / 600 / 700
(一)简介
(二)特点
(三)重要性
十三、Something-Something V2
(一)特点
(二)示例
(三)优势
十四、数据集对比
十五、视频分类评价指标
(一)Top-1 Accuracy
(二)Top-5 Accuracy
(三)Mean Accuracy
十六、视频分类难点
(一)时间建模复杂
(二)计算成本高
(三)数据标注昂贵
(四)背景干扰
十七、视频分类应用场景
(一)安防监控
(二)自动驾驶
(三)内容推荐
(四)医疗分析
十八、视频分类流程总结
十九、总结
一、前言
在计算机视觉中,视频理解是比图像理解更进一步的任务。
如果说图像分类是:
识别“这一张图是什么”那么视频分类就是:
识别“一段视频在做什么”视频不再是静态信息,而是:
空间信息(每一帧画面)
时间信息(帧与帧之间变化)
因此视频分类任务本质是:
时空联合建模问题二、什么是视频分类任务
(一)基本定义
视频分类任务是:
对一段视频整体进行类别预测的任务(二)输入输出形式
输入:视频(连续帧)
输出:类别标签
例如:
| 视频内容 | 类别 |
|---|---|
| 打篮球 | sports |
| 做饭 | cooking |
| 开车 | driving |
(三)任务特点
一个标签对应一段时序数据三、视频分类 vs 图像分类
| 对比项 | 图像分类 | 视频分类 |
|---|---|---|
| 输入 | 单张图像 | 多帧序列 |
| 信息 | 空间 | 空间 + 时间 |
| 难度 | 低 | 高 |
| 模型 | CNN | 3D CNN / Transformer |
四、视频数据的结构
(一)基本结构
Video = Frame1 + Frame2 + ... + FrameN(二)张量形式
常见表示:
(B, T, C, H, W)含义:
B:batch size
T:时间帧数
C:通道
H:高度
W:宽度
(三)关键点
时间维度是视频任务的核心五、视频分类任务类型
(一)单标签分类
一个视频 → 一个类别例如:
UCF101数据集
(二)多标签分类
一个视频 → 多个动作标签例如:
人同时走路+说话
(三)细粒度分类
相似动作区分
如:慢跑 vs 快跑
(四)时序动作识别(扩展)
检测动作发生时间段
六、视频分类任务流程
(一)整体流程
视频输入 ↓ 帧采样 ↓ 特征提取 ↓ 时空建模 ↓ 分类器 ↓ 输出标签(二)关键步骤
帧采样(Sampling)
时空特征建模
分类头
七、视频数据预处理
(一)帧采样策略
1、均匀采样
每隔固定帧取一帧2、随机采样
用于训练增强
3、密集采样
用于高精度任务
(二)帧数统一
不同视频长度 → 统一T帧(三)常见预处理
Resize
Normalize
Crop
Flip
八、视频分类主流模型
(一)2D CNN + LSTM
CNN提特征 + LSTM建模时间(二)3D CNN
直接时空卷积(三)C3D
经典3D CNN
(四)I3D
2D CNN扩展为3D CNN
(五)SlowFast
双速率时序建模(六)Transformer类模型
Video Transformer
TimeSformer
九、视频分类常见数据集
十、UCF101数据集
(一)简介
最经典的视频动作识别数据集之一(二)特点
101类动作
13,000+视频
来自YouTube
(三)类别示例
Basketball
Diving
Cooking
十一、HMDB51数据集
(一)特点
更小但更复杂(二)类别
51类动作
人体动作更细粒度
十二、Kinetics-400 / 600 / 700
(一)简介
Google推出的大规模视频数据集(二)特点
400+类别
超过30万视频
真实场景
(三)重要性
视频分类领域ImageNet级别数据集十三、Something-Something V2
(一)特点
强调动作与物体交互(二)示例
“push something”
“open something”
(三)优势
强时间依赖
弱空间依赖
十四、数据集对比
| 数据集 | 规模 | 特点 |
|---|---|---|
| UCF101 | 小 | 基础动作 |
| HMDB51 | 小 | 复杂动作 |
| Kinetics | 大 | 真实场景 |
| Something-Something | 中 | 时序交互 |
十五、视频分类评价指标
(一)Top-1 Accuracy
Accuracy=\frac{Correct}{Total}
(二)Top-5 Accuracy
预测前5中包含正确类别(三)Mean Accuracy
多类别平均精度
十六、视频分类难点
(一)时间建模复杂
动作是连续变化的(二)计算成本高
视频数据量巨大
(三)数据标注昂贵
需要人工标注整段视频
(四)背景干扰
复杂场景影响识别
十七、视频分类应用场景
(一)安防监控
异常行为检测
人群分析
(二)自动驾驶
行人行为预测
车辆动作识别
(三)内容推荐
短视频标签分类
内容审核
(四)医疗分析
手术动作识别
十八、视频分类流程总结
Video Input ↓ Frame Sampling ↓ Feature Extraction (CNN) ↓ Temporal Modeling (3D CNN / Transformer) ↓ Classification Head ↓ Output Label十九、总结
视频分类任务是计算机视觉中从“图像理解”迈向“时空理解”的重要一步,它需要模型同时理解空间结构与时间变化,因此比图像分类复杂得多。
本文系统讲解了:
1、视频分类任务定义;
2、与图像分类区别;
3、数据结构;
4、预处理流程;
5、主流模型;
6、经典数据集(UCF101、HMDB51、Kinetics等);
7、评价指标;
8、应用场景;
9、核心挑战;
10、整体流程。
可以将视频分类理解为:
“一种基于时序帧数据进行全局语义判断的视觉任务,是连接图像理解与视频理解的基础核心问题。”
掌握视频分类,就是掌握时空视觉任务的起点。
