Optical Flow Guided Feature 笔记

论文:《Optical Flow Guided Feature: A Fast and Robust Motion Representation for Video Action Recognition》

这篇论文主要贡献点有两个:1、提出了一种鲁棒性强速度快的运动信息表示特征OFF。2、提出了将OFF运用于端到端训练的网络结构。

OFF

简单的说,OFF即是光流向量的正交向量。由基本的光流约束方程:
Optical Flow Guided Feature 笔记
可得向量F:
Optical Flow Guided Feature 笔记
此时,向量F即是对应输入为RGB帧的OFF。不难看出,OFF省去光流计算后面需要的很多复杂步骤。

上面的I表示的是RGB帧的灰度值。但在论文中,作者并不是直接用I来计算OFF的,而是用
Optical Flow Guided Feature 笔记
其表示原图I经过f映射函数得到得初始特征。

Network Architecture

Optical Flow Guided Feature 笔记
整体网络由3个子网络构成:1、Features Generation Sub-network 2、OFF Sub-network 3、Classification Sub-network。

Features Generation Sub-network:多层的卷积网络,由多个ReLu层和卷积层组成,输入为原始帧,输出即是之前提到的基本特征f(I,w)。

OFF Sub-network:由几个OFF单元组成,OFF单元如下图所示,其包含1*1的卷积层和用于生成OFF的运算符sobel和subtract。subtract就是特征值相减操作。

Optical Flow Guided Feature 笔记
sobel运算操作如下,Fx和Fy,Ft分别表示为x、y,t方向梯度的OFF。
Optical Flow Guided Feature 笔记
Optical Flow Guided Feature 笔记
最后将特征Fx、Fy和Ft与低层的特征连接起来作为OFF层的输出。作者在此时还提到了,用1*1卷积的作用是为了减少通道数,最后的输出通道都将被缩减到128。

在多尺度得特征图上得到OFF后,用几个ResNet单元构成得ResNet网络将其连接起来,最后构成一个ResNet-20(为了防止过拟合,作者没有在ResNet中采用BN操作),如下图所示。
Optical Flow Guided Feature 笔记
Classification Sub-network:获取不同来源得特征,用多个内积分分类器来获取多个分类分数。然后,通过对每个特征生成子网络或OFF子网络进行平均,合并所有采样帧的分类分数。(对文章原话没怎么理解,大概意思就是结合多个信息特征得到预测分数吧)

训练和测试

该网络获得视频预测分数的方式等同于TSN方法,由每个片段产生多个分类分数,它们分别融合到每个子网中,生成一个视频级的分数。然后用交叉熵损失函数计算损失值,训练网络。
作者提出的训练方法分为两个阶段:1、用TSN方法来训练Features Generation Sub-network。2、对Features Generation Sub-network中的所有权值进行了冻结,再对OFF Sub-network和Classification Sub-network的权值从零开始学习。
在训练和测试的过程中,帧与帧的间隔时间必须保持相同,否则将违背之前计算OFF的推导公式。作者想了一个方案用来保证训练时的∆t 等于测试时的∆t ,方法很简单。

下表是测试结果与其他网络作为比较,可以看出用OFF与光流相比,速度提高了很多,超过了每秒200帧,而且准确值能达到双流I3D的效果。
Optical Flow Guided Feature 笔记