VideoMatch: Matching based Video Object Segmentation

Abstract:

1.视频目标分割是一个很重要的挑战,对于各种各样的视频分析任务。最近视频目标分割任务基于深度网络取得了state-of-the-art的结果。

2.由于作为预测任务的表述,这些方法中的大多数都需要在测试期间进行微调,以使深层网记忆给定视频中感兴趣对象的外观。

3.为了解决这个问题,我们开发了一种新颖的基于匹配的视频对象分割算法。 与基于记忆的分类技术相比,所提出的方法学习将提取的特征与提供的模板进行匹配,而无需记忆对象的外观。 我们在具有挑战性的DAVIS-16,DAVIS-17,Youtube-Objects和JumpCut数据集上验证了该方法的有效性和鲁棒性。 大量结果表明,我们的方法无需进行微调即可达到可比的性能,并且在计算时间方面更为有利。

Introduction:

1. 视频分割在从对象识别,视频编辑到视频压缩的各种应用中起着至关重要的作用。 尽管在许多情况下,对象的描绘和跟踪对于人类来说似乎微不足道,但是由于遮挡,快速运动,运动模糊以及随时间的显着变化,视频对象分割对于算法仍然具有挑战性。

2.我们的方法主要是关注于半监督的任务,即知道视频的第一帧。

3.基于深度学习的方法都需要对视频的第一帧进行微调,这样花费了大量的时间

4.所以我们提出了一种基于匹配的方法,即当前帧的前景和背景与第一帧的前景和背景的特征是可以匹配的,为了保证我们的方法可以处理外观和几何的变化,我们使用深度网络自适应提取特征。我们的方法mIoU达到了81.03%【masktrack为80.3,但是是不是都是DAVIS-16?因为这篇的结果是在DAVIS16上】,同时大大减少了运行时间,每帧只需要0.32秒,而之前的masktrack则需要12秒每帧,可以说是大大减少了时间

Related work:

与我们的工作同时,提出了几种最近的方法(都是独立开发的),它们通过基于Part的VideoMatch来提高视频对象分割的速度:基于匹配的视频对象分割跟踪[9],逐像素度量学习[7]或网络调制[56,38]。我们请读者阅读这些作品,以获取更完整的图片。

semi-supervison:

在无监督的视频对象细分设置中,groundtruth和用户标注均不可用。因此,无监督设置需要算法自动发现视频中的显着对象。已经提出了不同的方法,例如运动分析[39],轨迹聚类[37]和基于显着性的时空传播[12、20]来识别前景对象。最近,已经讨论了基于深网的方法[47,48,22]。


object tracking:

半监督视频对象分割和对象跟踪[58、28]与我们的方法有关,因为它们都可以跟踪整个视频中的对象。但是,这两个任务的输出格式不同。视频对象分割的输出是像素级分mask,而对象跟踪的输出是界定对象位置和比例的边界框。根据跟踪文献,Bertinetto等人的工作。 [3]在精神上类似于我们提出的方法,因为它们通过匹配来制定跟踪。然而,由于输出的差异,Bertinetto等人。 [3]通过将整个补丁与给定模板进行卷积来计算相关性,然而我们提出了针对像素分割的软匹配【什么是软匹配?】。

matching:

在过去的几十年中,对图像匹配[33,18]进行了广泛的研究。随着深度学习的成功,研究重点从使用手工特征的匹配[35]转移到了深度特征[57]。通常计算提取的特征图之间的相关性,以找到对应关系[45],以估计光流场[10]和几何变换[46]。由于匹配的目的是找到点对点的对应关系,因此,如果将匹配算法直接应用于分割,则结果将很嘈杂【为什么会很嘈杂】。为了处理嘈杂的预测,我们提出了一种软匹配机制,该机制可以估算不同段之间的相似性得分,如下所述。

Matching based Video Object Segmentation:

overview:

VideoMatch: Matching based Video Object Segmentation_第1张图片

一些预设变量:

假定一个视频有T帧,,第一帧的ground truth为,其中W,H分别代表图像的宽和高,为第一帧的Ground truth, N表示为第一帧里的目标数量,预测第一帧以后的帧的结构,我们表示为分别代表的是经过一个孪生网络后的第一帧的特在和第t帧的特征,h,w,c分别代表高,宽和通道数,代表了第t帧图像下采样过后的特征图上第i个像素点的c维特征,分别代表前景特征和背景特征,g()代表一系列属于前景的像素,计算公式如下【这里具体如何怎么计算的,还是不太明白?】

整体流程:

对于以前的一些工作,已经训练好的模型还要用视频的第一帧去微调网络,这个微调虽然可以提升网络结果但是它很耗费时间,
所以我们的工作不需要微调训练网络,如上图所示,而是首先通过孪生网络计算出第一帧和第t帧的特征,然后计算出第一帧的前景特征和背景特征​,然后将t帧的特征分别与​和​做软匹配,得到两个相似性矩阵,最后将两个矩阵分别上采样concat之后再加softmax,最后2个通道的概率图,哪个得分高属于哪一类。

Soft matching layer:

VideoMatch: Matching based Video Object Segmentation_第2张图片

​,计算​的相似性,i是代表上第i个像素位置的c维向量,j代表m上第j个像素位置的c维向量,通过​(余弦距离公式)来计算相似性,最后我们的相似性矩阵由如下公式获得,                                                                      

​,

相当于就是X上第i个像素位置(共有hxw个像素位置)的特征都与m上每个像素位置(共有hxw个特征)的特征进行计算,这时候对x特征每个像素位置上,都有1xhxw个相似度分数,取其中最高的K(这里K等于20)个相似度,然后平均得到上的一个像素位置的得分。

【为什么K取20?】直观地,我们使用前K个匹配项的平均相似度,因为我们假设一个像素要匹配区域中的多个像素,而不是一个像素(太吵杂)或所有像素(太严格) 通常,前景或背景可能会非常多样化。【不是很理解这句话?那你怎么知道匹配的多了就太严格】因为他希望x上的每个像素位置上的像素与一部分前景或者背景像素相关,而不是只和某一个前景或者背景像素相关,或者匹配所有的前景或者背景像素,太少,那么容易出错,很多像素可能都容易被分为前景或者背景,毕竟1对1的匹配,条件很松,如果这个像素是前景但是又跟背景里的一个像素很像,那么他就被分为背景了,如果是20个的话,出错的概率就小狠多,如果对于所有的都匹配的话可能就太严格了,那么很多像素容易不被分为前景或者背景,背景的像素肯定比前景多,如果像素是背景那么背景像素太多了,你去每个背景像素都相关一下的话,那么因为背景里那么多像素,不相关的多了之后,分数可能就下来了,那么此时就容易被分成前景。

异常值的移除和在线更新:

异常值的移除:

就是在前一帧(t-1)的mask周围画一个区域(根据阈值d),如果预测的当前帧(t)的像素值在该区域之外,则剔除。

在线更新:

1.将(t-1)帧的异常值,放入背景特征模板中,因为物体在视频中是运动的,物体移动,那么一些新的背景就会被露出来,这些新的背景在第一帧是没有的,所以可以加入一些新的背景特征进去,而这些前景的异常值就是新的背景(这些特在与第一帧匹配跟前景更像而跟背景不像,所以这些异常值才会被分为前景,所以我们可以认为它是新的背景)。

2.其中g(y̆t)是侵蚀的当前分段预测y t中的前景像素集合,c是恒定阈值。 直观地,我们添加了像素的特征,这些特征不仅被预测为具有高置信度(大于c 1)的前景,而且还远离边界。 另外,我们将b t中的那些像素排除在外,以避免前景和背景特征之间的冲突。【不理解这一段话】

视频中的多目标分割,

就是计算第一帧的每一个目标的特征,如果有k个目标,就计算k个前景特征,然后分别放入soft match 层去匹配,(此时不需要计算背景图了),最后得到k个相关性矩阵,然后concat,经过softmax,最大概率的就是属于哪个目标,最后,对于所有的k,其中的某个像素的概率值小于一定程度的时候,被分为背景。【对于所有的k......,这句话不是很理解,为什么要这么做?】

实验结果

实验细节,训练和评估

为了获得特征x,我们发现ResNet-101 [17]作为具有膨胀卷积[6]的backbone,表现良好。 特征图分辨率比输入图像小8倍。 在实验中,我们设置K = 20,d c = 100,c 1 = 0.95和c 2 = 0.4。 我们使用在Pascal VOC [11,16]上预训练的模型对参数进行初始化,以进行语义图像分割。 我们使用Adam优化器[27]端到端地训练了整个网络。 我们将初始学习率设置为10 -5,并随着时间逐渐降低。 权重衰减因子为0.0005。

为了训练我们的匹配网络,我们使用视频序列中任意两个随机选择的帧作为训练对。 重要的是,这两个帧不需要在时间上连续,这样可以提供大量的训练数据。 我们通过在0.5到1.5之间进行随机翻转,裁剪和缩放来扩充训练数据。 我们使用Tensorflow来实现该算法。 在Nvidia Titan X上进行1000次迭代需要大约4个小时的训练。在测试时,输入图像大小为480×854的正向传递大约需要0.17秒。

训练

训练:我们使用DAVIS-16训练集[40]中提供的30个视频序列对所提的网络进行了1000次迭代训练,并在DAVIS-16验证集中进行了评估。 同样,在DAVIS-17验证集中进行测试时,我们使用了DAVIS-17训练集中的60个序列[42]进行训练。 尽管该模型是在DAVIS上训练的,但我们发现它可以很好地推广到其他数据集。 因此,我们使用在DAVIS-17训练集上训练的模型对JumpCut [13]和YouTube-Objects [43]数据集进行评估。

评估

我们在DAVIS-16 [40]验证,DAVIS-17 [42]验证,JumpCut [13]和YouTube-Objects [43]数据集上验证了我们方法的有效性。 对于YouTube对象数据集,我们使用[21]提供的具ground truth 分割mask的子集,其中包含126个视频序列。 所有数据集都提供像素级别的ground truth分割。 更具体地说,在DAVIS-16,JumpCut和YouTube-Objects数据集中提供了二进制(背景)ground truth,而在DAVIS-17数据集中则提供了实例级别的分割的ground truth。 四个数据集中都提出了诸如遮挡,快速运动和外观变化等挑战。 因此,这四个数据集可作为评估不同视频对象分割技术的良好测试平台。

评价指标

mIoU

就是计算每一帧IoU的平均值

Contour accuracy(计算segmentation图和ground truth边界上两点之间的匹配)

VideoMatch: Matching based Video Object Segmentation_第3张图片

当β=1时,称为F1-score,这时,精确率和召回率都很重要,权重相同。当有些情况下,我们认为精确率更重要些,那就调整β的值小于1,如果我们认为召回率更重要些,那就调整β的值大于1

Error rate:

按照[13]中的评估协议,我们在JumpCut数据集上计算错误率。 我们在每个序列中选择关键帧i = {0,16,...,96},对于第i个关键帧,在给定了groundtruth分割掩码的情况下,我们计算了第i + d个帧的预测分割中的误差 第i帧。 直观地,我们测量方法相对于特定传递距离d的传递(或匹配)误差。 误差等于在第i + d帧的预测分割中,错误的正像素和错误的负像素(错误标记的像素)的数量除以所有正像素(所有前景像素)的数量。 我们在实验中使用d = 16并计算误差的平均值以获得误差率。【不太理解为什么要用第i帧的ground truth计算第i+d帧的错误率?】

定量的评估:

我们仔细评估了所提出的方法,并将所提出的方法与多种视频对象分割方法进行了比较,例如,MSK [25],SFL [8],OS-VOS [5],OnAVOS [53],PLM [59],MaskRNN [19],Lucid [26],SEA [1],HVS [15],JMP [13],FCP [41],BVS [34],OFL [50],CTN [24],VPN [23],SVC [54],JFS [36],LTV [37],HBT [14],AFS [51],SCF [21],RB [2]和DA [60]。 请注意,MSK,OS-VOS,SFL,OnAVOS,PLM,MaskRNN,Lucid在测试期间会进行微调。

我们在四个数据集上展示了定量结果:DAVIS-16 [40],YouTube对象[43],JumpCut [13]和DAVIS-17 [42]。 在Youtube-Objects和JumpCut数据集上,我们的方法在mIoU中的性能比最新方法高0.4%,在错误率方面的性能高0.71。 在DAVIS-16和DAVIS-17数据集上,我们的方法在不使用微调的情况下可以与最新技术相媲美。 定量结果总结在表1、2、3、4和图4中。最佳方法以粗体突出显示,次最佳方法下划线。 细节在下面描述。

VideoMatch: Matching based Video Object Segmentation_第4张图片

Evaluation on the DAVIS-16 dataset:在表1中,我们将我们的方法与不需要微调的深层网络基线进行了比较,例如VPN [23]和CTN [24]。 我们还与OSVOS [5],MSK [25],OnAVOS [53]和SFL [8]进行了比较,从而禁用了它们的微调步骤【为什么不比微调之后的?】。 我们使用上标“-”表示禁用了微调步骤的方法。 在表1中,我们报告了在DAVIS-16数据集上测试的每种方法的平均IoU和每帧的平均运行时间。 我们的方法实现了最佳的mIoU,在有效运行的情况下,比基准性能高出6%以上。 我们的方法没有消除异常值(在表1中用OURS-NU表示),运行速度快了2倍,同时实现了竞争优势。

在图4中,我们将不需要微调的方法与可能需要或不需要微调的基线进行了比较。 我们在图4(a)中报告mIoU与每帧的平均计算时间,在图4(b)中报告轮廓精度与每帧的运行时间。 请注意,对于那些需要微调的方法,每帧的平均运行时间还包括微调步骤。 由于我们的方法中使用的网络足够通用,可以学习如何进行匹配,因此我们可以在其他技术所需时间的一小部分时间内观察到竞争性能。 注意,时间轴标度是对数的。
 

VideoMatch: Matching based Video Object Segmentation_第5张图片

VideoMatch: Matching based Video Object Segmentation_第6张图片

 

对YouTube对象数据集的评估:我们在表2中提供了对YouTube对象数据集的评估结果[43,21]。尽管我们的网络没有经过微调,但我们的方法仍优于一些baseline,但其他baseline例如 OnAVOS和MSK和OSVOS都需要微调。 因此,我们的方法在计算时间和准确性上都更加有利。

对JumpCut数据集的评估:我们在表3中对Jump-Cut数据集[13]给出了评估结果。我们遵循[13]中的评估,并计算了不同方法的错误率。 转移距离d等于16。在本实验中,我们不采用第3.3节中所述的异常值去除来限制非连续帧之间的mask转换。 同样,我们的方法优于该数据集的baseline,其平均错误率比最佳竞争baseline,SVC低0.34 [54]。

在DAVIS-17数据集上的评估:我们显示了使用DAVIS-17验证集进行实例级视频对象分割的实验。 结果示于表4。与没有微调的方法,即OSVOS-,OnAVOS-,MaskRNN-和OFL相比,我们的方法表现良好。 我们进一步微调了我们的方法(称为OURS-FT),其性能在baseline之间具有竞争力,而计算时间则要快得多。 请注意,表4中的OnAVOS + [52]是OnAVOS,顶部具有向上采样层,并且具有模型集成。

消融实验:

我们研究了所提的软匹配层中K的影响:其中我们计算了前K个匹配的平均相似度得分。 我们在图5(a)中以不同的K设置显示了DAVIS-16的性能。 我们将K设置为1到100之间。当K等于1(“硬匹配”)时,性能为0.753;而当K大于1(“软匹配”)时,性能提高,直到K等于20。 K大于20,性能持续下降,计算所有匹配项之间的平均相似性得分的性能为0.636。 直观地,如果点的特征类似于该区域中合理数量的像素,则该点将很好地匹配该区域,这会激发所题的软匹配层。【这个K值相当于也是试出来的】

异常值移除和在线更新:在表5中,我们研究了异常值移除,在线背景特征更新和前景特征更新的影响。 我们发现,既没有异常消除也没有在线更新的方法一样具有竞争优势,在DAVIS-16上达到0.792。 消除异常值可以使性能提高0.013;如果我们合并了在线背景特征更新,则性能可以提高0.004,同时更新前景特征也可以进一步提高性能,在DAVIS-16数据集上,mIoU达到0.810。

VideoMatch: Matching based Video Object Segmentation_第7张图片

匹配前景和背景:如图1所示,我们不仅将输入图像与模板中的前景区域匹配,而且还与背景区域匹配,因此我们有两个软匹配层用于计算前景相似度和背景相似度。 我们发现同时拥有前景模型和背景模型对于获得良好性能至关重要。 具体而言,在DAVIS-16上,仅匹配前景(即仅具有一个软匹配层来计算前景相似度)的性能仅为0.527(mIoU),而同时计算出前景和背景相似度均达到0.792。

在线微调:我们想指出的是,在观察第一帧的ground truth mask时,可以在测试过程中对我们方法中的网络进行微调。我们在DAVIS-16上显示了微调时间和性能之间的权衡图5(b)。具体而言,我们显示了考虑到微调步骤的每帧平均运行时间,并与OSVOS,OSVOS-BS(不带后处理步骤的OSVOS),OnAVOS和OnAVOS-NA(不带测试时间增加的OnAVOS)进行比较。我们报告不带CRF的OnAVOS和OnAVOS-NA的结果作为后处理。请注意,时间轴缩放比例也是对数的。每条曲线的左下角表示未经微调的性能。显然,如果禁止微调,我们的方法的性能将超过其他baseline。经过微调后,我们的方法可以得到进一步改进,并且仍然可以高效运行,每帧花费2.5秒,而其他基准需要超过10秒才能达到其峰值性能。请注意,我们没有任何后处理步骤可以优化我们的方法中的细分蒙版,同时仍能达到竞争效果。【这个方法是如何实现微调的?】

VideoMatch: Matching based Video Object Segmentation_第8张图片

定性的结果:

在图6中,我们显示了在DAVIS-16(第1行),Youtube-Objects(第2行),JumpCut(第3行)和DAVIS-17数据集(第4行)上使用该方法的直观结果。 我们观察到我们的方法可以准确地分割前景物体,例如快速运动,背景混乱和外观变化。 我们还观察到该方法在DAVIS-17数据集上产生了准确的实例级别分割。我们在图7中显示了该方法的失败案例。该方法失败的可能原因包括微小的物体和不同实例的相似外观。

VideoMatch: Matching based Video Object Segmentation_第9张图片

总结:

我们提出了一种基于新型软匹配层的有效视频对象分割算法。 该方法泛化效果很好,不需要在线微调,同时保持了良好的准确性。 我们的方法在Youtube-Objects和JumpCut数据集上达到了最先进的水平,并且在DAVIS-16和DAVIS-17上具有竞争力,而其计算时间比当前的状态至少快了一个数量级。 致谢:本材料基于美国国家科学基金会在1718221、1755785,Samsung和3M授予的部分支持的工作。 感谢NVIDIA提供了用于这项研究的GPU。

你可能感兴趣的:(paper)