zoukankan      html  css  js  c++  java
  • 用于视频行为识别的双流卷积网络

    1. 论文原称:Simonyan K, Zisserman A. Two-stream convolutional networks for action recognition in videos[C]//Advancesin neural information processing systems. 2014: 568-576

    2. 主要贡献

      1.提出了一个双流卷积网络模型,其包括了空间网络和时间网络。

      2.在有限的数据集上,提出了一个在多帧密集光流帧上有很好效果的模型。(指的还是那个双流卷积网络)

      3.提出多任务学习,将模型在两个不同的行为分类数据集上训练,增加了训练数据和提高了训练效果。

    3. 双流模型结构

      
    

    如上图所示,模型分为两部分,spatial stream部分以单帧图片作为输入,temporal stream 部分以多帧图像的的光流作为输入,两部分在经过softmax后进行late fusion。论文提出了两种融合方法,一种是采用平均的方式,另一种是训练一个多分类的SVM分类器,SVM分类器采用L2-Softmax作为输入。

    3.1 光流卷积网络

      采用L+1帧图像进行光流计算(这些都是在模型开始之前就计算好了的),得到2L(每2帧图像可得到一个x方向和y方向的光流)帧,这2L帧的顺序是2k-1为x方向,2k为y方向。(论文对L的取值进行了对比实验,发现取10比较好)

      双向光流:在t时刻,取t+L /2作为前向流,t -L/2 作为反向流(这里的反向流在论文里说的是计算相反方向的位移,我不清楚它的意义在哪,有什么用),这样得到的还是2L帧。 

      减去平均流:一般来说两帧图片的光流不仅包括了图片内物体的移动,也包括了相机的移动。但模型只需要对物体的移动流进行训练,因此论文提出计算光流的平均值,然后逐点减去这个均值,就避免了相机移动给模型训练带来影响。 模型是固定的尺寸:224x224x2L。(注意这里的L指的是光流,不是原始图像)

    关于去除相机运动带来的影响,在iDT论文中专门提出了一种方法,而iDT也成为了后来众多卷积网络SOTA模型必与之进行效果对比的模型。关于iDT论文的解读请扫描文末的二维码关注公众号(CV技术指南)可看到。

    数据集:UCF-101和HMDB-51

      4.多任务训练 

        数据集太少会导致过拟合,为了避免这种情况,论文设置了两个softmax Layer,一个用在UCF-101上,另一个在HMDB-51,它们有各自的loss函数,两者求和作为训练的loss。

      5.评估

      5.1 空间网络有三种训练方式:

    • 在UCF-101上重新训练

    • 在ILSVRC-2012上预训练,在UCF-101上finetune。

    • 固定预训练网络,只训练最后一层。

    最后结果发现第三种方式效果更好。(这里为了防止过拟合,采用了Dropout)

      5.2 时间网络主要测试了不同的L值得到的效果,前文我忽略的轨迹跟踪方式(感觉没必要提,不是论文的重点)与光流跟踪方式的效果对比,以及有无减去平均流的效果对比。

      得到的结论:L取10比较好,减去平均流能提高效果,但不明显,轨迹流跟踪不及光流效果好
    

    5.3 进行了单向光流和双向光流的效果对比,采用平均融合与训练SVM来融合的效果对比,与传统识别方法的效果对比,以及有无多任务训练的效果对比

    结论:multi-tasks learning是有效果的

    结论:对于卷积网络的融合,采用SVM分类器融合要比取平均的效果更好,双向光流没什么效果。(事实证明,真的没啥用,论文原文说的:using bi-directional flow is not beneficial in the case of ConvNet fusion;)

    结论:它比传统方式识别效果好。

    如有错误或不合理之处,欢迎在评论中指正。

    本文来源于微信公众号“ CV技术指南 ” 。更多内容与最新技术动态尽在公众号发布。

    欢迎扫描下方二维码关注公众号“CV技术指南”,主要进行计算机视觉方向的论文解读,最新技术跟踪,以及CV技术的总结。

    原创文章第一时间在公众号中更新,博客只在有空时间才更新少量公众号文章

     

  • 相关阅读:
    BootStrap练习
    表单控件练习
    K近邻算法原理
    CSS 边框和颜色
    SVG平移和旋转
    SVG进阶练习
    SVG路标(marker)
    SVG 曲线与文字
    python函数与异常处理
    if-elif-else分支判断语句(附加continue和break)---举例说明
  • 原文地址:https://www.cnblogs.com/wxkang/p/13782296.html
Copyright © 2011-2022 走看看