赞
踩
CVPR 2022 ,一篇关于立体匹配泛化性的文章,自己做的阅读笔记,如有不对,还请指正!
概要:
本文认为在匹配像素之间维持特征一致性对于立体匹配网络的泛化能力是重要的。因此文中提出了两种损失来保证特征一致性:
1.The stereo contrastive feature loss(立体对比特征损失SCF)
立体对比特征损失函数明确地约束匹配像素对学习到的特征之间的一致性,这些匹配像素对是同一三维点的观测结果;
2.A stereo selective whitening loss(立体选择白化损失SSW)
进一步引入立体选择白化损失是为了更好地保存交叉域之间的立体特征一致性,它能将立体特征的相关从立体视点特定的风格中解除;(移除对域偏移敏感的类型信息-style information)
总的来说就是 SCF 损失鼓励特征在训练集上具有一致性,SSW 损失产生一个与对比损失相对更低的一致性,从而对域的改变更具有鲁棒性。
方法:
1.Stereo Contrastive Feature Loss
首先介绍一下正负样本(positive or negative pairs),对于能从左右图的某个像素坐标都能被投影到相同的位置的样本称为正样本,相反则为负样本,所以左图中的每个像素,在右图中都有H*W-1个负样本,如果在对比损失中包含所有的负样本,显而易见,计算开销会非常大,因此文中采用从右特征图中以一个大小为50*50的局部窗口随机采样N个不匹配点从而形成N个负样本对;
然后介绍的是动量编码器(Momentum encoder),负样本的选择会极大地影响学习到表示的特性,而且负样本来源于不同的图片对特征一致性会有提高;文中维持一个动态字典队列来存储之前的负样本,并将权值共享特征提取器的结构设计改变为非对称的query和key编码器对(权值θ和η):
这样的设计可以为负面样本提供来自不同图像的内容,减少了feature过多关注当前图像内容的机会。
像素级对比损失:
是负样本,=0.7是超参数。
使用匹配置信度准则,左右一致性检测等方法对不匹配区域进行移除,R为重投影误差,M表示剩下的匹配区域;
最后的 SCF 损失函数为为像素级对比损失与剩下的匹配区域的权重乘积。
2.Stereo Selective Whitening Loss
我们知道的是,使用BN来正则化特征对泛化来说并不友好,因为它是对批次进行归一化,训练的时候会对训练集的数据有依赖,然而在推理时,数据域改变了;因此使用BN会使得网络对域的变化更加敏感。IN则可以解决这个问题,它是对每个实例在其通道维度进行归一化,这并不会对数据产生依赖,因为它不存在对除自身外的其他数据的操作:,i为特征通道的索引。
到这里我们需要明白一个概念,就是特征协方差。我们知道在统计学中,协方差常常可以用来表示两个或多个事件的相关性。因此特征协方差就可以用来表示不同特征之间的相关性,而这里所提出的 SSW 损失就是为了通过抑制对立体视图变化敏感的特征协方差分量来寻求学习视点不变表示,这句话可以这么理解,就是我使用 SSW 损失来将特征协方差值限制在一个较小的值,从而得到特征之间的不相关性。说白了这个SSW 损失就是用来监督网络去除一些特征相关性的,从而使得网络更具有鲁棒性。
在这里贴一下方差的计算:
以及协方差的计算:
选择mask:是方差最大值
SSW 损失:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。