SegFlow_Joint Learning for Video Object Segmentation and Optical Flow 论文翻译

Abstract

本文提出了一种端到端可训练网络,用于在视频中同时预测像素级目标分割和光流。本文提出的SegFlow有两个分支,在一个统一的框架下,对目标分割和光流的有用信息进行双向传播。分割分支是建立在完全卷积网络上的,在图像分割任务中被证明是有效的,并且光流分支利用了流网模型。统一的框架通过迭代的方式进行训练,以学习通用的概念,并对特定对象进行在线微调。对视频对象分割和光流数据集进行了大量的实验,证明引入光流可以提高分割的性能,反之亦然。

图1所示。本文阐述了该模型的主要思想。我们的模型比不使用光流(ours - flo)的模型产生更好的分割结果,在该模型中,对象内的流动是平滑和完整的,提供了一个改进分割输出的指导。

1.  Introduction

近年来,视频分析因众多的视觉应用而备受关注,比如自动驾驶[15,9,33]、视频监控[40、10、20]和虚拟现实[1]。为了理解视觉任务的视频内容,必须了解对象状态(例如,位置和分割)和运动信息(例如,光流)。在本文中,我们将同时解决这些问题。,视频对象分割和光流估计,这两项任务是相互关联的[41,35]。图1说明了本文的主要思想。

对于视频对象分割[25],它假设对象掩码在第一帧中已知,目标是在整个视频中指定像素级的前景/背景标签。为了保持时间连接的对象分割,通常使用光流来提高平滑度[28]。然而,流量估计本身是一个具有挑战性的问题,而且往往是不准确的,因此所提供的信息并不总是有助于分割。例如,当一个对象移动的速度快时,光流方法[2,5,37]在捕获运动时并没有效果,因此在对象内产生不完全的流(如图4所示)。为了克服这个问题,提出了客体性信息(即:,分割)可以指导算法确定流应该在哪里平滑(在对象内部)。已经开发了一些算法来利用上面讨论的对象的信息。在[41]中,提出了一种同时执行对象分割和流估计的方法,然后迭代地更新两个结果。但是,整个过程都是在线优化的,而且非常耗时,这就限制了对其他任务的适用性。

基于以上的观察,我们提出了一种基于学习的方法来共同预测视频中的对象分割和光流,从而在测试过程中进行有效的推理。我们设计了一个统一的、端到端的可训练的卷积神经网络(CNN),我们称之为SegFlow,它包含一个用于对象分割的分支,另一个用于光流。对于每个分支,我们学习每个任务的特征表示,其中分割分支关注对象的目的,而光流则利用运动信息。为了将两个分支连接起来互相帮助,我们将学习的特性表示双向传播。因此,在反向传播过程中,一个分支的这些特性可以帮助其他分支获得有用的梯度信息。

所提议的网络的一个贡献是双向架构,它使两个分支之间的通信成为可能,只要分支的两个目标是紧密相关的,并且可以联合优化。为了训练这个联合网络,一个具有两个任务的ground真相的大数据集(即:在本文中,我们需要的是前景分割和光流。但是,这样的数据集可能不存在或者难以构造。为了放松这样的约束,我们开发了一个迭代的训练策略,每次只需要一个基本的事实,这样目标函数仍然可以被优化并收敛到一个解决方案,这两个任务都能得到合理的结果。

为了对我们的网络进行评估,我们对视频对象分割和光流数据集进行了大量的实验。我们比较了DAVIS分割基准[29]的结果,或者不提供运动信息,并对Sintel[6]、飞椅[12]和场景流[26]数据集的光流性能进行了评价。此外,还对网络收敛问题进行了分析,以证明我们的训练策略。我们证明了双向网络通过特征传播对视频对象分割和光流任务在视觉质量和准确性方面都有良好的效果。

这项工作的贡献概括如下:

  • •我们提出了一种端到端可训练框架,用于在视频中同时预测像素级前景对象分割和光流。
  • •我们演示了光流和视频对象分割任务是互补的,并且可以通过在双向框架内的特性传播来互相帮助。
  • •我们开发了一种方法,在不需要数据集的情况下,对所提出的联合模型进行培训,该数据集包含了分割和光流的基本事实。

2.  Related Work

无监督分割视频对象。无监督方法的目的是在不了解对象的情况下对前景对象进行分段(例如,初始对象掩码)。通过[31、11、42]、光流[4、28]或超像素[17、46、13]等方法,提出了若干方法来生成对象分割。为了包含更高级的信息,例如objecUNK,对象建议被用来跟踪对象段并通过视频生成一致的区域[22,23]。然而,这些方法通常需要大量的计算负载来生成区域建议,并将数千个段关联起来,使得这些方法只适用于离线应用程序。

Semi-supervised视频对象分割。半监督方法[14,47,27]假设在第一帧中有一个对象掩码,并通过视频跟踪该对象掩码。为了实现这一目标,现有的方法侧重于传播超像素[19],构建图形模型[25,41]或利用对象建议[30]。最近,CNN的方法[21,7]是通过将离线和在线训练过程结合在静态图像上而发展起来的。虽然已经取得了显著的成绩,但在时间域上的分割结果并不保证是平滑的。在本文中,我们使用CNNs来联合估计光流,并提供学习的运动表示,以产生一致的时间分割。

光流。将光流应用到视频对象分割中以保持运动一致性是很常见的。一种方法是用粗到细的方案来解决一个变分的能量最小化问题[2,5,37]。为了更好地确定图像之间的对应关系,开发了基于匹配的优化算法[43,32],这些方法通常需要较长的处理时间。另一方面,基于学习的方法更有效,可以通过高斯混合模型[34]、主成分[44]或卷积网络[12,26]来实现。考虑到效率和准确性,我们将FlowNet[12]作为我们工作的基线,同时我们提出通过将信息从分割网络中作为指导来提高光流的结果,这并不是由上述方法所研究的。

融合方法。分层模型研究了视频分割与流动估计的联合问题[8,38]。然而,这种方法在推理过程中依赖于复杂的优化,从而限制了它们的应用。近年来,在考虑光流的同时,对视频对象分割的方向进行了大量的研究。在[21]中,开发了一个利用预计算的光流作为额外输入来改进分割结果的网络。不同于这项工作,我们的模型只需要图像作为输入,我们的目标是联合学习有用的运动表示来帮助分割。

最接近我们工作的是ObjectFlow算法(OFL)[41],该算法以迭代优化分割和光流能量函数为目标函数。然而,这种方法在网上进行了优化,因此计算起来非常昂贵。此外,还需要在更新光流估计之前进行分割结果。与此相反,我们提出了一种端到端可训练框架,用于同时预测像素级前景对象分割和光流。

3.  SegFlow

我们的目标是在视频中分割对象,以及估计帧之间的光流。为此,我们构建了一个具有两个分支的统一模型,一个基于全卷积网络的分割分支,以及基于流网的光流分支[12]。

由于缺乏具有分割和光流标注的数据集,我们从不同的数据集上训练的遗留模型初始化两个分支的权值,并通过迭代离线训练和在线finetuning优化分割和光流数据集的SegFlow。接下来,我们首先介绍了每个分割和光流分支的基线模型,并解释了我们如何使用提议的双向结构构建联合模型。我们提出的联合模型的总体架构如图2所示。

图2。拟议中的SegFlow架构。我们的模型由两个分支组成,分别是基于fully卷积resnet - 101的分割网络和使用FlowNetS[12]结构的流分支。为了在两个分支之间构建通信,我们设计了一个在上采样阶段连接两个网络的体系结构。具体地说,特征映射通过不同尺度的连接在不同的尺度上通过适当的操作来传播(即:,上采样或下采样,以匹配不同特征的大小。然后采用迭代训练方案对分割和光流任务的损失函数进行联合优化。

3.1.    Segmentation Branch

灵感来自fully-convolutional网络图像分割的效果[24]和深层结构图像分类(18岁,36),我们构造分割分支基于resnet - 101架构[18],但修改二进制(前景和背景)分割预测如下:1)全层分类删除,和2)特性的卷积模块在不同的水平在upsampling融合在一起来获得更多的细节。

resnet - 101有五个卷积模块,每个模块由几个卷积层组成,Relu,跳过连接,并在模块后进行池操作。具体地说,我们在汇集操作之后,从3到5个卷积模块绘制特征图,分别在输入图像大小的1 / 8,1 / 16,1 / 32的大小。然后,这些分数映射被向上采样并汇总,用于预测最终输出(图2的上分支)。

在优化过程中,使用了一个与softmax函数E有关的像素化的交叉熵损失。为了克服前景和背景区域之间不平衡的像素个数,我们使用[45]中采用的加权版本,其损失函数定义为:

其中,j表示前景fg和背景bg的像素位置,yij表示帧t中输入图像X的每个像素的二进制预测,w被计算为前底背景像素比。

3.2.    Optical Flow Branch

考虑到效率和准确性,我们选择流网[12]作为流量估算的基线。光流分支使用一个编码器-解码器架构,附加的跳转链接用于功能融合(在编码器和解码器之间的特征连接)。此外,缩小操作用于编码器的每一个步骤,每一步的解码器完样本的输出(请参见图2中的低分支)。基于这样的结构,我们发现它与细分部门共享类似的属性及其特征表示相似的尺度,使合理的连接分割模型,反之亦然,我们将在下一节介绍。

为了优化网络,光流分支采用[12]中采用的端点误差(EPE)损失,定义如下:

uij,vij表示运动输入图像的像素(i,j)从Xt到Xt+1,和δuijδvij网络预测。我们在坐标系t和t + 1中使用图像,因为计算的光流应该与帧t的分割输出(例如,对象边界)对齐,这样它们的信息就可以自然地结合起来。

3.3.    Bi-directional Model

为了实现上述两个分支之间的通信,我们提出了一个统一的结构,即SegFlow,共同预测分割和光流输出。因此,新的优化目标将成为解决以下的组合(1)和(2)的损失函数:


如图2所示,我们的体系结构将两个分支之间的特征映射在不同的规模上传播,用于最终的预测。例如,分割分支中每个卷积模块的特征首先是向上缩放(以匹配光流特征的大小),然后连接到光流分支。当从分割到流的传播特性时采用类似的操作。注意,在融合了网络预测的特性之后,卷积层也被利用(在通道数等于输出通道数)之后,进一步从分割和光流分支中对信息进行正则化。

不同于直接使用最终输出来帮助两个任务[41],我们在这里利用特征空间中的信息。其中一个原因是我们的网络可以在不同的尺度上学习有用的特征表示(例如,物体和运动)。此外,随着模型容量的增加,但不增加对网络的训练负担,联合模型比单分支学习更好的表示。例如,单个流网络没有能力学习类似于分割分支的表示,而我们的模型提供了两个共享它们表示的任务的机会。请注意,我们的双向模型并不局限于当前的体系结构或任务,而它应该是一个可以应用于相关任务的通用框架。

4.  Network Implementation and Training

在这一节中,我们将介绍如何训练所提议的网络的更多细节。为了成功地训练联合模型,需要一个具有分割和光流基本真理的大规模数据集。但是,构造这样的数据集是不可行的。相反,我们开发的培训过程只需要一个gt,它需要迭代地更新两个分支并逐步优化目标函数。此外,还提出了一种数据增强策略,以增强数据分布的多样性,满足模型的需求。

图3。在离线训练中,(a)显示了对象分割的训练精度,同时(b)给出了光流的损失,关于训练迭代次数(这两个结果都是在训练子集上得到的)。经过三轮后,可观察到在分割和光流两种情况下的收敛性。

4.1.    Network Optimization

首先,我们通过迭代更新两个分支来学习一个泛型模型,在这个阶段,分割网络的目标是分割移动的对象。为了集中于某个对象(在第一个帧中使用掩码),然后我们将对DAVIS数据集的每个序列的分割分支的模型进行finetune进行在线处理。

迭代离线训练。为了开始训练联合模型,我们分别使用resnet - 101[18]和FlowNetS[12]对两个分支进行了初始化。在优化分割分支时,我们将光流分支的权值冻结,并在DAVIS训练集上训练网络。我们使用SGD优化器与批量1进行训练,从学习速率1e - 8开始,每10000次迭代减少一半。

对于训练光流分支,同样的,我们修正了分割分支,只使用目标光流数据集更新流量网络中的权重(第5.1节描述)。两个不同损失之间的平衡重量,我们使用一个较小的学习速率1 e-9 EPE(2)损失,解决λ在3.3节合并后的损失。注意,要决定何时将训练过程切换到另一个分支,当验证集上的错误达到收敛时,我们会随机分割一个验证集并停止训练当前分支。此外,该验证集还用于选择关于迭代次数的最佳模型[12]。

对于这个迭代学习过程,每次网络都集中在一个分支上的一个任务,同时通过特征传播从另一个分支获得有用的表示。在切换到另一个分支后,在当前优化的分支中使用了从前一个阶段学到的更好的特性。我们展示了一个例子,通过迭代训练两个分支(3个回合),网络如何逐步走向收敛。另外,图4显示了迭代更新流估计的可视化改进。

在线培训细分。脱机训练的模特可以将移动的物体从视频中分离出来。为了使模型适应于一个特定的在线处理对象,我们在每个单独的序列的第一帧中使用对象掩码完成了分割网络的finetune。在这里,我们在半监督设置中在线调用这个过程,因为模型需要在第一个框架中更新,然后在序列上进行测试。

然后,每个掩码被扩展到两个分支的多个训练样本,以增加数据的多样性(第4.2节描述)。在数据增强后,我们使用线下阶段引入的相同的训练策略,固定学习率为1e - 10。在这个阶段,我们注意到流分支仍然提供了对分割的运动表示,但是没有更新参数。

图4。反复改进对DAVIS的光流结果。给出了一个输入图像,我们从初始模型、流场[12]和优化第一个和第二轮的SegFlow过程中给出了流量估计。在优化过程中,结果逐渐得到改善。

4.2.    Data Augmentation

分割我们使用DAVIS基准的预定义训练集[29]来训练分割分支。由于这个训练集相对较小,所以我们采用仿射变换(即:,移动,旋转,翻转)为每个帧生成一个数千个样本。由于流分支需要两个相邻的帧作为输入,所以每个仿射变换都是通过整个序列进行的,以保持训练期间的帧间(时间)一致性(见图5)。

光流。在脱机训练步骤中生成的流数据是作为分割的方法生成的。然而,当使用测试集视频的第一帧训练在线模型时,我们无法访问它的下一个框架。为了解决这个问题,我们提出了一种光流数据增强策略。首先,我们用变换后的方法来增加第一个帧。然后,基于每个图像和它的对象掩模,我们模拟一个物体运动,通过稍微变形的前景对象区域来生成一个合成的“下一帧”。由于我们只关注这个在线阶段的特定对象,因此对象移动造成的缺失区域可以被视为遮挡,并被留下为空(黑色)区域。我们发现这一合成策略在不损害网络属性的情况下有效地进行了培训(参见图5)。

图5。为数据增加的例子。第一行显示了通过视频进行图像分割,以保持时间的一致性。第二行给出了一个增广流的例子,在这个例子中,该变换被应用到目标掩模上,以模拟“下一帧”(在红色矩形中突出显示)的轻微运动,在这里,光流显示相应的转换。

5.  Experimental Results

我们将主要的实验结果与最先进的视频对象分割和光流方法进行比较。更多的结果和视频可以在补充材料中找到。代码和模型可以在https://github.com/ JingchunCheng/ SegFlow中获得。

5.1.    Dataset and Evaluation Metrics

DAVIS基准[29]是最近发布的高质量视频对象分割数据集,它包含50个序列和3455个真实的移动对象的带注释的帧。戴维斯的视频也根据各种属性分类,如背景杂波(BC),变形(DEF),运动模糊(MB),快速运动(FM)、低分辨率(LR)闭塞(OCC)看不见了的时候(OV)scale-variation(SV),外观变化(AC),边缘模糊(EA),相机抖动(CS),异构对象(HO)、有趣的对象(IO),动态背景(DB),形状复杂(SC),如图6所示。我们使用预先定义的训练集来优化我们的框架和它的验证集来评估分割质量。

对于光流,我们首先使用MPISintel数据集[6],在合成的场景中包含1041对图像,包含无运动模糊和大气效应的图像,以及具有复杂环境变量的图像的最终版本。第二,我们使用KITTI数据集[16],它有389对真实的驱动场景的流图像。最后,我们使用了场景流数据集[26],这是最近为流量估计而建立的大规模合成数据集。考虑到现实主义,我们使用了两个子集,Monkaa和Driving,其中Monkaa有一个24个视频序列的集合,有超过34000个用于光流的注解,而Driving有8个视频,大约有17000个注释。和Sintel一样,Driving和Monkaa都提供了两个版本:清晰的图像和更现实的图像。

由于在场景流数据集中没有指定精确的训练和测试集,所以我们将自己的集合分割为比较(训练和验证集不相交)。Monkaa,我们使用三个视频(×2,吃花风暴×2,lonetree×2)作为验证集,并使用剩下的21个序列进行训练。对于驾驶,选择7个视频进行培训,使用15mm focallength属性,场景转发和快速测试。注意,Monkaa和Driving的每个视频都有两个左右的视图,分别在Monkaa上有63400个训练和5720个验证对,在驾驶上有32744个训练和2392个验证对。

为了对分割质量进行评价,我们采用了三种度量方法(DAVIS website[29]的评价代码[0]):区域相似度J,轮廓精度F和时间稳定性t。

5.2.    Ablation Study on Segmentation

为了分析该框架中每一步的必要性和重要性,我们对DAVIS进行了广泛的消融研究,并总结了表1中的结果。我们通过将建议的SegFlow与没有在线训练(- ol)、迭代训练(-)、脱机训练(- of)和flowbranch(- flo)相比较来验证我们的方法。具体设置如下:

- ol:在第一个帧中只使用没有监督信息的离线训练,它被归类为无监督视频对象分割。

-it:只有火车模型一旦为每个细分和光学流分支。

-of:在第一帧的测试视频中直接对模型进行训练,并对其进行扩增。

- flo:只使用分割分支,而不使用流网络中的特性传播。

表1显示了离线训练的影响

在产生更好的结果的过程中扮演了重要的角色,将Jmean提高了21%。它表明网络需要一个通用的

表1。对DAVIS验证集的烧蚀研究。我们将提出的不同组件的SegFlow模型进行比较,即:在线培训(ol)、线下培训()、迭代学习(it)、流数据增强(fda)、光流分支(flo)和分割数据增强(sda)。T意味着↓0.1940.276 0.302 0.279 0.225 0.250 0.354 0.335

模型在在线前发现移动对象。在线和迭代相结合的策略也提高了总体的j平均值(7.9%)。与不使用流分支的模型相比,我们的联合模型不仅提高了Jmean的水平,而且在时间上也产生了平滑的结果,使得Tmean的显著改善增加了5.6%。

我们对表1中数据增强步骤的有效性进行了评估。如果没有对细分(- sda)和增强流数据(- fda)的数据增强,性能会在Jmean上降低。此外,Tmean在不增加流量数据(- fda)的情况下更糟,这表明了第4.2节所描述的合成数据的重要性。

5.3.    Segmentation Results

表2显示了DAVIS验证集的分割结果,我们通过考虑图像的预测和它的翻转来提高性能,并平均两个输出来获得最终结果,我们称之为Ours2。在不增加计算成本的情况下,我们进一步提高了Jmean的1.3%。我们将建议的SegFlow模型与最先进的方法进行比较,包括无监督算法(FST[28]、CVOS[39]、[22]、NLC[11])和半监督方法(OVOS[7]、MSK[21]、OFL[41]、BVS[25])。

在无监督的算法中,我们的SegFlow模型有或没有流分支,这两种方法对其他方法的性能都有显著提高(Jmean中有10%以上)。对于半监督的方法,我们的模型对OSVOS[7]和MSK[21]进行了竞争性的性能测试,而它们的方法需要额外的输入。,超像素在OSVOS和光流在MSK

6.  Concluding Remarks

本文提出了一种用于视频对象分割和光流估计联合优化的端到端可训练网络分段。我们证明,通过这种联合结构,可以通过双向特征传播来改善分割和光流。为了训练联合模型,我们通过开发迭代训练策略来放松一个大数据集的约束,它需要前景分割和光流的基本事实。我们通过广泛的消融研究验证了我们的联合训练方案的有效性,并表明我们的方法对视频对象分割和光流任务都有良好的表现。该模型可以很容易地适应其他体系结构,可以用于联合训练其他相关任务。


猜你喜欢

转载自blog.csdn.net/qq_16761599/article/details/80480898