摘要 · 看点

在 AAAI 2021 上,商汤科技城市计算研发团队提出了基于互补边界回归和尺度平衡交互建模的时序动作提名生成网络(BSN++),针对现有方法存在大量边界噪声、缺乏提名之间的关系建模以及动作持续长度不平衡等问题进行了改进,能够高效地给大量密集分布的候选提名生成高精度的边界预测和可靠的置信度分数。实验结果表明,BSN++ 在两个著名的公开数据集上均有显著的性能和效率提升。基于该方法,我们在 CVPR19 - ActivityNet Challenge 的时序动作检测任务榜单上排名第一。

本文转自商汤泰坦公开课。

Part 1 任务定义和挑战 

时序动作提名任务旨在从一段未修剪的长视频中生成包含动作发生区间(从起始到结束)的候选片段。通常认为高质量的时序动作提名应当具备两个关键特性:

(1)生成的动作提名能够在时序上完整地覆盖动作发生的区域,并且保证有足够高的召回和时序重叠;

(2)提名的质量应当被准确地评估,从而提供一个可靠的置信度分数用于后续的检索排序。

为了满足这两个条件同时实现高质量的动作提名生成,现有的时序动作提名生成方法大多遵循两个范式。第一种是“自顶向下”的方式,候选提名大多基于滑动窗口或者是预先定义好尺度和比例且均匀分布的锚点框来进行边界回归,然后采用一个二分类器来评估提名的置信度分数。

然而,这种方式生成的提名即使经过了多阶段的边界修正,也很难得到十分准确的边界。在这种情况下,以 BSN[1](边界敏感网络)为首的基于边界概率预测的方法开创了“自底向上”范式的先河,在近年来吸引了许多学者的关注。

其将输入视频以一种细粒度的方式进行边界概率评估,并通过组合高概率的候选起止点生成任意长度的候选动作提名,既实现了边界的准确性也突破了锚点框对于长度的限制。

然而,尽管 BSN 在性能和效率上相比于前人的方法都取得了显著的领先,我们发现它仍然存在一些弊端:

(1) 在进行边界预测时只依赖局部的上下文信息,忽视了对整段视频长时序的依赖,造成了很多边界噪声,从而精度较低。

(2) 提名的评估过程相对独立,缺乏对相似提名之间的关系建模,存在严重的偏差。

(3) 相同/不同动作之间都存在严重的正负样本/持续长度的不平衡现象,长尾效应严重,典型数据分布如下图所示。

(4) 效率低下。BSN 通过多阶段的方式分别完成边界预测、提名生成和提名评估等过程,性能上相互制约,且效率上缺乏联合优化,不利于实际应用的线上部署。

Part 2 方法介绍

针对上述问题,我们提出了一个全新的时序动作提名生成框架(BSN++)。与BSN的多阶段过程不同,BSN++ 实现了在一个统一框架内完成提名图(proposal map)的生成。

为了得到该提名图,BSN++ 分别生成了一张边界图和置信度图用来表示大量密集分布提名的边界信息和置信度分数。如下图所示,BSN++ 主要包含三个主要的模块:基础模块、互补边界生成器和提名关系建模模块。

1. 基础模块

基础模块(Base Module)旨在处理经过双流网络提取好的视频特征序列,用于进行时序关系的初步建模。同时该模块的输出分别作为后续两个分支的输入。

具体来说,该模块主要由两层带有 ReLU 激活函数的 1D 卷积组成,卷积核大小为 3,数量为 256,且步长为 1。由于输入视频的长度不一,我们将输入视频截断为一系列固定长度的滑动窗口。

2. 互补边界生成器

互补边界生成器(Complementary Boundary Generator)主要源于受到 U-Net[3] 结构应用在医学图像分割上的启发,我们认为对于时序边界生成这种密集预测(dense prediction)的任务同样可以通过一维的编码-解码器结构进行高层级全局时序信息和低层级局部时序信息的建模。

如下图所示,左下部分中的每个圆圈分别代表一个带有 512 个卷积核且核大小为3的一维时序卷积层,并分别接着一个批归一化层(BN)和 ReLU 激活函数。为了减小过拟合的现象,我们只添加了两层下采样层来增大时序的感受野,并接着采用同样数量的上采样层来恢复到原始的时序分辨率。

此外,为了加快网络的收敛速度,额外在中间层施加了监督信号(deep supervision)(该操作对于后续的模型剪枝同样有帮助)。同时,通过跳层连接来缩小编码器和解码器之间的语义鸿沟。

值得一提的是,我们发现起始边界分类器和结束边界分类器之间存在天然的互补性。即当视频经过反向输入到网络时,起始边界分类器(从背景到前景)可以看作是一个伪结束边界分类器(从前景到背景)。因此,很自然地想到利用双向的模型预测结果进行融合:

为了在训练过程中增强模型对于边界的鲁棒性,我们实现了并行的编解码优化过程,并在两侧的中间层输出额外施加了一致性约束,实验发现该策略可以显著提升最终的边界预测精度,抑制了边界噪声的出现。

最终,将获得的两个边界概率序列构建成一张边界图(boundary map),用于表征所有密集分布提名的边界信息,其中T和D分别代表特征序列的长度和提名的最大持续时间:

3. 提名关系建模模块

提名关系建模模块(proposal relation block)的目的是为了高效地评估密集分布候选提名的置信度分数。BMN[2] 提出了边界匹配(boundary-matching)机制来实现一次性为所有候选提名进行置信度评估。

然而,尽管 BMN 在生成的提名特征图上采用了 3x3 的 2D 卷积进行局部的提名关系建模,但这显然不足以挖掘相似动作提名之间的关系(尤其是真值 IoU 相同但动作种类/持续长度不同的动作提名),使得提名的评估过程仍然相对独立。

只是为 BSN 的提名评估模块提供了更高效的训练方式,并没有从本质上解决提名评估问题。

针对该问题,BSN++ 设计了一个提名关系建模模块来分别从提名位置层面(位置感知注意力模块)和通道表征层面(通道感知注意力模块)进行了两个不同维度的交互信息建模,具体过程如下图所示。

最终,三个子分支分别进行监督训练和测试结果融合,从而达到最佳的置信度图预测质量(其中,置信度图中像素点 (i,j) 代表一个起始点为,持续时间为的候选提名对应的置信度分数)。

4. 两阶段重采样

长尾数据集中的数据不平衡问题可以严重影响到模型的训练精度和泛化性能。本文回顾了数据集中的正负样本分布以及动作持续长度的分布情况,并针对性的设计了用于提名置信度预测的重采样策略,旨在提升在长尾数据集中的模型训练表现。

具体来说,BSN++ 设计了两阶段的采样策略,不仅针对训练过程中提名的正负样本数量进行平衡,同时考虑了对正样本提名中提名的时序长度进行二次平衡。

基于 IoU 平衡的采样策略。如文章开头的数据分布示意图可以观察到,正负样本的批损失分布存在较大的差异,这种现象无疑会导致严重的训练模型偏差。先前的工作通常设计了一个正负样本的采样器来平衡不同 IoU 区间的样本。

然而,我们发现正负样本的持续时间同样不遵循常规的均匀分布。因此,有必要考虑继续对动作提名的长度进一步平衡。

尺度平衡重采样。为了缓解长尾尺度的问题,我们在 IoU 平衡采样的基础上提出了一个正负样本尺度重采样策略。具体来说,假设为正样本提名中持续长度为的数量,而则为其占总提名数量的比例:

其中,为预先定义的归一化尺度范围(例如,[0-0.3, 0.3-0.7, 0.7-1.0])。通过一个正样本比例采样函数,得到采样比例,且当小于(根据经验设为 0.15)时,该采样比例将大于原始采样比例。

因此,我们将更新后的归一化采样比例作为某个特定提名长度区间的采样概率,并以此为基准构建批数据进行模型训练。至于负样本,采用相同的采样过程。

Part 3 实验结果

1. 时序动作提名生成

我们首先在 ActivityNet-1.3 上评估了 BSN++ 生成的时序动作提名质量,如下表所示。BSN++ 相比于之前的方法取得了更高的 AUC 指标,尤其在 AR@1 和 AR@100 指标上(Top-1/Top-100候选提名下的平均召回)相比于 BSN 提升最为明显。可见,BSN++ 在保证高召回的前提下也提升了候选提名的整体检索质量。

接着在 THUMOS14 上对比评估了 BSN++ 在不同输入特征下的动作提名质量,如下表所示。可见,BSN++ 对于不同的数据集和不同的特征提取器都具有很好的鲁棒性。

同时,在下表中还对 BSN++ 的各个模块进行了详细的剖析实验,充分验证各个模块的有效性和互补性。并且从评估结果中我们可以总结出以下几点结论:

(1) 编码-解码器结构同样可以对一维时序信息进行“局部到全局”的充分建模,从而相比于之前只依赖于局部信息的方法有更准确的边界预测结果;

(2) 双向匹配机制进一步验证了未来信息对于边界调整决策的重要性;

(3) 与先前方法独立评估提名不同,BSN++ 采用的提名关系建模模块可以提供更全面的特征用于区分和评估动作提名;

(4) 尺度平衡的重采样策略可以使得模型达到均衡优化的目的;

(5) 通过将各个模块集成到一个端到端的框架,BSN++ 可以获得有竞争力的结果提升;

(6) 同时,BSN++ 保证了总体的效率优势。

2. 时序动作检测

与两阶段图像目标检测相似,我们认为时序动作提名的质量会直接影响到时序动作检测的性能。因此,我们将BSN++ 生成的时序动作提名结果直接赋予现有视频分类器的分类标签,即可得到最终的时序动作检测结果,并用于评估模型的检测精度(mAP)。

我们分别在 ActivityNet-1.3 和 THUMOS14 数据集上进行了实验,结果分别如下表所示。可见,BSN++ 在检测精度上显著提升了现有算法的水平。

最后,我们分别在两个数据集上随机挑选了两个视频样例及其模型预测结果进行可视化,如下图所示。其中第一行为 THUMOS14 中的视频,第二行为 ActivityNet-1.3 数据集中的视频。

Part 4 结语

本文的主要贡献在于针对现有 BSN 系列的方法存在的几点问题进行了针对性的解决,并提出了进阶版本 BSN++。通过互补边界匹配融合的方法实现高精度的边界预测。同时,着重解决了现有方法忽略的密集分布提名关系建模和尺度不平衡等问题,显著提升了对于密集分布候选提名的置信度评估质量。实验结果表明,BSN++ 在主流数据集上的算法性能和效率上均取得了一致的提升。

论文链接

https://arxiv.org/pdf/2009.07641v4.pdf

References

[1] Lin, T.; Zhao, X.; Su, H. BSN: Boundary sensitive network for temporal action proposal generation. In European Conference on Computer Vision (ECCV), 2018.

[2] Lin, T.; Liu, X.; Li, X.; Ding, E.; and Wen, S. BMN: Boundary-Matching Network for Temporal Action Proposal Generation. In International Conference on Computer Vision (ICCV), 2019.

[3] Zhou, Z.; Siddiquee, M. M. R.; Tajbakhsh, N.; and Liang, J. UNet++: A Nested U-Net Architecture for Medical Image Segmentation. MICCAI.

END

备注:人体

人体动作检测与识别交流群

动作识别、动作检测等技术,

若已为CV君其他账号好友请直接私信。

我爱计算机视觉

微信号:aicvml

QQ群:805388940

微博知乎:@我爱计算机视觉

投稿:amos@52cv.net

网站:www.52cv.net

在看,让更多人看到  

AAAI 2021 | 商汤提出BSN++: 时序动作提名生成网络相关推荐

  1. CVPR 2021 | 商汤提出最强时序动作提名修正网络:TCANet

    点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:商汤学术 AI博士笔记系列推荐 周志华<机器学习>手推笔记正式开源!可打印版本附pdf下载链接 摘 ...

  2. 用于时序动作提名生成任务,爱奇艺提出BC-GNN图神经网络 | ECCV 2020

    时序动作提名生成任务可以从未处理的长视频中定位出包含动作内容的片段,对视频理解以及时序行为检测任务等有着重要的作用.随着视频数量的激增以及视频内容的丰富,对时序动作提名算法的关注和需求也得到巨大提升. ...

  3. ICCV 2019 | ActivityNet 挑战赛冠军方案—时序动作提名,边界匹配网络详解

    点击我爱计算机视觉标星,更快获取CVML新技术 本文作者为百度视觉技术部林天威,转载自知乎Video Analysis 论文笔记专栏: https://zhuanlan.zhihu.com/p/754 ...

  4. 【AI周报】AI与冷冻电镜揭示「原子级」NPC结构;清华、商汤提出「SIM」方法兼顾语义对齐与空间分辨能力

    01 # 行业大事件 施一公等团队登Science封面:AI与冷冻电镜揭示「原子级」NPC结构,生命科学突破 今日,<Science>杂志以封面专题的形式发表了 5 篇论文,共同展现了通过 ...

  5. Open Images冠军,商汤提出解偶检测分支新方法TSD并入选CVPR 2020

    关注上方"深度学习技术前沿",选择"星标公众号", 资源干货,第一时间送达! 编者按:此前,在文章<商汤科技57篇论文入选ICCV 2019,13项竞赛夺 ...

  6. ICLR 2022 | 商汤提出cosFormer:在注意力中重新思考Softmax

    点击下方卡片,关注"CVer"公众号 AI/CV重磅干货,第一时间送达 转载自:机器之心  |  编辑:杜伟.陈萍 来自商汤.上海人工智能实验室等机构的研究者用线性 COSFORM ...

  7. 三维网格精简算法java版_ISMAR 2020 | 商汤提出手机端实时单目三维重建系统

    导读:商汤研究院和浙江大学CAD&CG国家重点实验室合作研发了一个手机端实时单目三维重建系统Mobile3DRecon.与现有的基于RGBD的在线三维重建或离线生成表面网格的系统不同,该系统结 ...

  8. CVPR 2020 |商汤提出应对尺度变化的目标检测新算法

    在CVPR 2020上,为了更好的解决物体检测中的尺度问题,商汤EIG算法中台团队重新设计了经典的单阶段检测器的FPN[1]以及HEAD结构,通过构造更具等变性的特征金子塔,以提高检测器应对尺度变化的 ...

  9. CVPR 2020丨8比特数值也能训练模型?商汤提出训练加速新算法

    本文转自AI科技评论. 本文介绍的是CVPR2020入选论文<Towards Unified INT8 Training for Convolutional Neural Network> ...

最新文章

  1. 转载:使用 OpenCV 识别 QRCode
  2. 【Keras】Linux一个shell脚本安装python、keras、tensorflow、anaconda等~
  3. oracle数据库装不成功,oracle 10.2.0.4安装 创建数据库时 em不成功需要大的补丁
  4. 《LeetCode力扣练习》第20题 有效的括号 Java
  5. linux yum配置文件 yum.conf 简介
  6. Golang gRPC 示例
  7. 一个用JAVA实现的线段树类--泛型 重构.
  8. 如何在Android模拟器上安装和卸载APK程序包
  9. 猎豹移动(金山网络)2015校园招聘(c++project师)
  10. Helpdesk 流程
  11. revit如何根据坐标进行画线_在工程设计中如何根据工艺阀门的结构与特点来进行设计呢?...
  12. OpenShift 4 - Knative教程 (6) Eventing之Channel和Subscription
  13. linux定时器的实现方法
  14. paip.regf文件读取与编辑
  15. android连接airprint打印机,苹果让无线打印更加便捷,安卓已羡慕
  16. 手机微信html整人代码大全,2018年微信整人代码有哪些?2018年微信整人代码大全!...
  17. 面试题:写一个左中右布局占满屏幕,其中左右两块是固定宽度200 , 中间自适应宽,要求先加载中间块,请写出结构及样式:
  18. 计算机usb接口不工作原理,电脑usb接口不能用,详细教您电脑usb接口不能用怎么办...
  19. Primary主类和Catagory分类都存在相同事件
  20. matlab在生物学中的应用,MATLAB在生物医学信号处理中的应用

热门文章

  1. Ubuntu16.04 设置环境变量的方法
  2. mysql 存储过程 sql变量_SQL基础-变量 存储过程和函数
  3. Golang笔记—封装/继承/接口
  4. AlexNet--CNN经典网络模型详解(pytorch实现)
  5. toj 4607 Multiple of 17
  6. ZZULIOJ21级新生周赛(1)——命题人:朱会东老师--2824: 探姬同学@出题人
  7. 【环境搭建002】ubuntu 13 在vm 下的 NFS 搭建
  8. json增加反斜杠 php_thinkphp5.1.x~5.2.x版本反序列化链挖掘分析
  9. c语言统计输入的字符数字的个数字,请问这个用c怎么做:输入一串字符,分别统计其中数字和字母的个数...
  10. java将生成数据写入文件_JAVA-将内容写入文件并导出到压缩包