DSM: 域不变的立体匹配网络解析(Stereo Matching Networks)

2022-03-11 12:13:38 浏览数 (1)

作者‖ flow

编辑‖ 3D视觉开发者社区

导语:本文是由来自牛津大学、百度研究院以及中国香港中文大学团队发表的论文,该团队提出了域不变的立体匹配网络方法,用于解决立体匹配网络中直接跨域泛化的问题。适合对立体匹配领域感兴趣,并对该领域术语与概念有一定了解的读者学习。

论文链接:

https://arxiv.org/pdf/1911.13287.pdf

代码链接:

https://github.com/feihuzhang/DSMNet

概述

这篇论文来自于牛津大学、百度研究院以及港中文的团队,主要解决的是立体匹配网络的直接跨域泛化问题。文章提出了一个域不变的立体匹配网络,即Domain-invariant Stereo Matching Netwoks, 简称DSM-Net 。

关于立体匹配的跨域泛化,相对来说研究的比较少,但是并不代表泛化不重要,相反,对于在真实数据和GT较难获取的情况下,合成数据的模型泛化显得格外重要。

先看下论文结果:

显然,就结果来说,DSMNet相对于GANet来说,合成数据集上的模型,直接测试真实的KITTI数据集,有着惊艳的效果,从DSMNet的特征图上也可以看出,相对于GANet有着更少的噪点,这说明DSM网络所提取得到的特征并没有强烈的受着训练数据的影响。

模型

简单的问题场景设定:我们现在没办法去拿到真实场景的数据,不能够进行finetune或者重新训练,该怎么使用合成数据训练得到的模型?

往往,同样的匹配任务,对于传统方法来说,都是提取特征,构建代价空间,WTA的方式,为什么我这张影像的结果不错,那张就不行?经常是因为参数不合适,也因此,我们可以通过调整方法本身的参数,视差的搜索范围等等,去适应目标的立体影像对,使其得到一个还可以的结果。

然而,网络模型不是这样的,模型训练好了就是训练好了,再调整是很难的,那怎么办?一个可以选择的解决思路是,我们去考虑所有立体数据的共性。在网络前向推理的时候,针对的尽可能是数据的共性信息。那么问题就在于,如何去提取数据的共性信息,DSM给出了自己的解答,个人总结一下即,用DN替代BN,所谓的DN是Domain normalization,在接下来将会详细介绍,而BN则是batch normalization。

DSM整体的模型结构如下:

其中,合成数据用来训练,真实数据作为泛化目标数据集,用于测试。DSM使用GANet作为baseline,在其基础上,为所有的特征提取模块以及引导模块中的卷积层都挂上DN层,此外,还挂上了该文提出的“非局部代价聚集“。接下来将对DN以及“非局部代价聚集”进行详细的讨论与介绍。

域归一化:Domain Normalization(DN)

本节将介绍BN、IN与DN。

我们已经很清楚BN了,几乎是构建立体匹配网络的必备选项,然而尽管说,BN能够有效地减少internal covariate shift,但是他还是跟训练数据的域特征有着强相关,对于跨域的泛化来说,并不是一件好事情。

BN的数学表达为:

其中, 以及 分别表示输入以及输出的特征, 则表示某个tensor中的元素的标号, 和 分别表示逐通道的均值和方差,计算方式如下:

其中, 表示同一个通道中的元素的标号,而 则是一个小常数,目的是避免除0的操作。注意到, 是一个通道中的元素标号,也就是说,BN层没有跨通道的能力。实际上,BN相当于一个scale层。BN层在训练的时候,会将一个batch内的数据分布转换为正态分布(即强行将输入值的分布变为:均值为0,方差为1)。在训练过程中,均值 以及方差 是每一个batch的均值,且其叠加起来的值将在推理时被应用。但是,由于不同数据集往往由于影像色度,对比度以及照明等情况的不一致, 以及 并不是可以简单推广到其他数据集上的,这也是导致了泛化差的重要原因之一。

至于IN(Instance normalization),确实在某种角度上来说,克服了对于数据集的依赖,因为它对每一个数据进行归一化,对于IN来说, 则变成了单一的样本,与batch内的其他影像没有关系,理论上来说,IN是域不变的,并且由于其跨空间维度进行归一化,所以其实是减少了影像级别的目视效果的变化的。尽管如此,对于立体匹配任务来说,我们在寻找同名点的时候,其实是在像素级别上的,因此我们会更关注每个像素的多个通道的特征信息,进而,我们潜在的提出了这样的假设:如果对于每一个像素来说,其不同通道的特征满足了同样的分布,是将有利于泛化的,反之,所有会导致这个特征归一化特征以及尺度变化的影响因素都会进一步地影响匹配代价以及相似性的测度计算。

因此,文章提出了所谓的domain normalization(DN),类似于IN,DN首先对对空间维度的特征进行归一化,以避免不同数据集在图像尺度上的显著差别,同时,在通道维度上也进行归一化,目的是加强局部特征的不变性。

具体来说,DN的数学表达为:

其中, 表示某一个像素在通道维度上的下标表达,也就是说,假设通道数一共有 个,那么, 的范围就是从0到 。

BN,IN与DN三者的示意图如下图所示:

再进一步地,关于DN与IN的差别如下图所示,对于左右两个坐标轴内部来说,从左到右的五个柱状分别为合成数据集Sceneflow,KITTI,Middlebury,CityScapes以及ETH3D数据的输出特征的分布表达。可以看到,IN只是减少了影像级别的差别,而DN则是从像素级别出发,对通道维度的特征进行归一化。

非局部代价聚集:Non-local Aggregation(NLF)

提出了一个基于图的非局部滤波器,用于减少网络对影像局部的语义信息的依赖。

设计这个非局部代价聚集的灵感来源于传统方法中的非局部代价聚集。

对于一个2D的影像 而言,我们可以为影像上的每一个像素构建8邻域的链接关系。为了避免图上的循环情况的发生,且为了得到整张图的快速信息狙击,我们将整张图分为两个相反的有向图,分别命名为 以及 ,如下图中的(b)和(c)所示:

我们为属于图 中的每一条边 ,赋予特定的权重 ,具体来说,权重的计算方式为:

其中的 以及 表示两个结点的特征向量,进而,就可以使用 表示两个像素的相似性。此外,为了训练的鲁棒性以及避免极值的出现,需要进一步的对权重进行归一化,即:

其中的 代表着像素 的邻域,也包括像素 本身,但是需要注意,这里的边都是有向的,也就是说,在 内的像素 的边必须是指向像素 的。

为每一个结点 赋予其特定的特征向量 。我们允许结点 自己向自己传递信息,即 。

对于图 来说,非局部滤波器的数学表达如下:

其中, 表示从结点 到 的一条可行的路径。此外,这里考虑了所有可行的路径,进而 则是所有可行路径的权重的加和,而这样设计所考虑的物理意义是,表示了能够从结点 扩散到结点 的所有信息。

省去推导,可以直接将非局部滤波进行如下的数学表达:

而这样的过程,我们可以借鉴SGM多路径代价聚合近似二维全局的方式,将非局部滤波进行线性实现,该线性实现的数学表达以及反向传播推荐读者去阅读原论文,在此不做赘述。此外,论文还给出了与其他类似的方法的对比与讨论,同样推荐感兴趣的读者去阅读原文。

实验及结果

消融实验

探究了不同网络架构,不同归一化策略,不同NLF层数对网络结果的影响,下表则为消融实验的结果,可以看到,当NLF以及DN拉满的时候(即Feature中带7个NLF,cost volume中带2个),在middlebury以及kitti上都有着很大的精度提升,在都有DN的情况下,NLF个数越多,效果越好。而如果仅仅是将BN改成DN,效果提升的幅度并没有令人惊艳的占到绝对主体,就KITTI数据集上的效果来看,DN提高了1.5%的精度,NLF提高了1.4%的精度。

而下表则为了验证DN相比起其他BN、IN等归一化方式,是否真的有用,具体来说,仅仅替换了DSMNet中归一化的方式进行测试,结果看来确实DN相比起BN以及IN,甚至流行的attention,都有着更好的泛化能力,究其原因,或为DN规范了特征向量的分布,并且去除了跨域影像的影像级别以及局部分辨率上的一些区别。

泛化实验

文章的泛化实验设计为:对几个比较流行的网络和DSMNet都只在合成数据上进行训练,而在四个真实场景上进行测试,下表为在KITTI数据集上的表现,结果表明DSM比那些在KITTI域上进行训练的无监督的或者自监督的模型结果指标都要漂亮,甚至比一些有监督的网络的结果还要好。

定性的结果见下图:

耗时实验

毕竟这篇文章致力解决的是泛化问题,对实时性似乎没有更多的讨论,只是说提出的非局部滤波是一个可以高效实现的线性过程,相比起baseline而言,增加的时间不会超过5%。而对于DN以及非局部滤波来说,更是没有引入其他额外的参数。

总结

DSMNet致力于解决立体匹配网络的跨域泛化问题,其提出的DN以及NLF在泛化实验中的表现证明了其能力。

参考文献:

GANet:Feihu Zhang, Victor Prisacariu, Ruigang Yang, and Philip HS Torr. Ga-net: Guided aggregation net for end-toend stereo matching. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 185–194, 2019.

PSMNet:Jia-Ren Chang and Yong-Sheng Chen. Pyramid stereo matching network. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 5410–5418, 2018.

HD3:Zhichao Yin, Trevor Darrell, and Fisher Yu. Hierarchical discrete distribution decomposition for match density estimation. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 6044–6053, 2019.

MADNet:Alessio Tonioni, Fabio Tosi, Matteo Poggi, Stefano Mattoccia, and Luigi Di Stefano. Real-time self-adaptive deep stereo. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 195–204, 2019.

Adaptive Norm: Hyeonseob Nam and Hyo-Eun Kim. Batch-instance normalization for adaptively style-invariant neural networks. In Advances in Neural Information Processing Systems (NIPS), pages 2558–2567, 2018.

Attention: Zilong Huang, Xinggang Wang, Lichao Huang, Chang Huang, Yunchao Wei, and Wenyu Liu. Ccnet: Criss-cross attention for semantic segmentation. In Proceedings of the IEEE International Conference on Computer Vision (ICCV), pages 603–612, 2019.

版权声明:本文由奥比中光3D视觉开发者社区特约作者——flow(奥比中光算法工程师,毕业于中国科学院大学,人工智能领域优秀作者。)授权原创发布,未经授权请勿转载,本文仅做学术分享,版权归原作者所有,若涉及侵权内容请联系删文。

0 人点赞