【论文阅读】Contrastive Transformation for Self-supervised Correspondence Learning

本文提出了一个自监督学习方法,用于无标签视频中的视觉对应学习。方法通过同时考虑视频内的帧间关系和视频间的表示关联来估计可靠对应。通过构建帧对相似性和视频间亲和力,进行对比变换,保持细粒度对应并增强实例级特征。实验显示,该方法在VOT、VOS和关键点跟踪等任务上优于其他自监督方法,并且与全监督算法竞争。

Contrastive Transformation for Self-supervised Correspondence Learning 论文阅读

论文地址为:https://arxiv.org/abs/2012.05057

Abstract

In this paper, we focus on the self-supervised learning of visual correspondence using unlabeled videos in the wild.

本文中作者研究的是使用无标签的视频进行视觉对应性的自监督学习(在correspondence learning 框架内进行 contrast learning)

Our method simultaneously considers intra- and inter-video representation associations for reliable correspondence estimation. The intra-video learning transforms the image contents across frames within a single video via the frame pair-wise affinity. To obtain the discriminative representation for instance-level separation, we go beyond the intra-video analysis and construct the inter-video affinity to facilitate the contrastive transformation across different videos. By forcing the transformation consistency between intra- and inter-video levels, the fine-grained correspondence associations are well preserved and the instance-level feature discrimination is effectively reinforced.

作者提出在进行correspondence估计时可以同时考虑视频内和视频间的representation关联。大概方法是:在视频内,通过“帧对”间的相似性来进行同一视频中不同帧之间图像内容的变换;在视频间,构建视频间相似性来进行不同视频间的对比变换。然后通过强制视频内部和视频之间的转换一致性,可以很好地保留细粒度的correspondence关联,并有效地增强实例级特征识别。

Our simple framework outperforms the recent selfsupervised correspondence methods on a range of visual tasks including video object tracking (VOT), video object segmentation (VOS), pose keypoint tracking, etc. It is worth mentioning that our method also surpasses the fully-supervised affinity representation (e.g., ResNet) and performs competitively against the recent fully-supervised algorithms designed for the specific tasks (e.g., VOT and VOS)

作者的框架方法在包括VOT、VOS、关键姿态跟踪等任务的一系列视觉任务中,性能超过了最近的一些自监督correspondence方法。除此之外,该方法还超过了全监督的相似性representation,与最近的一些专门为特定任务设计的全监督算法相比也具有竞争力。

Method

方法概述


最初的思路是先在参考帧上随机取初始块,使用CNN backbone提取参考帧上初始块的特征在目标帧上进行跟踪得到目标块(块级跟踪),然后计算初始块与目标块之间的相似度矩阵。接着作者借用了一个预训练好的Encoder和Decoder(图中没有画出,使用时不更新参数),使用Encoder提取初始块和目标块之间的特征,使用上面计算出的相似度矩阵对初始块进行变换得到预测的目标块,然后与实际的目标块进行比较计算损失。但是作者认为只计算初始块与目标块之间的相似度矩阵鲁棒性不够,需要加一点难度。于是就不只计算同视频中的参考帧与目标帧的相似度矩阵了,还计算本视频中参考帧与同批次中其他视频的参考帧的相似度矩阵,最后将这些相似度矩阵拼接到一起对初始块进行变换,然后与目标块比较计算损失。

1. 计算相似度矩阵(affinity matrix)

使用下面这个公式计算目标帧和参考帧之间的相似度:

2. 生成对比对(contrast pair)

在参考帧中随机裁一个图像块,然后在目标帧中定位到最匹配的图像块:使用类似于上文中提到的计算相似度矩阵的方法,在参考帧的图像块和整个目标帧之间计算pathch-to-frame相似度(affinity),根据这个相似度在目标帧中找到与参考帧像素最相近的目标像素,然后平均这些像素坐标得到跟踪目标中心,并使用UVC论文中的方法估计目标的尺度,然后将这个目标块从目标帧中裁剪下来与参考帧中的块形成一个图像对,即对比对。

3. 视频内和视频间变换

3.1 视频内变换

根据上文中得到的对比对,使用公式(1)计算出他们的相似度矩阵,基于这个相似度矩阵很容易实现从参考块到目标块之间图像内容的转换。转换的计算方式如下:

L t = A r → t L r {{\rm{L}}_t} = {{\rm{A}}_{r \to t}}{{\rm{L}}_r} Lt=ArtLr

L r \rm{L}_r Lr表示的是参考帧上的标签,可以是semantic mask, pixel color, and pixel location。

3.2 视频间变换

作者认为只是视频内变换不足以学习到有判别力的特征,借助对比学习的思想,从同一批次(mini-batch)的其他视频中取出参考帧,和本视频的参考帧一起与目标帧计算相似度矩阵。与公式(1)相似,具体计算公式如下:

4. 损失函数设计

损失函数可以分为四个部分:1.视频内监督损失(Intra-video Self-supervision);2. 视频内-视频间一致性损失(Intra-inter Consistency);3. 稀疏约束损失(Sparsity Constraint);4. 其他的正则损失(Other Regularizations)。

4.1 视频内监督损失(Intra-video Self-supervision)

简单来说,就是在同一个视频中,由参考帧特征与相似度矩阵计算出的目标帧特征应该与实际从目标帧提取出的特征是相同的。因此可以得到:

l s e l f = ∥ I r → t − I t ∥ 1 {l_{self}} = {\left\| {{{\rm{I}}_{r \to t}} - {{\rm{I}}_t}} \right\|_1} lself=IrtIt1

其中 I r → t {{\rm{I}}_{r \to t}} Irt和表示 I t {{\rm{I}}_{t}} It分别表示转换得到的目标帧和实际的目标帧

4.2 视频内-视频间一致性损失(Intra-inter Consistency)

前面说到了两种参考帧转换到目标帧的方式:视频内变换和视频间变换。两种转换方式的最终目标都是目标帧,因此他们的结果应该是一致的,所以可以得到:

l i n t r a − i n t e r = ∥ I r → t − I r ∑ → t ∥ 1 {l_{{\mathop{\rm int}} ra - {\mathop{\rm int}} er}} = {\left\| {{{\rm{I}}_{r \to t}} - {{\rm{I}}_{{r^{\sum {} }} \to t}}} \right\|_1} lintrainter=IrtIrt1

4.3 稀疏约束损失(Sparsity Constraint)

在视频间变换中说到,“从同一批次(mini-batch)的其他视频中取出参考帧,和本视频的参考帧一起与目标帧计算相似度矩阵”。所以这里得到的相似度矩阵有从本视频中计算出的(记作 A r + → t {{\rm{A}}_{{r^ + } \to t}} Ar+t),也有从其他视频中计算出的(记作 A r − → t {{\rm{A}}_{{r^ - } \to t}} Art)。这里 A r − → t {{\rm{A}}_{{r^ - } \to t}} Art应该是稀疏的,所以可以得到:

l s p a r s e = ∥ A r − → t ∥ 1 {l_{sparse}} = {\left\| {{{\rm{A}}_{{r^ - } \to t}}} \right\|_1} lsparse=Art1

4.4 其他的正则损失(Other Regularizations)
  • A r → t − 1 = A t → r {{{\rm{A}}_{r \to t}^{-1}}={{\rm{A}}_{t \to r}}} Art1=Atr
  • 其他的正则项约束

这些都一起被记为 l o t h e r s l_{others} lothers

因此总的损失函数可以表示为

l f i n a l = l s e l f + l i n t r a − i n t e r + l s p a r s e + l o t h e r {l_{final}} = {l_{self}} + {l_{{\mathop{\rm int}} ra - {\mathop{\rm int}} er}} + {l_{sparse}} + {l_{other}} lfinal=lself+lintrainter+lsparse+lother

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值