【视频算法解析一】C3D卷积

开始学习视频理解方面,会在这儿记录看到的论文总结。

[视频算法解析一] C3D算法

[视频算法解析二] I3D算法

[视频算法解析三] ECO算法

介绍

高效的视频描述器有四点性质:1.通用性,这样可以用来描述各种类型的视频;

2.紧凑型?,当数据量较大时,可以很好的完成扩展性高的任务;

3.高效性,需要快速计算满足实时系统;

4.结构简单,方便实现。

以前的那些用2d卷积的方法不适用在视频上面,它们都忽略了视频的运动性(应该是指忽略了时空特性)。

本篇文章的三点贡献:1.实验表明,3D卷积对于视频建模方面表现很好;

2.根据经验,使用3*3*3的卷积核,表现得比其他结构好;

3.接入简单得线性模型就在4个task,6个benchmark上达到SOTA。

通过3D卷积学习特征

3D卷积和池化

3D卷积和3D池化更好,因为它们表现在时空上,不同于2D操作仅在空间上操作。2D卷积,要么输入一个图,要么输入多帧图像当作channel,但是这样并没有捕捉到时序方面得信息。只有Slow Fusion model在它前3个卷积的时候用了3D卷积,作者表示这是Slow Fusion比其他方法表现好的原因。

首先,在UCF101上进行架构搜索,最后发现和2D的卷积一样,3*3的卷积核是最好的。最后,确定空间3*3的感受野,只改变时间上的深度。

网络的通用设定

网络输入16帧,网络输入是3(channel)*16(frame)*128*171(w,h)。每一帧resize到128*171,也用了随机裁剪,裁剪的尺寸是112*112。网络有五个卷积层,每个卷积层后跟着池化层和2个全连接层,最后用softmax layer来分类。五个卷积层的过滤器数为64, 128,256, 256, 256,每个卷积核都有一个时空深度超参d。maxpooling的size为(2,2,2),第一层为(1,2,2)。

其中d为时空卷积的深度,可以和b图对比理解来看,就是这个操作在L这个维度上取得深度是多少,如下图。

确定网络结构

C3D对于这个超参D有着两种不同的类型的实验,1.每层网络d都是一样得,其中尝试1,3,5,7四种参数;2.每一层网络得d都是变化的。 尝试两种,一种递增3-3-5-5-7,另一种是递减7-5-5-3-3。由于只在卷积层深度有差距,输出的大小在全连接层都是一样得,导致这些网络参数差距变化不大。例如,深度差距为2的两个网络,只有17K参数差距,最深的和最浅的参数差距在51K,不到总参数的0.3%。这也反映出网络参数大小没有影响深度对比实验。

探索卷积核的时间深度

在恒定的深度值表现上,深度为1表现明显比其他的差,深度为3的表现最好。通过这一系列实验(尝试5*5的感受野和输入不resize保持240*320的分辨率。)表明3*3*3的卷积核效果最好。

空间特征学习

网络结构如下图所示,卷积都采用3*3*3卷积核,1*1*1的stride。maxpooling采用2*2*2以及同等大小的stride,除了第一个pool采用1*2*2。

数据处理方面:对于Sports-1M数据集,随机采样五个2秒的片段,分辨率为128*171,也就是10个clips,接着在经过随机裁剪和随机翻转,将数据增广到16个clips,分辨率裁剪到112*112。

分类结果来看,C3D没有Convolution pooling on 120-frame clips 的效果好,但是这个方法取得是long-clip不能直接和C3D比较。

C3D视频描述器:可以用C3D作为提取video feature的backbone,两个16clips片段之间需要有8clips重合,在fc6层经过激活层输出提取的feature。

C3D学习到什么?作者使用反卷积的技术可视化了conv5的卷积特征,发现C3D提取的特征关注着显著性区域的motion,这一点不同于2D卷积。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值