Motivation

实现快速和准确地抽取出视频中的语义片段

Proposed Method

-提出了TURN模型预测proposal并用temporal coordinate regression来校正proposal的边界

-通过复用unit feature来实现快速计算

主要步骤如下:

  • Video Unit Processing:
    将输入的视频平均分为多个video units,每一个unit包含16帧,源码给的feature是30fps的帧率。将每一个unit送入visual encoder(C3D)中,提取unit-level的特征。

  • Clip Pyramid Modeling:
    以每一个unit为anchor unit,构造一个clip pyramid。首先,每一个temporal window pyramid(深蓝色部分)由{1,2,4,…}个unit构成,然后在每个temporal window的前后加上一定数量的context unit(浅蓝色部分)构成clip。将每一个clip送入Feature Pooling,最终的feature由下面的公式表示:

    其中为internal units,为context units,P为Mean Pooling。

  • Unit-level Temporal Coordinate Regression:
    网络包含两个输出:第一个输出confidence score判断clip中是否包含action,第二个输出temporal coordinate regression offsets。回归偏移量由下式表达:

    s和e分别表示起始unit和终止unit的位置
  • Loss function:
    正样本定义为:(1)与GT的tIoU最大的样本(2)与GT的tIoU大于0.5的样本
    负样本定义为:与GT的tIoU为0的样本
    Multi-task Loss:

    第一项Lcls为分类Loss,用于对action/background做分类。
    λ为trade-off系数
    第二项为回归Loss,用于校正proposal的位置
  • New metric:
    本文提出了一种新的度量Aerage Recall vs. Frequency of retreived proposals (AR-F),F代表对从视频中提取proposal的频率(个/秒)
 ## outputs[0:2] 判断是否为动作,outputs[2:4] 回归偏移
reg_end=clip_end+outputs[3]*unit_size
reg_start=clip_start+outputs[2]*unit_size softmax_score=softmax(outputs[0:2])
action_score=softmax_score[1]

Experiment Setup on THUMOS-14

context unit的数量为4,中间层fm的维度为1000,λ为2.0,temporal window pyramids的unit数为{1,2,4,8,16,32}。实验还测试了不同的unit size, u∈{16,32}。针对不同的unit feature也做了对比实验:C3D, optical flow based CNN feature, RGB CNN feature。在evaluation中,NMS的阈值比tIoU小0.1。

本文设计了3个实验:
1、对比不同的evaluation metrics并比较了各metrics与mAP的相关性
结论:
(1)AR-N不能够很好地反映TAP的表现
(2)AR-AN不能再不同的数据集进行性能比较
(3)AR-F则不存在上述问题

2、对比了不同visual feature对TURN性能的影响
(1)C3Dfeature,模型用Sports1m数据集预训练,将连续的16帧(一个unit)送入C3D,并提取fc6特征
(2)RGB CNN特征,从一个unit中均匀采8帧,提取ResNet中的Flatten_673特征(用Activity v1.3预训练),然后计算这8个feature的平均值作为这个unit的特征。
(3)dense flow CNN,在unit中间取连续的6帧并计算对应的光流,将flow送入BN-Inception(用Activity v1.3预训练)中,取global_pool特征

2、对比TURN和其他TAP方法的性能
对比方法包括:DAPs,SCNN-prop,Sparse-prop,sliding window,random proposals

3、对比不同的TAP方法在localization task中的性能(相同的classifier/localizer),即将生成的proposal送到classifier中,并得到21个类别的的confidence scores(20类action和1类background)
实验用到了SVM classifier和SCNN-Localizaer

Experiment Setup on ActivityNet

context unit的数量为4,λ为2.0,temporal window pyramids的unit数为{2,4,8,16,32,64,128}。实验还测试了不同的unit size, nu∈{16,32}。在evaluation中,NMS的阈值比tIoU小0.1。实验中的temporal action localizer用的是SVM,通过sports和works子集数据的two-stream CNN features 进行训练。
1、评估了TURN的泛化能力
(1)在v1.2数据集中,用了ActivityNet,ActivityNet⋂THUMOS14,ActivityNet<1024frames三种训练数据,对比了DAPs和TURN的泛化能力
(2)在v1.3数据集中,有两种训练策略:

  1. 在一个subset训练,在另外三个subsets测试
  2. 在四个subsets上训练,然后在每个subset中逐个测试

2、评估了TURN在temporal action localization task上的表现
在实验中用了ActivityNet v1.1的Works和Sports子集。本文选择TURN-FL-16(用dense flow feature训练得到)来生成proposals。先用two-stream CNN feature训练一个SVM,接着将TURN-FL-16生成的proposals送到SVM中进行分类

转自:AIvin2AI

TURN TAP: Temporal Unit Regression Network for Temporal Action Proposals(ICCV2017)的更多相关文章

  1. 【LeetCode】743. Network Delay Time 解题报告(Python)

    [LeetCode]743. Network Delay Time 解题报告(Python) 标签(空格分隔): LeetCode 作者: 负雪明烛 id: fuxuemingzhu 个人博客: ht ...

  2. [Network Architecture]ResNext论文笔记(转)

    文章地址: https://blog.csdn.net/u014380165/article/details/71667916 论文:Aggregated Residual Transformatio ...

  3. neural network and deep learning笔记(1)

    neural network and deep learning 这本书看了陆陆续续看了好几遍了,但每次都会有不一样的收获. DL领域的paper日新月异.每天都会有非常多新的idea出来,我想.深入 ...

  4. 【TensorFlow-windows】(一)实现Softmax Regression进行手写数字识别(mnist)

    博文主要内容有: 1.softmax regression的TensorFlow实现代码(教科书级的代码注释) 2.该实现中的函数总结 平台: 1.windows 10 64位 2.Anaconda3 ...

  5. Web协议详解与抓包实战:HTTP1协议-如何用Chrome的Network面板分析HTTP报文(1)

    一.Chrome 抓包:Network 面板 1. Network 面板 • 控制器:控制面板的外观与功能 • 过滤器:过滤请求列表中显示的资源 • 按住 Command (Mac)或 Ctrl (W ...

  6. 论文阅读笔记十四:Decoupled Deep Neural Network for Semi-supervised Semantic Segmentation(CVPR2015)

    论文链接:https://arxiv.org/abs/1506.04924 摘要 该文提出了基于混合标签的半监督分割网络.与当前基于区域分类的单任务的分割方法不同,Decoupled 网络将分割与分类 ...

  7. 【C# TAP 异步编程】一 、async 修饰符(标记)

    async的作用: 1.async是一个标记,告诉编译器这是一个异步方法. 2.编译器会根据这个标志生成一个异步状态机. 3.编译器将原异步方法中的代码清空,写入状态机的配置,原先异步方法中的代码被封 ...

  8. Netruon 理解(11):使用 NAT 将 Linux network namespace 连接外网

    学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...

  9. Netruon 理解(12):使用 Linux bridge 将 Linux network namespace 连接外网

    学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...

随机推荐

  1. liunx之Centos6.8杀毒软件的安装

    作者:邓聪聪 为了防止服务器中病毒,安装了类似与Windowns的杀毒软件Clanav,过程如下 首先下载clamav的软件包,官方下载地址为http://www.clamav.net/downloa ...

  2. strstr()函数的使用

    strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串.如果是,则该函数返回str2在str1中首次出现的地址:否则,返回NULL. 实例: /** *Descriptio ...

  3. ffmpeg-201701[10,16,21,23,25]-bin.7z

    ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 5 屏幕横向放大 20 像素 6 屏幕横向缩小 20 像素 S 下一帧 [ -2秒 ] +2 ...

  4. es2015箭头函数的this

    摘自https://www.cnblogs.com/chenxygx/p/6509564.html,谢谢博主的分享!

  5. Docker快速搭建WordPress博客网站

    WordPress WordPress是一个非常著名的PHP编写的博客平台,发展到目前为止已经形成了一个庞大的网站平台系统.在WP上有规模庞大的插件和主题,可以帮助我们快速建立一个博客甚至网站. 在W ...

  6. Java插入排序算法

    直接插入排序算法 基本思想: 把n个待排序的元素看成一个有序表和一个无序表,开始时有序表中只有一个元素,无序表中有n-1个元素:排序过程即每次从无序表中取出第一个元素,将它插入到有序表中,使之成为新的 ...

  7. vscode 配置php

    vscode 的官网:https://code.visualstudio.com/docs/languages/php 添加扩张程序: php的设置: php格式化是安装“PHP Intelephen ...

  8. Confluence 6 数据库结构图

    结构图细节 下面的 SVG 图片(可缩放矢量图)包括了 Confluence 数据库中使用的所有表.单击下面的连接在你的浏览器中打开图片连接,你也可以随后将图片下载到本地.你可以使用浏览器的缩放快捷键 ...

  9. Microsoft Graph 概述

    这个系列文章 已经进行到了实质的阶段,继上一篇介绍了如何搭建Office 365开发环境之后,我会通过这篇文章给大家介绍一个非常重要的概念:Microsoft Graph.它之所以重要,首先是因为它是 ...

  10. 最长上升子序列(dp)

    链接:https://www.nowcoder.com/questionTerminal/d83721575bd4418eae76c916483493de来源:牛客网 广场上站着一支队伍,她们是来自全 ...