CTAP: Complementary Temporal Action Proposal Generation (ECCV2018)
互补时域动作提名生成
这里的互补是指actionness score grouping 和 sliding window ranking这两种方法提proposal的结合,这两种方法各有利弊,形成互补。
滑窗均匀覆盖所有的视频片段,但时域边界不准确,聚合方法可能更准确但当actionness score比较低的时候,也会漏掉一些proposal。
整体思路:
用actionness score proposal训好PATE网络作用在滑窗proposal上,以此来收集被actionness score grouping遗漏的proposal。
这些proposal经过时域卷积用于proposal ranking和边界回归。本论文在TURN的基础上做的改进。
三种主流方法:
第一种方法的缺点是边界不准,当收集大量proposal时才会产生较高的recall。
第二种方法在更细的粒度上(unit / snippet)训练二分类器,产生actionness score。TAG算法是merge的处理算法,源自watershed算法,用于将连续的高分区域聚合成proposal,避开的硬阈值聚合的缺点,是ssn那篇文章提出的方法。边界更加准确。当这种方法有两个常见的缺点:
1. 在背景片段产生高分响应,导致fp。
2. 在动作片段产生低分响应,导致低recall。
解决方案:
缺点1的方案. actionness proposal是细粒度的,边界更加准确。window-level ranking 加入了全局上下文信息而更有区分性。
window-level分类器用于TAG后处理,以及proposal的排序和边界回归。
缺点2的方案. 滑窗均匀覆盖了视频的所有片段。
适应性的选择滑窗产生的proposal来弥补actionness遗漏的proposal
CTAP:
产生actionness proposals和滑窗proposals,用proposal互补分类器从滑窗proposal中选择漏掉的正确proposal,这个两类分类器用于区分proposal是否被actionness和TAG正确检测到。最后一步是proposal ranking和时域边界微调。相比作者的另一篇TURN中的简单时域平均池化,这里使用了时域卷积。可以有效的保存顺序信息
这里的时序卷积就是时域上的一维卷积
Initail Proposal Generation
Video pre-processing:视频被切分为许多视频单元,每个单元包含连续的n帧,应用双流提取对应单元的特征。
Actionness score:训练一个二分类器对每一个单元产生actionness score
设计了两层时序卷积网络,输入是ta个连续的特征单元,输出动作还是背景的概率。
交叉熵loss,N是batchsize:
表示二值序列,对每一个输入xi表示在xi内的每一个单元有动作1,没动作0。
Actionness proposal generation strategy:ssn的枚举双阈值TAG算法,group proposals
Sliding window sampling strategy
Proposal Complementary Filtering
输入是平均池化后的ground truth feature,与actionness proposal相比tIoU大于阈值yi=1,小于则yi=0。
Loss:N batchsize
Complementary filtering
PATE网络:分类出这个proposal多大概率可以被actionness score检测出来,对于一个滑窗产生的proposal,如果低于阈值,那么TAG将无法检测出来,这个proposal将和actionness proposal合并在一起。
Proposal Ranking and Boundary Adjustment
TAR Architecture :在proposal内均匀采样nctl个单元。,分别以开始单元和结束单元采样nctx个单元作为边界单元,,proposal ranking网络输出动作概率,边界微调网络输出回归偏移,每个网络有两层时域卷积
滑窗的proposal score计算:
actionness score:
TAR Training : 收集训练样本,使用密集滑窗并和groundtruth比较
(1) 和其他windows相比在某个gt上有最大的tIoU
(2) 与任意一个gt比,它的tIoU大于0.5
标准softmax 交叉熵loss训练proposal ranking 网络,L1 loss 训练边界回归网络
osi是预测的起始位置偏移,oei是预测结束位置偏移,星号的是gt相对proposal的偏移,当l为1时考虑回归loss
交叉熵loss:和pate的交叉熵loss相似,学出proposal为动作的概率
Thumos14 result
Experiment
Unit-level feature extraction:
(1)RGB CNN特征,从一个unit中均匀采8帧,提取ResNet中的Flatten_673特征(用Activity v1.3预训练),然后计算这8个feature的平均值作为这个unit的特征。
(2)dense flow CNN,在unit中心取连续的6帧并计算对应的光流,将flow送入BN-Inception(用Activity v1.3预训练)中,取global_pool特征
双流feature的每一种特征都是2048维,concat在一起。
unit features Flow-16 只使用flow feature unit size 为 16;Twostream-6 使用 two-stream features unit size 为 6
Sliding window sampling strategy:
和TURN一致,采用的proposal长度为{16, 32, 64, 128, 256, 512} ,Activitynet1.3: {64, 128, 256, 512, 768, 1024, 1536, 2048, 2560, 3072, 3584, 4096, 6144} tIOU of 0.75
Actionness score generation 这里介绍一些超参,连续特征单元数ta=4。
TAR setting:在每个proposal内部均匀采样8个单元feature,4个单元作为context
对比实验了PATE模块
CTAP: Complementary Temporal Action Proposal Generation (ECCV2018)的更多相关文章
- CTAP: Complementary Temporal Action Proposal Generation论文笔记
主要观点:基于sliding window(SW)类的方法,如TURN,可以达到很高的AR,但定位不准:基于Group的方法,如TAG,AR有明显的上界,但定位准.所以结合两者的特长,加入Comple ...
- 论文笔记之 SST: Single-Stream Temporal Action Proposals
SST: Single-Stream Temporal Action Proposals 2017-06-11 14:28:00 本文提出一种 时间维度上的 proposal 方法,进行行为的识别.本 ...
- SST:Single-Stream Temporal Action Proposals论文笔记
SST:Single-Stream Temporal Action Proposals 这是本仙女认认真真读完且把算法全部读懂(其实也不是非常懂)的第一篇论文 CVPR2017 一作 论文写作的动机m ...
- Temporal Action Detection with Structured Segment Networks (ssn)【转】
Action Recognition: 行为识别,视频分类,数据集为剪辑过的动作视频 Temporal Action Detection: 从未剪辑的视频,定位动作发生的区间,起始帧和终止帧并预测类别 ...
- TURN TAP: Temporal Unit Regression Network for Temporal Action Proposals(ICCV2017)
Motivation 实现快速和准确地抽取出视频中的语义片段 Proposed Method -提出了TURN模型预测proposal并用temporal coordinate regression来 ...
- Background Suppression Network for Weakly-supervised Temporal Action Localization [Paper Reading]
研究内容:弱监督时域动作定位 结果:Thumos14 mAP0.5 = 27.0 ActivityNet1.3 mAP0.5 = 34.5 从结果可以看出弱监督这种瞎猜的方式可以PK掉早些时候的一些全 ...
- 论文阅读(Zhuoyao Zhong——【aixiv2016】DeepText A Unified Framework for Text Proposal Generation and Text Detection in Natural Images)
Zhuoyao Zhong--[aixiv2016]DeepText A Unified Framework for Text Proposal Generation and Text Detecti ...
- LPAT: Learning to Predict Adaptive Threshold for Weakly-supervised Temporal Action Localization [Paper Reading]
Motivation: 阈值分割的阈值并没有通过模型训练学出来,而是凭借主观经验设置,本文通过与背景得分比较提取对应的proposal,不用阈值的另一篇文章是Shou Zheng的AutoLoc,通过 ...
- ICCV 2019|70 篇论文抢先读,含目标检测/自动驾驶/GCN/等(提供PDF下载)
虽然ICCV2019已经公布了接收ID名单,但是具体的论文都还没放出来,为了让大家更快得看论文,我们汇总了目前已经公布的大部分ICCV2019 论文,并组织了ICCV2019论文汇总开源项目(http ...
随机推荐
- AIX系统下sed的用法与实例——查询/打印/替换字符串并生成文件/删除
sed是AIX中非常重要的文本流编辑器,它对输入的文本进行查询/打印/替换/删除等操作,并将结果写到标准输出.sed 命令包含很多功能,用于选择要修改的行,并只对选择的行作更改. 首先,使用sed命令 ...
- windows的tasklist使用
获取进程信息 tasklist # tasklist |findstr java.exe 杀死进程 方式1,通过进行pid杀死: taskkill /pid 4612 /f 方式2,通过名称杀死: t ...
- 快速安装freeswitch
前不久在Centos 6.4上安装了一台Freeswitch,测试已经OK.为了测试FS 的集群效果,从新在安装一台FS,快速安装的过程如下: 方案一:快速安装前提:不用重新下载Freeswitch. ...
- Springboot:开发时工程启动慢
个人的解决办法是删除workspace中的histor 然后重启Eclipse,发现一切正常.
- cocos2dx-lua 延迟调用函数和定时器
下面是cocos官方的方法. function performWithDelay(node, callback, delay) local delay = cc.DelayTime:create(de ...
- Cocos2d-x中文显示乱码
Cocos2d-x 引擎编码格式默认为utf8,而VS开发环境默认为gbk2312,所以把代码文件保存为utf8格式就能解决. VS->文件->高级保存选项->Unicode(UTF ...
- Python 队列
import multiprocessing import time if __name__ == '__main__': # 创建消息队列 # 3: 表示消息队列最大个数 queue = multi ...
- iOS项目国际化详解
现在的开发中难免会遇到项目国际化处理,下面把我理解到的国际化相关的知识点进行总结归纳 1 首先是对项目名称,系统性的文字进行名字化,比如程序名字 1,先给项目添加语言 2 添加InfoPlist.st ...
- js new一个函数和直接调用函数的区别
用new和调用一个函数的区别:如果函数返回值是一个值类型(Number.String.Boolen)时,new函数将会返回这个函数的实例对象,而如果这个函数的返回值是一个引用类型(Object.Arr ...
- Meta标签详解
[转载]Meta标签详解 Posted on 2005-05-17 20:00 二十四画生 阅读(54195) 评论(102) 编辑 收藏 Meta标签详解,在网上转的,希望对大家有用 引言 您的个 ...