ActivityNet Challenge 2017 冠军方案分享

任务介绍

此前我写过 Temporal Action Detection(时序行为检测)介绍一文介绍过 temporal action localization 方向(也可以叫做temporal action detection)。简单来说,temporal action localization是要在视频序列中确定动作发生的时间区间(包括开始时间与结束时间)以及动作的类别。这个问题与二维图像中的目标检测问题有很多相似之处。相关算法的算法内容一般可以分为两个部分:(1) temporal action proposal: 即进行时序动作提名,产生候选的视频时序片段,即相当于Faster-RCNN中的RPN网络的作用;(2) action classification: 即判断候选视频时序片段的动作类别。两个部分结合在一起,即实现了视频中的时序动作检测。

在今年的ActivityNet Challenge中,proposal 被单独作为了一项竞赛内容,因此我今年参与了proposal和localization两项任务。


ActivityNet Challenge 介绍


数据集

ActivityNet 听名字与ImageNet十分相似,是目前视频动作分析方向最大的数据集。 目前的ActivityNet dataset版本为1.3,包括20000个Youtube 视频(训练集包含约10000个视频,验证集和测试集各包含约5000个视频),共计约700小时的视频,平均每个视频上有1.5个动作标注(action instance)。

在ActivityNet Challenge 2016中,有 untrimmed video classification 以及 temporal action localization 两项任务,今年则扩充到了五项任务,其中Kinetics 和ActivityNet Captioning为今年新增的两个数据集。

  • untrimmed video classification (ActivityNet dataset ),
  • trimmed video classification (Kinetics dataset),
  • temporal action proposal (ActivityNet dataset),
  • temporal action localization (ActivityNet dataset),
  • dense video captioning (ActivityNet Captioning dataset).

下面对ActivityNet Challenge 17中的localization 以及 proposal两项任务的测评方式进行介绍。


测评方式-Temporal Action Localization

在 时序动作检测问题中,mean Average Precision (mAP) 是最常用的评估指标。此次竞赛计算0.5到0.95, 以0.05为步长的多个IoU阈值下的mAP,称为 Average mAP,作为最终的测评以及排名指标。相较于使用mAP@0.5 作为测评指标,Average mAP 更看重在较严格IoU阈值下的检测精度。


测评方式- Temporal Action Proposal

Proposal任务由于无需对时序片段进行分类,所以通常使用average recall (AR) 来进行评估。在此次竞赛中,Average Recall vs. Average Number of Proposals per Video (AR-AN) 曲线下的面积被作为最终的评测指标。举个例子,AN=50 时的AR分数 可以理解为对于每个视频,使用proposal set中分数最高的前50个proposal时,所能达到的召回率。下图为官方提供的baseline方法的AR-AN曲线。

donkey_adc81f03-13fb-4d6a-a474-b75ce6bd7

在图中,虚线为不同阈值下的AR-AN曲线,实线为平均的AR-AN曲线,area=44.88即为实线下的面积,也是此任务的最终测评指标。


任务分析

如上所述,temporal action localization任务主要可以分为(1) temporal action proposal和 (2) action classification 两个部分。后者也就是action recognition方向,最近一两年时间,该方向的准确率已经被做到非常高了,我认为已经接近image classification的水平了。在ActivityNet 的untrimmed video classification 任务中,去年最高的Top-1 Accu 大概在88%,今年的第一名则提高到了95%左右。 然而,时序动作检测方向的检测效果较之 目标检测方向 依旧很低,各个数据集中,0.5 IoU阈值下的mAP都还没有超过 50%。基于上述的情况,我们认为问题的关键在于提高temporal action proposal 环节的效果,因此,此次竞赛我们主要专注于temporal action proposal 任务。


方案介绍

此次竞赛我们主要对我们此前投稿在ACM Multimedia的 SSAD [1] 模型 ( Single Shot Temporal Action Detection 论文介绍 )进行了改进。具体的方法介绍可以见竞赛算法报告(链接见开头)。算法的整体框架如下图所示。下面分别对各个部分进行简要的介绍。

donkey_0450bd4e-0d36-4e48-bf17-49427a55c


特征提取

在特征提取阶段,我们主要将视频切分成16帧不重叠的单元,然后采用 two-stream network 提取特征。对于spatial network, 我们使用每个单元的中心帧提取特征;对于temporal network,我们则使用每个单元的中心6帧图像计算得到的光流图像提取特征。之后将两部分特征拼合即得到了最终的特征。此处之所以如此稀疏地提取特征,主要是因为ActivityNet数据集太大了,即便如此稀疏依旧花 了我十几天来提取特征(单块1080).


proposal 生成与修正

在该阶段,我们对SSAD模型进行了改进,改进的细节可见算法报告,改进后的模型称为Prop-SSAD。使用Prop-SSAD模型,对每个视频我们可以生成一个proposal 集合 donkey_d3506816-8603-4858-a870-643b21ecd, 该方法得到的集合在高IoU阈值下的AR较低,即边界不够准确。因此,我们还实现了CUHK 今年在[2]中提出的 TAG (Temporal Action Grouping) 方法来生成另外一组proposal 集合donkey_fda2b09b-75e7-464c-bc4e-cf07a1d04, 该方法得到的proposal的边界相对准确,但由于TAG方法缺乏对于每个proposal的评价,因此该方法在AN 较小时的AR比较差,导致最终的AR-AN 面积指标不高。因此,我们以donkey_7eb022b3-de24-4167-afbd-778b52e2c为主体,使用 donkey_5e84f9cc-bbb2-4bd4-9989-b6ef5c5be来进行边界的修正。

边界修正的规则也比较简单,对于donkey_5b17ce8a-80bf-4f07-8152-3decfb6c5中的每个proposal p,我们计算它与 donkey_56a10475-8b9d-42d8-ab96-c26250282中所有proposal的IoU,若最大的IoU高于0.75, 则用 p的边界去替代 donkey_949f3483-8cad-489f-9835-d7aa7dca6中与最大IoU分数对应的donkey_4e3b36b2-6eec-4cca-87e5-26533665c的边界,从而实现边界修正。具体实施中加入了规则防止donkey_d64d1758-5121-4b6f-b61a-b265d8d3b中的proposal被多次修正。

因此,经过proposal 生成 和边界修正两个步骤,我们就可以获得一个video上的 时序动作提名集合。该结果即为此次竞赛Temporal Action Proposal 任务的提交结果


temporal action localization

在获得了proposal后,我们还需要对其进行分类从而得到最终的localization结果。由于ActivityNet上大部分视频中只有一类动作,因此我们直接使用了video-level的分类结果作为对应视频所有proposal的类别。


实验结果

temporal action proposal

对于该任务,由于在测试集上只能看到最终的AR-AN面积指标,所以实验部分我们给出的是验证集上的结果。下表中是proposal 任务的基线方法,Prop-SSAD方法和 修正的Prop-SSAD方法的性能,可以看出边界的修正对于Proposal的召回率有进一步的提高效果。

donkey_3cfae1c3-5657-431e-a0fa-f4ebe21ce

对于修正的Prop-SSAD方法,使用官方提供的测试代码,我们还可以得到AR-AN曲线,如下图所示。

donkey_1a15d621-c42e-4d62-bd9f-4ca82df0a

temporal action localization

如下表所示是我们的temporal action localization方法在 验证集上的效果。其中Ours@n 代表每个视频使用proposal 集合中的前n个proposal。从表中可以看出,proposal 集合中分数最靠前的一小部分proposal 贡献了大部分的localization mAP。

donkey_7cf8d197-a56e-4175-970f-c095bd742

如下表所示是我们的方法在测试集上的效果,对照方法为此前该数据集上论文的效果,不包括此次竞赛的方法。可以看出,我们的方法比起此前的state-of-the-art方法提高了大约5%的mAP。

donkey_232622c5-9f92-4def-a93f-7f5fe91de


总结

基于上述的讨论与实验结果,我们主要有以下几点收获:

  • proposal的质量对后续localization的效果有很大的影响, 目前改进temporal action localization的重点在于提高proposal的质量
  • proposal 中最靠前的一小部分proposal 贡献大部分的localization mAP
  • 时序卷积以及 anchor 机制在时序动作提名与检测任务中能起到很好的效果

在后续的工作中我们会对此次的方案进行进一步的改进与优化,希望大家能关注我们的工作~


原文发布时间为:2017-09-13

本文作者:林天威

本文来自云栖社区合作伙伴极市网,了解相关信息可以关注极市网。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值