【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络

文章目录

  • 前言
  • 一、研究背景
  • 二、论文精读
    • 1.介绍
    • 2.相关工作
    • 3.本文方法
    • 4.网络架构
    • 5.实验
  • 总结


前言

本文是发表在CVPR会议上的一篇论文,作者在GwcNet网络的基础上提出了一种新的cost volume的表示方法,基于注意力连接体的立体匹配网络,并在kitti数据集上目前排名前三。
原文链接:ACVNet
开源代码:gangweiX/ACVNet


一、研究背景

立体匹配是视觉和机器人研究领域的基本问题,一个信息丰富而简洁高效的匹配代价体的构建对于高精度和高效的立体匹配至关重要。本文提出了一种新的成本量构造方法,该方法利用相关线索生成注意权值,以抑制冗余信息,增强连接体积中的匹配相关信息。为了产生可靠的注意力权重,本文提出了多级自适应补丁匹配,以提高不同差距下匹配成本的显著性,即使是无纹理区域。所提出的成本量被命名为注意力聚合量(ACV),它可以无缝地嵌入到大多数立体匹配网络中,所产生的网络可以使用更轻量级的聚合网络,同时达到更高的精度,例如,只使用聚合网络的1/25的参数就可以达到GwcNet的更高精度。

二、论文精读

1.介绍

传统的CNN引入立体匹配网络,其中成本体积代价的计算量很大,结构很复杂,例如GwcNet将分组相关卷与一个紧凑的串联卷串联起来,在最终的4D成本卷中同时编码匹配和内容信息。然而,相关卷和串联卷的数据分布和特征是完全不同的,即前者代表了通过点乘得到的相似度测量,而后者是单项特征的串联。简单地将两个卷串联起来,并通过三维卷积对其进行规范化处理,很难将两个卷的优势完全发挥出来。因此,GwcNet仍然需要二十八次三维卷积来进行成本汇总。
本文工作的目的是探索一种更有效的成本卷形式,它可以大大减轻成本汇总的负担,同时达到最先进的精确度。本文基于两个关键的观察建立模型:首先,聚合量包含丰富但冗余的内容信息;其次,衡量左右图像之间特征相似性的相关量可以隐含地反映图像中相邻像素之间的关系,即属于同一类别的相邻像素往往有密切的相似性。这表明,利用编码像素关系先验的相关卷可以促进串联卷显著抑制其冗余信息,同时在串联卷中保持足够的信息用于匹配。
本文的主要贡献在于提出了一种通用的成本代价体构建方法(ACV),该方法采用了多尺寸的补丁,用自适应权重来匹配不同特征水平的像素。ACV可以达到更高的精度,同时大大减轻了成本汇总的负担。结果显示,应用该方法后,PSMNet和GwcNet可以分别实现额外的42%和39%的准确率提升。

2.相关工作

当前基于深度学习的立体匹配网络主要在成本代价体构建和代价聚合两方面进行优化。
(1)匹配代价体构建
现有的代价体表示法大致可分为三种类型:相关体积、串联体积和通过串联两个体积的组合体积。DispNetC利用相关层直接测量左右图像特征的相似性,以形成每个悬殊水平的单通道成本卷。然后,应用二维卷积来汇总上下文信息。这样的全相关量需要低内存和计算复杂度,但编码的信息太有限(即在通道维度上有很大的内容信息损失),无法达到令人满意的精度。GC-Net使用串联卷,将左右CNN特征串联起来,形成一个所有差异的4D成本卷。这样的4D串联卷保留了所有特征通道的丰富内容信息,因此在准确性方面优于相关卷。然而,由于串联体积没有明确地编码相似性措施,它需要一个深度的三维卷积来从头开始汇总所有差异的成本。为了克服上述缺点,GwcNet提出了分组相关卷,并将其与一个紧凑的串联卷串联起来,形成一个组合卷,旨在结合两个卷的优势。然而,直接串联两类体积而不考虑它们各自的特点,会产生对两类体积中互补优势的低效利用。因此,在GwcNet中,沙漏结构的深度堆叠三维卷积仍然被要求用于成本聚合。
(2)代价聚合
这一步的目标是在最初的成本量中汇总上下文信息,以推导出准确的相似性措施。许多现有的方法利用深度三维CNN从成本体积中学习有效的相似性函数。然而,对于时间有限的应用来说,其计算和内存消耗太高。为了减少复杂性,AANet提出了一个规模内和跨规模的代价聚合算法取代了传统三维卷积算法。该算法可以实现非常快的推理速度,但却牺牲了不小的精度下降。GANet也试图用两个引导聚合层来代替三维卷积,利用空间依赖性的三维聚合实现了更高的精度,但由于两个引导聚合层的存在,代价是聚合时间的增加。即使如此,他们的最终模型仍然使用15个三维卷积。

3.本文方法

(1)ACV注意力连接体的构建
注意力串联体积(ACV)的构建过程包括三个步骤:初始串联体积构建、注意力权重生成和注意力过滤。

初始串联体积构建:给定一个尺寸为H×W×3的输入立体图像对,对于每个图像,我们通过CNN特征提取,分别得到左、右图像的单项特征图fl和fr。fl(fr)的特征图的大小为Nc×H/4×W/4(Nc=32)。然后通过连接每个视差水平的fl和fr形成初始连接体,即为
在这里插入图片描述
Concat的相应大小为2Nc×D/4×H/4×W/4,D表示最大视差。
(2)注意力权重的生成
注意力权重的目的是过滤初始串联量,以便强调有用的信息并抑制不相关的信息。为此,我们通过从一对立体图像之间的相关性中提取几何信息来产生注意权重。传统的相关量是通过计算像素与像素之间的相似性得到的,由于缺乏足够的匹配线索,这对无纹理区域来说变得不可靠。为了解决这个问题,我们通过多级自适应补丁匹配(MAPM)提出了一个更稳健的相关体积构建方法。
下图说明了我们的MAPM的关键思想。
【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络_第1张图片
本文从特征提取模块得到3个不同层次的特征图l1、l2、l3,其通道数分别为64、128、128。对于每一个处于特定水平的像素,我们利用一个具有预定尺寸和自适应学习权重的atrous patch来计算匹配成本。通过控制扩张率,我们确保patch的范围与特征图层有关,同时在计算中心像素的相似度时保持相同的像素数量。然后,两个相应的像素的相似性是patch内相应像素之间的相关性的加权和(图3中用红色和橙色表示)。
本文沿用了GwcNet的分组思想,将特征分成若干组,逐组计算相关图。将l1、l2和l3的三级特征图连接起来,形成Nf个通道的单级特征图(Nf=320)。将Nf通道平均分成Ng组(Ng=40),前8组来自l1,中间16组来自l2,最后16组来自l3。不同级别的特征图不会相互干扰。我们把第g个特征组表示为f g l ,fg r ,多级补丁匹配量Cpatch的计算方法为:
【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络_第2张图片
其中Cpatch表示(k∈(1,2,3))不同特征级别k的匹配成本。〈-,-〉是内积,(x,y)表示像素的位置,d表示不同的视差级别。ωk=(i, j) (i, j∈(-k, 0, k))是一个九点坐标集,定义了k级特征图上补丁的范围(图3中用红色和橙色像素表示(k∈(1, 2, 3))。ωk ij代表像素(i, j)在k级特征图上补丁的权重,在训练过程中是自适应学习。最后的多级补丁匹配量是通过串联所有级别的匹配成本Clk补丁(k∈(1,2,3))得到的。
【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络_第3张图片
我们将得出的多级补丁匹配量表示为Cpatch∈R Ng×D/4×H/4×W/4(4D的匹配代价体),然后我们应用两个三维卷积和三维沙漏网络[7]来规范Cpatch,然后用另一个卷积层将通道压缩为1并得出注意力权重,即A∈R 1×D/4×H/4×W/4(通道数压缩)。
为了获得准确的不同视差的注意力权重来过滤初始串联量,我们使用地面真实视差来监督 A。具体来说,我们采用与GC-Net[9]相同的软argmin函数来获得 A 的视差估计datt。并使用L1 loss来计算估计视差和GT的差异来训练注意力权重。
(3)注意力权重过滤
在得到注意权重A后,我们用它来消除初始串联量中的冗余信息,进而提高其表示能力。其中乘积代表元素间的乘积,注意力权重A被应用于初始串联卷的所有通道。
在这里插入图片描述

4.网络架构

在ACV的基础上,本文设计了一个准确有效的端到端立体匹配网络,命名为ACVNet。下图显示了ACVNet的结构,它由四个模块组成,分别是单项特征提取、注意力串联体积构建、成本聚合和视差预测。在下文中,我们将详细介绍每个模块。
【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络_第4张图片
(1)特征提取
特征提取采用了Gwcnet中的类似ResNet的三层结构。对于前三层,使用3×3的三个卷积核,步长分别为2、1和1,对输入图像进行降采样。然后16个残差层被用来产生1/4分辨率的单项特征,即l1;6个具有更多通道数的残差层被用来获得大的感受野和语义信息,即l2和l3。最后,所有1/4分辨率的特征图(l1,l2,l3)被串联起来,形成320通道的特征图,用于生成注意力权重。然后,应用两个卷积,将320个通道的特征图压缩成32个通道的特征图,用于构建初始串联量,这两个特征图被表示为fl和fr。(特征提取部分类似PSMnet,可以结合理解

(2)注意力串联体积构建

该模块将320通道特征图用于生成注意权重,并将fl和fr用于初始串联体积的构建。其中,注意权重被用来过滤初始串联体,以产生所有视差的4D成本体。

(3)成本聚合

使用一个预沙漏模块来处理ACV,该模块由四个带有BN批量归一化和ReLU的三维卷积和两个堆叠的三维沙漏网络组成,每个模块主要由四个三维卷积和两个三维解卷积组成的编码器-解码器结构,如上图所示。

(4)视差预测

在代价聚合中得到三个输出,如上图所示。对于每个输出,按照GwcNet的做法,采用两个三维卷积来输出一个单通道的四维体积,然后我们通过softmax函数沿视差维度进行上采样并将其转换为图像体积。最后,预测值的计算方法是通过软argmin函数得到:
【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络_第5张图片
其中k表示视差水平,pk表示相应的概率。三个预测的视差图被表示为d0,d1,d2。

同时,本文还提出了一个实时的版本ACVNet-fast,ACVNet-Fast采用了与ACVNet相同的特征提取,但层数和差异预测模块较少。下图显示了ACVNet-Fast的结构,ACVNet-Fast和ACVNet的主要区别在于ACV的构建和聚合。
【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络_第6张图片
(5)LOSS:同样使用了L1损失,如下图所示
【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络_第7张图片
其中datt由第3.1节中的注意权重A得到。λatt代表预测的datt的系数,λi代表第i个预测的视差的系数,dgt表示地面真实的视差图。

5.实验

最后本文进行了消融实验,从替换ACV的不同结构设计,分析其计算复杂性和证明ACV结构的普遍性三个方面展开论述。最后,在多个数据集上评估所提出的模型,如Scene Flow , KITTI 和ETH3D 。
【CVPR2022】ACVNet:一种基于注意力连接代价体的双目立体匹配网络_第8张图片


总结

(1)在本文中,提出了一种新的成本量构成,命名为注意力串联量(ACV),它基于相似性度量产生注意力权重,以过滤串联量。
(2)提出了一种新型的多级自适应补丁匹配方法(MAPM),即使对无纹理区域也能产生准确的相似度测量。
(3)基于ACV,设计了一个高度精确的端到端立体匹配网络(ACVNet),它在四个公共数据集上同时表现出优异的性能,即KITTI 2012、KITTI 2015、Scene Flow和ETH3D。
(4)该方法提供的实时版本,即ACVNet-Fast,实现了比大多数最先进的实时方法更优越的性能。

你可能感兴趣的:(网络,计算机视觉,深度学习)