概述
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
来识别图像中发生的动作。
最后
以上就是傲娇学姐为你收集整理的行为识别框架Slowfast解读的全部内容,希望文章能够帮你解决行为识别框架Slowfast解读所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复