Abstract
在本文中,我们要解决的主要任务是多实例半监督视频对象跨帧序列的分割,其中只提供第一帧的gt信息。 基于检测的算法被广泛采用来处理这一任务,挑战在于选择匹配方法来预测结果,以及决定是否使用新预测的结果来更新目标模板。 然而,现有的方法以粗糙和僵硬的方式进行这些选择,从而影响了它们的性能。 为了克服这一局限性,我们提出了一种新的方法,利用强化学习来同时做出这两个决策。
具体地,强化学习代理根据预测结果的质量学习决定是否更新目标模板。 匹配方法的选择将同时基于强化学习代理的动作历史来确定。 实验表明,我们的方法在准确率更高的情况下(在Davis 2017数据集上的区域相似度为69.1%),速度几乎是以前最先进的方法的10倍。
1. Introduction
多实例半监督视频对象分割是一项重要的计算机视觉任务,是场景理解、视频监控、视频编辑等相关任务的基础。 VOS的任务是为视频序列中的每一帧产生实例分割掩码,其中预先提供了第一帧的基本事实。 尤其是在变形、运动模糊、光照变化、背景杂乱等情况下,这是一项极具挑战性的任务。
图1.Davis 2017数据集上各种多实例半监督VOS方法的速度-精度权衡。 绿色的方法只依赖于第一帧的bbox的gt,而红色的方法依赖于第一帧的像素级的gt。
提供第一帧gt的常用方法有两种,包括mask蒙版和bbox边界框。 提供第一帧掩模是一种常规方式,目前已被广泛采用[32,27]。 虽然这些方法对于像素级精确的目标对象信息已经取得了很好的性能,但由于为每个视频序列标注像素级gt掩模非常耗时,因此利用这些方法来解决实际的VOS问题成为一项艰巨的任务,特别是当需要在短时间内处理大量视频序列时。 为了克服这一问题,受包围盒级别视频对象跟踪(VOT)任务快速发展的启发,一些工作试图依赖第一帧包围盒来提供目标对象信息,而不是使用第一帧掩码,这大大加快了标注过程,增加了可扩展性。
然而,这种加速是建立在牺牲地面真相“准确性”的基础上的。 这是因为一些背景区域也会被加入到边界框中,这大大增加了VOS任务的难度。 这样,为了适应盒级地面真实的特点,现有的基于首帧包围盒的方法大多采用基于检测的算法。 一般来说,这些基于检测的方法包括三个步骤。 第一步是对整个帧进行对象检测,以使用rpn区域提案网络生成所有可能对象的提案[23]。 第二步是在目标对象和所有候选框之间进行匹配过程,找到“正确”的proposal。 第三步是对“正确”的建议进行显著性分割,生成最终的分割结果。
然而,依赖于第一帧边界框[31,29]的现有方法在运行速度和精度方面都不如依赖于第一帧掩码的方法。
首先,在运行速度方面,我们观察到大多数现有的基于检测的算法在匹配过程上花费了太多的时间(例如,在[29]中,匹配过程花费了1.425s,分割过程花费了0.025s),使用几个耗时的网络来评估外观相似度,如重新识别网络[25]和siam风格网络[29]。 我们观察到,对于大多数视频序列,根据当前帧的候选建议与获得的前一帧的边界框或分割掩码之间的交集(IOU)进行快速匹配也可以获得可接受的性能,因为目标对象通常在两个连续的帧中缓慢移动或变化。 然而,简单的基于借条的匹配方法有时会丢失目标,特别是当目标从视线中消失,然后在不同的位置重新出现时。 因此,无论是简单的基于外观的匹配还是简单的基于借条的匹配都不是该任务的最佳解决方案。
其次,VOS精度的主要制约因素是其更新目标模板的方式粗糙。 目标模板包含目标的最新信息,包括外观、位置等,在匹配过程中起着至关重要的作用。 在当前帧的所有候选提案中,选择与目标模板相似度最高的方案。 这样,能否选出正确的方案取决于目标模板的质量及其更新机制。 然而,现有方法简单地在完成一帧之后用新预测的结果替换目标模板,而不考虑获得的结果的正确性。
因此,误差会逐渐引入到目标模板中,造成较大的精度下降。
为了在精确度和速度之间取得更好的平衡,“智能开关”需要做出两个重要的决定,包括采用哪种匹配方法,基于借条的匹配还是基于外观的匹配,以及是否更新目标模板。 为了解决这个问题,我们将其形式化为一个条件决策过程,其中只使用一个简单的强化学习(RL)Agent以灵活的方式进行决策。 从图1可以看出,在提供最优匹配方法和更新机制的情况下,即使在一些困难的帧中,我们的算法也可以在不丢失目标的情况下得到显著的加速,导致比以前最先进的方法有更高的准确率。 具体地说,我们的方法的运行速度大约是以前最先进的方法的10倍。
综上所述,大多数视频对象跟踪和分割算法包括三个步骤。 第一步是对当前帧进行实例分割,生成候选提案池。 第二步,根据目标模板信息,进行匹配过程,在所有候选方案中找到正确的方案作为最终结果。 第三步是使用当前帧的预测完全替换目标模板。
在本文中,由于我们发现第一步对最终结果的影响不大,我们的新奇之处在于对第二步和第三步的改进:
- 为了改进第二步,我们的方法提供了一种简单的方式,通过选择匹配方法(基于借条的匹配或基于外观的匹配),在运行速度和精度之间进行权衡。 匹配方法的选择是由RL代理的动作历史决定的,这大大减少了我们方法的运行时间。
- 为了改进第三步,在观察到目标模板更新机制对于避免漂移的重要性的同时,我们认为应该丢弃一些质量较差的预测结果,并在这种情况下保持目标模板不变。 具体地说,我们采用RL代理根据预测结果的质量来决定是否更新目标模板,有效地防止了漂移问题,提高了方法的准确性。
- 建议的方法已经在VOS和VOT数据集上进行了验证,包括Davis 2017、Davis 2016、SegTrack V2、YouTube-Object和VOT 2018长期数据集。 我们的方法比以前最先进的方法大约快10倍,同时实现了更高的平均区域相似度。 在Davis 2017(69.1%)、SegTrack V2(79.2%)和YouTube-Object(79.3%)等数据集上获得了新的最新的平均区域相似度。
2. Related Work
2.1. Video Object Segmentation
VOS可以分为三类:无监督VOS[26]、交互式VOS[3,30]和半监督VOS[27,3]。
无监督VOS是完全没有第一帧注释可用的任务。 在[24]中,利用级联金字塔扩张卷积特征图来提高最终的精度。 交互式VOS允许用户注释。 在[3]中,通过训练嵌入模型来判断两个像素是否属于同一对象,这被证明对于这项任务是有效的。
目前,提供第一帧地面实况的半监督VOS仍然是VOS任务的主战场。 最常用的方法是使用第一帧地面实况来微调一般的分段网络[2]。 为了适应对象外观变化,在[28]中,分段网络将在测试期间更新。 为了克服在线更新的速度不足,在[34]中,利用元学习模型在几乎不降低准确率的情况下加快了在线更新的过程。 为了克服训练数据不足的问题,文献[32]提出利用静态图像生成更多额外的训练样本。 在[31]中,当第一帧地面真实以边界框的形式提供时,修改原有的暹罗跟踪器以生成目标对象的分割。 在[29]中,将原始的R-CNN网络改进为条件R-CNN网络,并利用时间一致性重新评分算法寻找目标对象的候选方案,然后使用显著分割网络寻找最终结果。
2.2. Deep Reinforcement Learning
目前,RL已经在许多计算机视觉应用中得到了应用。 在VOT任务中,[33]采用RL学习相似度函数进行数据关联。 在[4]中,应用RL从模板池中选择合适的模板。 在VOS方面,han et al.。 将VOS任务分为两个子任务,包括查找最优对象框和查找上下文框[8]。 由于获得的分割掩码在同一帧的不同对象框和上下文框下不同,因此需要这项工作。 这样,RL自然适合为每个帧选择最优的对象框和上下文框。
3. Our Approach
3.1. Overview
Bbox半监督VOS只提供第一帧盒级地面真实,而不提供第一帧像素级地面真实。 该工作的主要目的是通过改进盒级半监督VOS的匹配机制,利用RL来提高半监督VOS的准确率和运行速度,通过RL Agent同时做出两个重要决策,包括采用哪种匹配方法,基于IOU的匹配还是基于外观的匹配,以及是否更新目标模板。
具体地说,从图2可以观察到,当前帧FT的处理被分成三个步骤。 第一步采用基于借条的匹配,生成临时的初步结果。 具体地说,首先确定目标的搜索区域b(见图3),该搜索区域b将被馈送到一般实例分割网络(例如,YOLACT[5],Mask R-CNN[9])以生成多个候选预测。 然后,采用基于借条的匹配方法,在所有候选预测中找出初步结果。
第二步,根据RL Agent判断的初步结果的正确性和质量,确定目标对象信息(目标模板)的更新机制。 如果是好的,目标模板将被初步结果完全替换。
否则,初步结果将被丢弃,目标模板将保持不变。 最终根据目标模板生成最终结果。
第三步是确定基于外观的重新检测是否是FT所必需的。 如果目标丢失,也就是说,初步结果连续N帧都很糟糕,则需要使用基于外观的匹配重新检测目标。 否则,不需要对ft重新检测,并且将处理下一帧ft+1。 就基于外观的重新检测而言,整个帧而不是BS将被馈送到一般实例分割网络中。 然后,通过基于外观的匹配方法从所有候选预测中选出一个新的结果。 再次执行第二步以生成新的最终结果。 请注意,对于每个帧,执行第三步的次数不超过一次。
3.2. Agent Action
图2.我们方法的体系结构,其中无条件路径(整行)表示它们将在任何情况下执行,而条件路径(虚线)表示它们只在某些特定情况下执行。
RL代理用于解决匹配过程中的两个复杂挑战,所有现有的基于检测的VOS方法都忽略了这两个挑战。
在我们的方法中,目标模板被用来表示目标信息,这是一个重要的概念。 如图4所示,目标模板由目标的边界框TBox、分割遮罩Task、Tbox内的裁剪图像Tbox0、Task内的裁剪图像Tmask0和整个帧TF rame组成。 相应地,预测结果合并了边界框Pbox、分割掩码Pask、Pbox内的裁剪图像Pbox0、Pask内的裁剪图像Pmask0和当前帧PF rame。
第一个挑战是决定是否使用预测结果更新目标模板。 传统上,目标模板是以粗略的方式更新的,没有考虑预测结果的正确性或质量。 因此,当分割网络预测当前帧FT的糟糕结果时,其甚至可能引用另一对象而不是目标,目标模板仍将被不正确的结果替换。 这一致命错误将使跟踪器漂移到错误的目标,导致精度大幅下降。 请注意,采用更好的匹配方法无法避免此错误,因为目标是在匹配过程之前确定的。
如此一来,能够根据预测结果的好坏来决定是否更新目标模板的“智能开关”,或许就是这一挑战的最佳解决方案。 我们不是启发式地做出决定,而是采用RL代理来做出这样的决定。 RL代理的动作集A包含2个候选动作a1∈A,包括使用ft的预测结果替换目标模板的a0,以及忽略ft的预测结果并保持目标模板不变的a1。
第二个挑战是决定是采用快速的基于借条的匹配方法还是采用精确的基于外观的匹配方法。 在我们的方法中,基于IOU的匹配将具有最高IOU分数的候选框预测视为正确的预测,如下所示:
其中α和β指的是这两张借据的权重。
基于外观的匹配将外观相似度最高的候选预测视为正确预测:
其中相似性()是暹罗样式的网络,其输入是Tbox0和Pbox0内的图像面片。 然后,生成它们各自的嵌入向量。 这两个矢量之间较小的L2距离表示两个面片相似,反之亦然
图3.最小包围矩形bm和搜索区域b的图示。 BS是由BM通过扩展生成的。
有两种匹配机制的灵感来自于观察到,快速的基于IOU的匹配对于大多数正常帧都表现得很好,而基于外观的匹配只有在少数困难的情况下才是必不可少的,特别是当目标消失并再次出现时。 因此,匹配方法的选择对于在运行速度和精度之间进行权衡具有十分重要的意义。
我们决定根据操作历史选择匹配方法,而不是再添加一个RL代理。
事实上,动作历史从本质上说明了预测的好坏。 如果RL代理对连续N帧预测为A1,则很有可能目标已经丢失,因此必须采用基于外观的匹配来检测整个帧上的目标。
3.3. State and Reward
状态ST是帧FT的RL代理的输入,包括帮助RL代理预测最佳动作At的信息。
在我们的方法中,st由两个部分组成,以向RL代理提供足够的信息。 第一部分ST是修改后的TF RAME图像,其中Tbox0保持不变,而TBox外部区域变黑,写为:
图4.目标模板中的元素(Tbox、Task、Tbox0、Tmask0)的说明。 预测结果中的元素(Pbox、Pask、Pbox0、Pmask0)的形式相同。
其中函数Φ将所有像素设置为黑色。 它在TF帧中提供目标的位置和外观信息。
第二部分SP是修改后的PF rame图像,其中Pmask0保持不变,而Pask外部的区域变黑:
它既提供预测对象的位置和外观信息,也提供其分割信息。
最终的st是ST和SP的特征地图的连接:
具体地说,我们采用在ImageNet分类数据集[6]上预先训练的RESNET-50[10]来提取ST和SP的特征图。 我们使用RESNET-50[10]的前5个块,得到ST和SP的大小为r1×1×2048的特征映射,而st的大小为r1×1×4096。 最后,st将被馈送到RL代理以预测帧ft的动作。
反映视频序列的最终分割结果的准确性的奖励函数被定义为rt=g(st,at):
其中JT指的是PMASK和GROUTAL TRUAL MASK之间的借条。 JT立方体的使用扩大了好动作奖励和坏动作奖励之间的差异,有助于加快RL Agent的训练速度
3.4. Search Region Size
搜索区域BS的大小极大地影响分割结果的质量。 从图3可以观察到,BS是使用BM(覆盖前一帧中的所有目标对象的最小框)通过扩展来生成的。 黑石的扩容比例会根据视频的特点而有所不同。 具体地说,从bm到bs有三种膨胀比,包括大膨胀比、小膨胀比和中等膨胀比。 首先,计算每个目标在相邻两帧之间的位移距离。 如果任何人大于阈值,则选择较大的扩张率。 否则,如果两个目标对象彼此接近(其边界框之间的IOU不为零),则选择较小的扩展比。 如果不是,则选择中间比率。
3.5. Actor-Critic Training
在我们的方法中,RL代理是在“Actor Critic”框架[12]下训练的,这是一个流行的RL框架,由两个子网络组成,包括一个用于生成动作的“Actor”子网络和一个用于检查该动作质量的“Critic”子网络。 一旦RL代理被完全训练,在推理时间期间只使用“参与者”子网络。
在我们的“演员-评论家”框架中,给定当前帧FT,第一步是将状态ST馈送到“演员”网络中,并生成动作AT,以决定是否使用预测结果更新目标模板。 进行此动作后,也将获得相应的奖励RT。 RT由根据(7)的区域相似度Jt计算。
我们的“评论家”网络将以基于价值的方式进行培训。 具体地说,参数更新如下
where
在(8)和(9)中,w和w0表示“批评者”模型在更新前后的权重。 LC是“批评家”模型的学习率。 δt是表示实际分数与预测分数之差的TD误差。 Vw0(St)指的是状态st在更新前由“Critic”模型预测的累计奖励。 γ指的是贴现率。
“演员”网将在“评论家”网之后以基于政策的方式进行更新,具体如下
where
通过这种方式,我们的“行动者-批评者”框架避免了基于价值和基于政策的方法在培训过程中的缺点。 换句话说,我们的RL代理允许在每一帧都进行培训和更新,而不是等到剧集结束,这极大地加快了培训过程,同时保持了培训的稳定性。
4.实施细则
4.1。 分割网络训练
在我们的方法中,实例分割网络的训练遵循YOLACT的策略[5]。 第一步是使用ImageNet分类数据集[6]预先训练ResNet-101网络[10]。 然后,该具有FPN[15]的网络被用作分段网络的特征骨干。 最后,在Pascal VOC数据集[7]上训练分割网络,其中包括分类损失、盒回归损失和通过预测掩码与地面真实之间的像素级二进制互熵计算的掩码损失。
4.2.。 RL代理训练
我们的RL代理是在Davis 2017数据集的训练集上训练的,其中训练集的所有视频序列都被预先划分为具有固定帧数的视频剪辑。 由10个连续帧组成的视频剪辑用作培训RL代理的插曲。 将随机抽取20个视频片段作为一批。
开始时,“演员”模型的学习率1a为1e-4,学习率lc为5e-4。 LA和Lc在训练过程中逐渐下降,每200次迭代下降1%。 奖励的贴现率γ为0.9%。 我们的RL工程师在NVIDIA GTX 1080 Ti GPU和3.7 GHz的12核Intel i7-8700K CPU上接受了大约10天的培训。
在其他超参数方面,在计算(1)中的SIOU时,我们发现第一帧的α=1,β=0,其他帧的α=0,β=0都很好,因为像素级的地面真实不能用于我们的任务。 对于基于外观的匹配,我们发现当连续3帧采取A1动作时,使用基于外观的匹配来重新检测目标效果更好。