摘要
在线视频对象分割是一项具有挑战性的任务,因为它需要及时和准确地处理图像序列。为了通过视频分割目标对象,已经开发了许多基于CNN的方法,通过在第一帧中严格调整对象掩模,这对于在线应用来说是耗时的。在本文中,我们提出了一种快速准确的视频对象分割算法,一旦接收图像就可以立即开始分割过程。我们首先利用基于零件的跟踪方法来处理具有挑战性的因素,例如大变形,遮挡和混乱的背景。基于追踪的零件边界框,我们构建了一个感兴趣区域分割网络来生成零件蒙版。最后,通过将这些对象部分与第一帧中的视觉信息进行比较,采用基于相似性的评分函数来细化这些对象部分。我们的方法在DAVIS基准数据集的准确性上优于最先进的算法,同时实现更快的运行时性能。
Introduction
视频对象分割旨在从背景和像素级别的其他实例中分离目标对象。视频中的对象分割是计算机视觉中的一项基本任务,因为它具有广泛的应用,如视频监控,视频编辑和自动驾驶。然而,由于相机运动,对象变形,实例之间的遮挡和混乱的背景,这是一项具有挑战性的任务。特别是对于在线应用程序,如果要求方法在健壮和快速的情况下未能访问未来的帧,则会出现显着的不同问题。在本文中,我们着重解决在线视频对象分割问题。鉴于第一帧中的对象,我们的目标是立即在该目标对象上执行在线分割而不知道未来的帧。对于实际的应用程序用法,困难在于要求高效的运行时性能,同时保持精确的分段。图1说明了现有技术方法在速度和性能方面的比较,其中我们证明了所提出的算法快速,准确且适用于在线任务。
现有的视频对象分割算法可以大致分为无监督和半监督设置。无监督的方法主要是在没有任何事先知道目标的情况下从背景中分割移动物体,例如初始物体掩模。但是,这些方法无法处理多个对象分割,因为它们无法识别特定的实例。此外,在分割对象之前,有几种方法需要批量模型处理(即,所有帧都可用),这不能应用于在线应用程序。另一方面,半监督方法给出了一个初始对象掩码,它提供了目标的关键视觉线索。因此,这些方法可以处理多实例情况,并且通常比无监督方法执行得更好。然而,许多最先进的半监督方法在很大程度上依赖于第一帧中的分段掩码。例如,在对测试视频进行预测之前,最先进的方法需要对每个视频的网络或每个实例的模型进行微调。视频或实例级别的这种微调步骤在计算上花费很大,通常需要十多分钟才能更新模型。另外,数据准备(例如,光流生成)和训练数据增加需要额外的处理时间。因此,这些方法不能用于时间敏感的在线应用,这些应用需要对特定目标对象进行快速准确的分割结果(见图1)。
在本文中,我们提出了一种视频对象分割算法,可以立即开始快速准确地分割整个视频中的特定对象。为此,我们利用基于部分的跟踪方法并利用卷积神经网络(CNN)进行表示,但不需要在目标视频上耗费时间的微调阶段。该方法主要由三部分组成:基于部分的跟踪,感兴趣区域分割和基于相似度的聚合。
基于部件的跟踪。对象跟踪是在下一帧中定位目标的有效方法。然而,非刚性物体通常具有较大的变形和快速运动,因此难以准确定位目标[2,8,30]。为了更好地利用跟踪线索,我们采用基于部件的跟踪方案来解决诸如遮挡和外观变化等具有挑战性的问题[27]。我们首先在第一帧的目标周围随机生成对象提议,并根据与初始蒙版重叠的分数选择代表性部分。然后,我们将跟踪器应用于每个部分,为后续帧提供时间上一致的兴趣区域(ROI)。
ROI 分割。一旦每个部分被定位在下一帧中,我们构建一个基于CNN的ROI SegNet来预测属于目标对象的分割掩模。与专注于分割整个对象的传统前景分割网络不同,我们的ROI SegNet学习根据部分的边界框来分割部分对象。
基于相似性的聚合。通过零件跟踪和ROI分割,可以粗略识别物体位置和分割掩模。但是,由于跟踪结果不正确,可能会出现误报。为了减少噪声分割部分,我们设计了一种基于相似度的方法,通过计算被跟踪部分与初始对象遮罩之间的特征距离来聚合部分。图2显示了该算法的主要步骤。
为了验证所提出的算法,我们对DAVIS基准数据集进行了广泛的实验,并进行了比较和消融研究[36,38]。我们表明,所提出的方法在精确度上优于最先进的方法,同时实现更好的运行时性能。这项工作的贡献如下。首先,我们提出一种适用于在线任务的快速精确的视频对象分割方法。其次,我们开发了基于部分的跟踪和基于相似性的聚合方法,可以有效利用第一帧中包含的信息,而不会增加太多的计算负担。第三,我们设计了一个ROI SegNet,它将部件的边界框作为输入,并输出每个部分的分割掩模。
图1. DAVIS 2016数据集上的精度与运行时间比较。我们评估最先进的方法,并证明我们的方法速度更快,同时保持高精度。 请注意,运行时包含所有帧的平均预处理步骤以进行公平比较。
图2.在线视频对象分割的建议框架。我们的算法首先在第一帧中生成部分目标对象。 然后在下一帧中跟踪这些部分以获得跟踪框。 利用我们的ROI分割网络和基于相似性的评分功能,可以在整个视频中生成最终分割输出。
Related Work
无监督的视频对象分割。无监督的视频对象分割方法旨在自动发现和分离突出的对象与背景。这些方法基于概率模型[23,31],动作[18,17,35]和对象提议[24,46]。现有的方法通常依靠视觉线索(如超像素,显着图或光流)来获得初始对象区域,并且需要以批处理模式处理整个视频以改进对象分割。另外,在每个帧中生成和处理数千个候选区域通常是耗时的。最近,基于CNN的方法[14,40,41]利用丰富的学习层次特征(如ImageNet预训练)和大型增强数据来实现最先进的分割结果。但是,由于不同实例和动态背景之间的运动混淆,这些无监督方法无法分割特定对象。
半监督视频对象分割。半监督方法的目标是用一个初始掩模分割一个特定的对象。已经提出了许多基于跟踪[10],目标提议[37],图形模型[32]和光流[42]的算法。与无监督方法类似,基于CNN的方法[4,6,20]已经实现了视频对象分割的显着改进。然而,这些方法通常很大程度上依赖于通过第一帧[4,20],数据增强[19],在线模型适应[44]和光流联合训练[6]的微调模型。这些步骤在计算上是昂贵的(例如,对于每个视频中的第一帧进行微调需要花费超过10分钟)并且不适合于在线视觉应用。
为了缓解计算负载的问题,通过在第一帧中传播对象掩码通过整个视频来开发一些方法[15,16]。不利用第一帧中的许多信息,这些方法在传播很长一段时间后会受到错误积累的影响,因此不能像其他方法那样执行。相比之下,所提出的算法结合了基于部分的跟踪,并且通过基于相似性的部分聚合策略始终关注第一帧。
对象跟踪。跟踪已广泛用于视频中的对象本地化,作为执行对象分割的附加提示[43]。常规方法[3,13]采用基于相关滤波器的跟踪器来解释外观变化。最近,基于深度神经网络和分类器开发了许多方法。 CF2方法[30]基于CNN特征自适应学习相关滤波器,从而提高处理具有挑战性因素的能力,如变形和遮挡。另外,SINT方案[39]利用连体网络学习提案和目标对象的初始观察之间的特征相似性。 SiaFC算法[2]开发了一个具有全卷积层的端到端连体跟踪网络,它允许跟踪器在一次正向通道中计算所有提议的相似性分数。在这项工作中,我们采用连体网络跟踪对象部分,其中每个部分都具有本地代表性,并且通过视频承受较少的变形。
Proposed Algorithm
在本节中,我们将描述所提出的方法的每个组成部分。 首先,我们介绍基于零件的跟踪器,其目标是通过整个视频来定位对象部分。 其次,我们构建ROI SegNet,这是一个通用且强大的网络,用于预测对象部分的分割结果。第三,通过计算特征空间中的相似度得分,引入我们的部分聚合方法来生成最终的分割结果。
Part-based Tracking
由于诸如对象变形,快速移动,遮挡和背景噪声等具有挑战性的因素,对象跟踪是一项艰巨的任务。为了解决这些问题,基于零件的方法[27]已经开发出来,以追踪局部区域,而不是整个物体的外观变化较大。由于我们的目标是将下一帧中的大部分对象区域本地化以进一步分割,因此利用基于部件的方法可以满足我们的需求,并且可以有效保持较高的召回率。
零件生成。为了追踪零件,首要的问题是如何生成这些零件。传统的对象部分是通过可区分性和一致性从大量的类内数据中发现的。然而,这种假设不适用于在线视频分割,因为在目标视频的第一帧中仅提供一个对象遮罩。为了解决这个问题,我们提出了一种简单而有效的方法来生成由对象掩码引导的代表性部分。首先,我们随机生成具有各种大小和位置的部分提案,并将对象蒙版的重叠比例较低的部分移除。我们计算提案与对象之间的交叉交叉(IoU)分数,并保留分数大于阈值(即本文中为0.3)的分数。为了确保每个部分都包含来自对象的大部分像素,我们进一步测量得分:,其中bbox是提议的边界框,gtbox是第一帧中的已知对象框。 Sp> 0.7的部分提议被用作非最大抑制(NMS)步骤的候选。根据提议的选择过程,根据对象大小,我们将数千个提案减少到只有50〜300个代表性部分。请注意,我们还将每个部件的边界框转换为在物体遮罩内紧密,从而减少背景噪声,从而实现更有效的跟踪和分割。图3显示了第一帧中生成的部分(具有高分数)的一些示例结果。
零件追踪。给定框架It中的一组部分Pt = {Pt1,Pt2,...,Pti},我们的目标是输出一个评分图St,它测量部分Pti出现在下一帧It + 1中的位置可能性:St = T (Pti,It+1),
其中T是用于计算部分Pti和图像It + 1之间的相似性分数的函数。 我们使用SiaFC方法[2]作为我们的基线跟踪器T来计算得分图St.由于其完全卷积体系结构,我们计算了一次正向传递中多个部分的得分分布图。 一旦获得分数图,我们选择响应最大的边界框作为跟踪结果。一些跟踪结果如图3所示。
图3.部件跟踪的示例结果我们展示一些高分数的部分及其跟踪结果。 绿色和黄色框分别是应用对象跟踪器[2]和我们的方法通过聚合部分的结果。这表明我们的结果(黄色框)对于物体变形和遮挡是稳健的,这是由于跟踪部件的稳定性。
图4.提议的ROI SegNet的插图。 给定一个图像及其部分,我们调整并调整每个部分作为网络的输入。 我们使用包含5个卷积模块的ResNet-101架构。 我们对最后三个模块的特征映射进行上取样和连接。另外的卷积层被用于部分的二进制预测
ROI SegNet
基于对象部分的跟踪结果,下一个任务是在边界框内分割部分对象。 最近的实例级分割方法[11,7]已经通过对特定类别的网络进行训练并输出它们的分割来展示了最新的结果。 我们的零件分割问题与实例级分割任务类似,但是对于部分对象。此外,培训这样的网络需要针对不同部分的对齐步骤,因为对于不同的实例或对象类别,它们的大小,形状和外观可能会有很大差异。 因此,我们通过裁剪来自部件的图像补丁作为网络输入来利用ROI数据层,其中这些补丁通过调整大小来对齐。 与语义分割类似,我们的目标是最小化二元(前景/背景)任务的加权交叉熵损失:
其中θ表示CNN参数,yij表示在像素(i,j)处输入部分P的网络预测,w是用于平衡权重的前景 -背景像素 - 数量比[45]。
网络架构。我们利用ResNet-101架构[12]作为分割的基础网络并将其转换为完全卷积层[29]。为了增强特征表示,我们从最后三个卷积模块上采样特征映射并将它们连接在一起。串联的特征之后是二进制预测的卷积层。图4显示了我们的ROI SegNet的架构。
网络培训。为了训练所提出的网络,我们首先通过随机缩放和仿射变换(即,翻转,±10%移动,±10%缩放,±30°旋转)来从DAVIS数据集的训练组[36]中增加图像。然后,针对每个实例提取零件,方法与基于零件的跟踪中引入的方法相同。我们使用随机梯度下降(SGD)优化器,贴片尺寸为80×80,批量为100。初始学习率从10-6开始,每50,000次迭代减少一半。我们训练网络200,000次迭代。
Similarity-based Part Aggregation
在从部分获得所有分割结果之后,生成最终分割的一种简单方法是从每个部分计算平均分数图。但是,部件可能被追踪到物体或包含背景噪音,导致部件段不准确。 为避免添加这些误报,我们通过回顾初始对象掩码来开发评分函数。也就是说,我们试图了解当前部分是否与第一帧中的任何部分相似。 尽管对象可能与第一帧看起来完全不同,但我们发现局部部分实际上对于这种外观变化更加稳健。
具体来说,我们首先计算t帧中Pt中每个部分与特征空间中的初始部分P0之间的相似度分数。 然后我们通过以下方式选择当前部分Ptm的相似度最高的部分:
其中f是代表每个部分的特征向量,从我们的ROI SegNet中的最后一个图层中提取,并在零件蒙版上进行平均汇集。 总的来说,我们的评分功能由三部分组成:
其中是基于等式(3)选择的一组初始部分,并且·是元素方式乘法运算。 第一个函数Save是当前帧t中部分片段的简单平均分数:
其中Pt是第t帧的部分集合,Si是第i部分的分割得分。其次,Ssim是基于(3)的特征空间中当前和初始部分之间的相似度得分。由于选定的初始零件段可能质量较差,因此我们通过转发至ROI SegNet并将其分段重叠比率作为置信度评分来添加Scon,以添加Scon:
其中J是IoU度量,G是ROI SegNet,gt是第一帧中的对象掩码。 在不使用昂贵的模型微调步骤的情况下,通过初始对象蒙版和零件的引导,我们的零件聚合方法可以有效地消除误报。图5显示了具有不同评分函数的得分图的一些示例。
图5.零件聚合结果。我们通过Save和Sseg的功能来比较分数地图。 在不计算与第一帧相似度的情况下,Save的结果包含噪点,而我们的聚合算法更精确地执行分割。
图6. DAVIS 2016数据集上跟踪器的IoU-Recall曲线。 虚线(-agg)表示利用建议的基于部分的跟踪的结果。
Experimental Results
Dataset and Evaluation Metrics
我们在DAVIS基准数据集上进行实验[38,36],其中包含具有高密度像素级对象分段注释的高质量视频。 DAVIS 2016数据集由50个序列组成(30个用于训练,20个用于验证),带有3,455个带注释的实际移动物体帧。 DAVIS 2016数据集中的每个视频都包含一个带注释的单个前景对象,因此可以评估半监督和非监督方法。 DAVIS 2017数据集包含150个包含10,459个注释帧和376个对象实例的视频。这是一个具有挑战性的数据集,因为每个视频中有多个实例,对象可能会彼此遮挡。在这种情况下,非监督方法很难分离不同的实例。对于性能评估,我们使用基准设置中的平均区域相似度(J平均值),轮廓精度(F均值)和时间稳定度(T平均值)[38,36]。源代码和模型可在https://github.com/ JingchunCheng / FAVOS获取。补充材料中提供了更多结果和分析。
Tracker Evaluation
我们基于部分的跟踪器专注于跟踪本地区域,不能直接输出下一帧中的对象位置。但是,我们可以基于聚合零件段粗略找到对象中心。受跟踪检测算法的启发[1],我们利用检测提议[28]作为对象边界框的候选,并选择离对象中心最近的一个作为跟踪结果。然后,我们通过与基线SiaFC方法[2]和其他跟踪算法(包括CF2[13],ECO [8]和MDNet [33])进行比较,验证DAVIS 2016数据集上的基于部件的跟踪器。实验结果如图3和图6所示,其中我们显示我们的基于部件的追踪器始终保持更好的IoU回忆曲线来定位对象。
尽管我们的最终目标是视频对象分割,但这一评估对于理解DAVIS数据集的挑战很有用。一个有趣的事实是,如果有一个好的跟踪器,它应该能够帮助分割任务。因此,要求高IoU下的高召回率,因为一旦部分对象丢失,就不可能恢复相应的段。如图6所示,大多数追踪器在0.5 IoU下的召回率达到60%左右,而我们的追踪率为80%,这使得我们可以使用我们的追踪器改善分割结果。我们将通过在消融研究部分中集成该跟踪器来展示我们的结果。
Ablation Study onSegmentation
我们在DAVIS 2016验证集中提供表1中的消融研究,以评估每个组件在建议的视频对象分割框架中的有效性。由于速度和准确性之间的平衡,我们从无监督版本的SFL [6]开始作为我们的基准。为了证明使用部分的有用性,我们首先通过结合基线结果和来自[2]的得分图通过跟踪整个对象来进行实验。具体而言,我们通过ROI SegNet对来自[6]的前景概率和来自[2]的分割图进行平均。然而,我们发现跟踪精度非常不稳定,通常会丢失物体,甚至导致比基线分割更差的性能(J均值下降1.1%)。它表明,结合跟踪和分割并不是一项微不足道的任务,而且我们使用基于零件的模型来实现更好的组合。采用基于部件的跟踪器和ROI SegNet获取零件段后,我们比较有零件聚合或无零件聚合的结果。通过方程(4)中的函数Sseg进行部分聚合的方法比仅计算分数函数Save更好(J均值提高4%)。它表明,考虑到初始对象掩码,可以大大减少虚假部分分段,因为它们与第一帧中的任何对象部分都不相似。此外,我们利用我们的跟踪器结合4.2节中提到的检测建议,并利用它来进一步改进我们的结果,在表1中表示为“+跟踪器”。为了进一步提高边界精度,我们添加了一个改进步骤,使用密集的CRF [22]。在图1中,我们表示使用Sseg作为Ourspart的结果,以及与我们的跟踪器和CRF一起作为Ours-ref进行细化的结果。
图7.在所提出的方法中使用不同组件的示例结果。我们通过零件聚合,CRF细化和对象跟踪器显示了基线的逐渐改善。
Segmentation Results
DAVIS 2016.我们通过与最先进的算法(包括半监督和无监督设置)进行比较来评估我们在DAVIS 2016 [36]的验证集上提出的方法。 在表2中,我们用不同的设置显示结果,包括初始对象掩码,未来帧和预处理步骤的需要。基于这些要求及其运行速度,我们将分析在线应用程序的功能。
Concluding Remarks
在本文中,我们提出了一种适用于在线应用的快速精确的视频对象分割方法。与主要依赖在第一帧中预处理对象掩码的现有算法不同,我们的方法通过基于部件的跟踪器和有效部分聚合策略来利用初始掩码。基于零件的跟踪器可以为物体周围的局部区域提供良好的定位,确保物体的大部分被保留用于进一步的分割目的。然后,我们设计一个ROI分割网络,以准确输出部分对象分割。最后,基于相似性的评分函数被开发来聚集部分并产生最终结果。我们的算法利用基于CNN的框架的强度进行跟踪和分割,以实现快速的运行速度,同时密切监视第一帧中包含的信息以获得最佳性能。所提出的算法可以应用于需要快速且准确的在线视频对象分割的其他视频分析任务。