SlowFast Networks for Video Recognition

SlowFast Networks for Video Recognition [ICCV-2019]

一、背景介绍:

​ 首先作者提出的想法: 我们一般处理2D图像的时候,很自然地会对称的处理两个维度x,y,但如果是加了时间维度的视频呢?运动是方向的时空对应物,但所有时空方向的可能性都不相等 慢动作比快动作更有可能发生,这个有生物学依据:作者提到论文中的方法是受灵长类生物 细胞生物学研究的启发,存在两类细胞,P细胞和M细胞,M细胞在高时间频率下工作,对快速的时间变化做出反应,而P细胞在低时间频率下提供精细的空间细节和颜色。

举例: 例如,在挥舞动作的过程中,挥手不会改变他们的“手”身份,一个人总是属于“人”类别,即使他/她可以从走路过渡到跑步。因此,分类语义的识别(以及它们的颜色、纹理、光照等)可以相对缓慢地刷新。另一方面,被执行的动作可以比他们的主体身份进化得更快,比如拍手、挥手、摇晃、行走或跳跃。可以期望使用快速刷新帧(高时间分辨率)来有效地模拟潜在的快速变化的运动。

如果时间和空间方向上的可能性不同,那么我们就没有理由对称的处理空间和时间维度,基于这种直觉,作者提出了一种用于视频识别的双路径SlowFast模型(图1)。其中一种路径旨在捕捉图像或少量稀疏帧提供的语义信息,其运行速度较低,刷新速度较慢。相比之下,另一种路径负责捕捉快速变化的运动,刷新速度快,时间分辨率高。

这种方法和双流算法的区别在哪里?

1、 双流算法的两个流采用相同的主干结构

2、双流算法需要计算光流信息、论文中提出的网络模型是从原始数据中端到端学习

二、理论方法:

image-20220111150137514

整体网络框架包含了一个低帧率的Slow路径和一个高帧率的Fast路径

\(\tau\) : slow路径采样频率

\(T\) : slow路径采样的总帧数

\(\alpha\) :fast路径采样频率为\(\tau/\alpha\)

Slow路径:

​ 输入的是低帧率的采样数据,使用一个较大的时序跨度,由参数\(\tau\)设置

Fast路径:

采样速率为慢路径的\(\alpha = 8\)倍,每隔2帧采样一次

  • 追求高分辨率特征,所以不使用时间下采样(时间池化和时间跨度卷积),只在分类前的一个全局池化,所以特征张量在时间维度上总有\(\alpha t\)

  • 低信道容量,使它很轻,轻量级的设计由

  • 类似于slow路径的卷积网络,但是通道数是它的\(\beta = 1/8\)

Fast路径没有对空间维度进行特殊处理,因为通道较少,所以它的空间建模能力较弱,结果表明:Fast路径在弱化其空间建模能力的同时增强了其时间建模的能力

Lateral Connection:

连接点:

​ ResNet: pool1, res2, res3, and res4

连接的几种方式:

​ slow pathway: \(\{T,S^2,C\}\)

​ fast pathway: \(\{\alpha T,S^2,\beta C\}\)

  1. Time-to-channel

​ 对fast路径的特征张量进行转换,由\(\{\alpha T,S^2,\beta C\}\) 转换为\(\{T,S^2,\alpha\beta C\}\)

  1. Time-strided sampling

​ 从fast路径的特征张量中随机抽取一个样本\(\{T,S^2,\beta C\}\)

  1. Time-strided convolution

​ 直接进行3D卷积操作:\(5*1*1\) kernal size、\(2\beta C\) output channels、\(stride = \alpha\)

网络实例化参数:以resnet为例

image-20220111152716366

三、实验分析:

实验数据集:

Kinetics-400: 400 个人类动作类别中的 240k 训练视频和 20k 验证视频组成

Kinetics-600:600 个类中有 392k 训练视频和 30k 验证视频

Charades:157 个类中有 9.8k 训练视频和 1.8k 验证视频

AVA :数据取自 437 部电影。 时空标签每秒提供一帧,每个人都用边界框和(可能是多个)动作进行注释

首先看作者在几个数据集上测试的网络性能结果:

Kinetics-400:

​ 效果没什么好说的,都达到sota水平,作者在此基础上还分别测试了不同超参下的网络表现,其中NL代表的是使用nonlocal网络

image-20220322161913268

Kinetics-600:

​ Kinetics-600数据集也是一样,可以看到超参数\(\tau = 16\) \(\beta = 8\)效果是最好的

image-20220322161953660

Charades :

image-20220322162022581

AVA:

image-20220322162133270

消融实验:

1、 作者对比了只是用slow网络和使用slowfast网络的效果,可以看到加了fast网络之后,整体计算量提升的并不大,但是准确率提升很明显

image-20220322162731495

2、关于超参数\(\beta\)的实验

image-20220322162910120

3、采用不同的输入 测试效果

可以看到采用灰度图的准确率和RGB相差不大,减少了运算量

image-20220322162946910
  • 版权声明: 本博客所有文章除特别声明外,著作权归作者所有。转载请注明出处!

请我喝杯咖啡吧~

支付宝
微信