Single Shot Temporal Action Detection 论文介绍

这篇笔记主要介绍我今年上半年投稿到ACM Multimedia会议的工作。这篇论文的实验大概从寒假放假回来后开始,在ICCV截稿前一个礼拜开始准备论文,但时间太赶没能完成实验和论文写作,所以花了一个多月完善后投稿了ACM multimedia。ACM multimedia 今年取消了long/short paper的区分,而是改为oral/poster paper,这两者均为9页长度(8页正文,1页引用),基本上和CVPR等会议是一样的形式。我投稿的文章依旧做的是temporal action localization 方向(也可以叫作 temporal action detection),最后录用为poster paper,论文可以在我的个人主页上下载: Tianwei Lin’s Homepage

首先关于 temporal action detection 这个研究领域的介绍,可以见我之前写的专栏文章:Video Analysis 相关领域解读之Temporal Action Detection(时序行为检测)。 简单来说,temporal action detection是要在视频序列中确定动作发生的时间区间(包括开始时间与结束时间)以及动作的类别。与其关系紧密的一个领域是基于图像的object detection,object detection是检测物体在图像中的位置,包括长和宽两个维度,而temporal action detection则只需要确定时间维度上动作的位置。

由于temporal action detection与 object detection 问题有很大的相似性,所以很多工作都是将object detection中的一些方法思路迁移到temporal action detection中。很多方法使用划窗方法或者是通过特定的proposal model来获得temporal action proposals,再进行分类从而实现detection。可以看出,这些方法都采用了 R-CNN/Fast-RCNN/Faster-RCNN 类型的结构,即通过对proposal分类来实现detection。而在object detection 问题中,另一类被广泛使用的模型并不采用这种结构,而是同时进行proposal 以及 classification, 比如SSD 以及YOLO。这篇文章即结合了SSD与YOLO模型的特点,针对temporal action detection问题,设计并实现了 Single Shot Action Detector (SSAD) 模型。下面对论文进行简要的介绍,详细的细节欢迎阅读论文原文。

方法概览

image

该图为论文首页图,展示了本文提出方法的大致流程,即先使用预训练好的模型对视频序列提取特征得到特征序列,再使用特征序列作为SSAD模型的输入,最终SSAD模型输出detection的结果。

image

该图则更为细致得展示了本文方法的几个主要流程。即(1)特征提取;(2)SSAD模型; (3)后处理(训练或测试)

特征提取

本文的特征提取使用了two stream network中的spatial network以及temporal network(网络结构均为VGG16),以及基于3D CNN的C3D网络来提取特征。每个用作特征提取的视频帧单元称为一个snippet,包含图像帧以及光流等,具体的定义在论文中给出。我们拼接3个网络的最后一层输出(该层输出即代表输入snippet对应的每个动作的概率)作为后续使用的特征,该特征记作SAS(Snippet Action Score)特征。最终,对于一个包含T 帧图像的视频,我们可以得到等长的SAS特征序列。该特征序列实际上就是一个二维的矩阵。

SSAD 模型

在获得长度为T的特征序列后,就可以将其用作SSAD模型的输入。SSAD模型是一个全部由时序卷积(一维卷积)构成的网络。主要包括三种卷积层:base, anchor, prediction layer。 Base layers 的作用为缩短特征序列的长度,并增大特征序列中每个位置的感受野。在实验中,我们尝试了多种base layers的结构,如下图所示。最终,通过实验我们选择了结构B。可以看出,conv和pool均选用了较大的kernel size。在base layers中,我们发现使用大卷积核比使用多层小卷积核进行卷积能获得更好的效果。

image

接下来SSAD模型中继续使用anchor layers 来缩小特征序列的长度。anchor layer 输出的特征序列中的每个位置都被关联了多个尺度的anchor instances(一个instance代表视频中动作发生的那一段时间,可以理解为一个一维的default box)。之后,再通过prediction layer,来获取每个anchor instances所对应的 坐标偏移量,重叠置信度,以及类别分类结果。通过多层时间尺度不断缩小的特征序列,SSAD模型可以获得由小到大各个时间尺度的action instance预测。

image

训练与预测

训练

训练时,首先将获得的anchor instances用坐标偏移量进行修正,再与 ground truth instances 进行匹配,来确定anchor instances是正样本还是负样本。具体的匹配策略见论文。SSAD模型使用如下的损失函数进行模型训练,主要包括分类损失,重叠置信度回归损失,边界回归损失以及正则化项。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值