视频分类/行为识别是计算机视觉领域中非常有挑战性的课题,因为其不仅仅要分析目标体的空间信息,还要分析时间维度上的信息,如何更好的提取出空间-时间特征是问题的关键。本文总结了该领域的技术进展和相关数据集,技术进展从传统特征法到深度学习中的3DCNN,LSTM,Two-Stream等。
1 视频分类/行为识别问题
首先我们要明确这是一个什么问题,基于视频的行为识别包括两个主要问题,即行为定位和行为识别。行为定位即找到有行为的视频片段,与 2D 图像的目标定位任务相似。而行为识别即对该视频片段的行为进行分类识别,与 2D 图像的分类任务相似。
本文聚焦的是行为识别,即对整个视频输入序列进行视频分类,一般都是经过裁剪后的视频切片。接下来从数据集的发展,传统方法,深度学习方法几个方向进行总结。
2 视频分类/行为分析重要数据集
深度学习任务的提升往往伴随着数据集的发展,视频分类/行为识别相关的数据集非常多,这里先给大家介绍在论文评测中最常见的 3 个数据集。
2.1 HMDB-51
HMDB-51 共 51 个类别,6766 个短视频。
数据集地址:http://serre-lab.clps.brown.edu/resource/hmdb-a-large-human-motion-database/#dataset,发布于 2011 年。
数据来源非常广泛,包括电影,一些现有的公开数据集,YouTube 视频等。从中选择了 51 个类别,每一个类别包含 101 个以上视频。
分为 5 大类:
常见的面部动作(smile,laugh,chew,talk)
复杂的面部动作(smoke,eat,drink)
常见的肢体动作(climb,dive,jump)
复杂的肢体动作(brush hair,catch,draw sword)
多人交互肢体动作(hug,kiss,shake hands)
下面是其中一些维度的统计,包括姿态,相机运动等。
51 个类别的展示如下:
2.2 UCF-101
UCF-101 共 101 个类别,13320 个短视频。数据集地址:https://www.crcv.ucf.edu/research/data-sets/human-actions/ucf101/,发布于 2012 年。
UCF-101 是目前动作类别数、样本数最多的数据集之一,包含 5 大类动作:人与物体互动、人体动作、人与人互动、乐器演奏、体育运动。总共包括在自然环境下 101 种人类动作,每一类由 25 个人做动作,每个人做 4-7 组,视频大小为 320×240。正因为类别众多加上在动作的采集上具有非常大的多样性,如相机运行、外观变化、姿态变化、物体比例变化、背景变化等等,所以也成为了当前难度最高的动作类数据集挑战之一。
各个类别的分布如上,相对还是比较均匀的,UCF-101 是视频分类/行为识别方法必须评测的标准。
2.3 Kinetics-700 dataset
Kinetics-700 dataset 被用于 ActivityNet 比赛,包含约 650000 个视频,700 个类别。
数据集地址:https://deepmind.com/research/open-source/open-source-datasets/kinetics/,发布于 2019 年。
ActivityNet 比赛始于 2016 的 CVPR,是与 ImageNet 齐名的在视频理解方面最重要的比赛。在这个比赛下的 Task A–Trimmed Action Recognition 比赛是一个视频分类比赛,2019 年的比赛使用 kinetics-700 数据集,在此之前还有 2017 年的 kinetics-400 和 2018 年的 kinetics-600。
数据集是 Google 的 deepmind 团队提供,每个类别至少 600 个视频以上,每段视频持续 10 秒左右,标注一个唯一的类别。行为主要分为三大类:人与物互动,比如演奏乐器;人人互动,比如握手、拥抱;运动等。即 person、person-person、person-object。
除了以上数据集,比较重要的还有 Sports-1M,YouTube-8M 等,篇幅所限,就不一一描述,大家可以参考文献[1]。
如果不能下载数据集,可以移步有三 AI 知识星球获取。
3 传统有监督特征提取方法
传统的方法通过提取关键点的特征来对视频进行描述,以时空关键点,密集轨迹方法等为代表。
3.1 时空关键点(space-time interest points)
基于时空关键点的核心思想是:视频图像中的关键点通常是在时空维度上发生强烈变化的数据,这些数据反应了目标运动的重要信息[2]。
比如一个人挥舞手掌,手掌一定会在前后帧中发生最大移动,其周围图像数据发生变化最大。而这个人的身体其他部位却变化很小,数据几乎保持不变。如果能将这个变化数据提取出来,并且进一步分析其位置信息,那么可以用于区分其他动作。
时空关键点的提取方法是对空间关键点方法的扩展,空间关键点的提取则是基于多尺度的图像表达,这里的时空关键点就是将 2D Harris 角点的检测方法拓展到了 3D,具体求解方法非常复杂读者需要自行了解,篇幅问题就不讲述了。
得到了这些点之后,基于点的一次到四次偏导数,组合成一个 34 维的特征向量,使用 k-means 对这些特征向量进行了聚类。
除了 harris,经典的 2D 描述子 SIFT 被拓展到 3D 空间[3],示意图如下:
上图从左至右分别展示了 2D SIFT 特征,多个时间片的 2D SIFT 特征,以及 3D SIFT 特征,后两者的区别在于计算区域的不同,3D SIFT 的每一个关键点包含 3 个值,幅度和两个角度:
统计关键点时空周围的梯度直方图就可以形成特征描述子,然后对所有的特征描述子进行 k-means 聚类,划分类别,形成词汇“word”。所有不同 word 就构成了一个 vocabulary,每个视频就可以通过出现在这个 vocabulary 中词汇的数量来进行描述,最后训练一个 SVM 或者感知器来进行动作识别。
除了以上的两种特征,还有 HOG3D 等,感兴趣的读者可以自行阅读。
3.2 密集轨迹(dense-trajectories)[4]
时空关键点是编码时空坐标中的视频信息,而轨迹法 iDT(improved Dense Trajectories)是另一种非常经典的方法,它追踪给定坐标图像沿时间的变化。
iDT 算法包含三个步骤:密集采样特征点,特征轨迹跟踪和基于轨迹的特征提取。
密集采样是对不同尺度下的图像进行规则采样,不过真正被用于跟踪等不是所有点,因为平滑区域的点没有跟踪意义,通过计算每个像素点自相关矩阵的特征值,并设置阈值去除低于阈值的特征点来实现这个选择。
对轨迹的追踪是通过光流,首先计算图像光流速率(ut, vt),然后通过这个速率来描述图像运动轨迹:
wt 是密集光流场,M 是中值滤波器,得到的一系列点形成了一个轨迹。由于轨迹会随着时间漂移,可能会从初始位置移动到很远的地方。所以论文对轨迹追踪距离做了限制,首先将帧数限制在 L 内,而且轨迹空间范围限制在 WxW 范围,如果被追踪点不在这个范围,就重新采样进行追踪,这样可以保证轨迹的密度不会稀疏。
除了轨迹形状特征,还提取了 HOG,HOF(histogram of flow)以及 MBH(motion boundary histogram)等特征。其中 HOG 特征计算的是灰度图像梯度的直方图,HOF 计算的是光流的直方图,MBH 计算的是光流梯度的直方图,也可以理解为在光流图像上计算的 HOG 特征,它反应了不同像素之间的相对运动。
以 HOG 特征为例,在一个长度为 L 的轨迹的各帧图像上取特征点周围大小为 N×N 的区域,将其在空间和时间上进行划分。假如空间划分为 22,时间划分为 3 份,bins 为 8,则 HOG 特征维度为 2238=96,HOF 特征和 MBH 特征计算类似。
提取出 HOG 等信息后,接下来具体的分类与上面基于时空关键点的方法类似,不再赘述。
4 深度学习方法
当前基于 CNN 的方法不需要手动提取特征,性能已经完全超越传统方法,以 3D 卷积,RNN/LSTM 时序模型,双流法等模型为代表。
4.1 3D 卷积[5]
视频相对于图像多出了一个维度,而 3D 卷积正好可以用于处理这个维度,因此也非常适合视频分类任务,缺点是计算量比较大,下图展示了一个简单的 3D 模型。
4.2 RNN/LSTM[6]
视频和语音信号都是时序信号,而 RNN 和 LSTM 正是处理时序信号的模型。如下图所示,通过 CNN 对每一个视频帧提取特征,使用 LSTM 建模时序关系。
4.3 双流法(two-stream)[7]
双流法包含两个通道,一个是 RGB 图像通道,用于建模空间信息。一个是光流通道,用于建模时序信息。两者联合训练,并进行信息融合。
双流模型是视频分类中非常重要的一类模型,在特征的融合方式,光流的提取等方向都有非常多的研究,关于更多模型的解读如果感兴趣可以移步有三 AI 知识星球中的模型结构 1000 变板块。
4.4 其他
关于各种视频分类的网络结构解读,有兴趣的同学可以到有三 AI 知识星球中进行阅读和后续学习。
5 总结
虽然在 UCF-101 数据集上评测指标已经达到了 98.5%,但是视频的分类目前远没有图像分类成熟,面临着巨大的类内方差,相机运动和背景干扰,数据不足等难题。
除了要解决以上难题外,有以下几个重要方向是值得研究的。
多模态信息融合。即不只是采用图像信息,还可以融合语音等信息。
多标签视频分类。与多标签图像分类类似,现实生活中的视频可能有多个标签。
行为定位。一段视频中的行为有开始和结束,如何定位到真正有效的片段是之后的视频分类的重要前提。
参考文献
[1] Kong Y, Fu Y. Human action recognition and prediction: A survey[J]. arXiv preprint arXiv:1806.11230, 2018.
[2] Laptev I. On space-time interest points[J]. International journal of computer vision, 2005, 64(2-3): 107-123.
[3] Scovanner P, Ali S, Shah M. A 3-dimensional sift descriptor and its application to action recognition[C]//Proceedings of the 15th ACM international conference on Multimedia. ACM, 2007: 357-360.
[4] Wang H, Kläser A, Schmid C, et al. Dense trajectories and motion boundary descriptors for action recognition[J]. International journal of computer vision, 2013, 103(1): 60-79.
[5] Ji S, Xu W, Yang M, et al. 3D convolutional neural networks for human action recognition[J]. IEEE transactions on pattern analysis and machine intelligence, 2012, 35(1): 221-231.
[6] Donahue J, Anne Hendricks L, Guadarrama S, et al. Long-term recurrent convolutional networks for visual recognition and description[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2015: 2625-2634.
[7] Simonyan K, Zisserman A. Two-stream convolutional networks for action recognition in videos[C]//Advances in neural information processing systems. 2014: 568-576.
作者介绍
言有三,真名龙鹏,曾先后就职于奇虎 360AI 研究院、陌陌深度学习实验室,6 年多计算机视觉从业经验,拥有丰富的传统图像算法和深度学习图像项目经验,拥有技术公众号《有三 AI》,著有书籍《深度学习之图像识别:核心技术与案例实战》。
原文链接
https://mp.weixin.qq.com/s/CS4iAMprZizrXhpXDhySzg
评论