行为识别框架Slowfast解读

在这里插入图片描述

SlowFast使用了一个慢速高分辨率CNN(Slow通道)来分析视频中的静态内容(环境),同时使用一个快速低分辨率CNN(Fast通道)来分析视频中的动态内容(动作)

为了更好的提取slow分支特征,slow通道的计算会更加复杂,Slow通道的计算成本要比Fast通道高4倍。

双分支提取

Slow通道和Fast通道都使用3D RestNet模型,捕捉若干帧之后立即运行3D卷积操作。

Slow通道使用一个较大的时序跨度(即每秒跳过的帧数),通常设置为16,这意味着大约1秒可以采集2帧。
Fast通道使用一个非常小的时序跨度τ/α,其中α通常设置为8,以便1秒可以采集15帧。Fast通道通过使用小得多的卷积宽度(使用的滤波器数量)来保持轻量化,通常设置为慢通道卷积宽度的⅛,这个值被标记为β。使用小一些的卷积宽度的原因是Fast通道需要的计算量要比Slow通道小4倍,虽然它的时序频率更高。
在这里插入图片描述

3D卷积核的尺寸记作{T×S², C} ,其中T、S和C分别表示时序Temporal(time), 空间Spatial(weight x height)和频道Channel(channel)的尺寸。跨度记作{temporal stride, spatial stride ^ 2}。速度比率(跳帧率) 为 α = 8 ,频道比率为1/β = 1/8。τ 设置为 16。绿色表示高一些的时序分辨率,Fast通道中的橙色表示较少的频道。
在这里插入图片描述
在这里插入图片描述

特征融合

在这里插入图片描述
如图中所示,来自Fast通道的数据通过侧向连接被送入Slow通道,这使得Slow通道可以了解Fast通道的处理结果。单一数据样本的shape在两个通道间是不同的(Fast通道是{αT, S², βC} 而Slow通道是 {T, S², αβC}),这要求SlowFast对Fast通道的结果进行数据变换,然后融入Slow通道。论文给出了三种进行数据变换的技术思路,其中第三个思路在实践中最有效。
效果:(3)>(1)>(2)

(1)Time-to-channel:将{αT, S², βC} 变形转置为 {T , S², αβC},就是说把α帧压入一帧
(2)Time-strided采样:简单地每隔α帧进行采样,{αT , S², βC} 就变换为 {T , S², βC}
(3)Time-strided卷积: 用一个5×12的核进行3d卷积, 2βC输出频道,跨度= α.

有趣的是,研究人员发现双向侧链接,即将Slow通道结果也送入Fast通道,对性能没有改善。

在每个通道的末端,SlowFast执行全局平均池化,一个用来降维的标准操作,然后组合两个通道的结果并送入一个全连接分类层,该层使用softmax来识别图像中发生的动作。

猜你喜欢

转载自blog.csdn.net/weixin_54338498/article/details/127845006