赞
踩
1. 第一作者:Antyanta Bangunharcana
2. 发表年份:2021
3. 发表期刊:CVPR
4. 关键词:立体匹配、代价聚合、特征激励、实时网络、视差回归
5. 探索动机:使用3D卷积进行聚合的深层堆叠计算成本高且内存效率低。最近的工作尝试使用空间变化的聚合来提高代价聚合步骤的效率。虽然这些工作提高了准确性,但计算成本和内存消耗明显增加,并且在实现所提出的方法时增加了额外的复杂性。
6. 工作目标:作者认为体代价聚合中的3D卷积已经获得了足够的邻域信息。是否可以专注于对现有信息的激励?
7. 核心思想:提出了引导代价体激励(GCE),以利用从图像中提取的特征图作为代价聚合的指导来提高性能;提出了一种新的视差回归方法来代替soft-argmax(argmin)来计算前k个匹配代价值的视差,并表明它可靠地提高了性能;构建了一个实时立体匹配网络CoEx,它优于其他面向速度的方法,并与最先进的模型相比时显示出竞争力。
8. 实现方法:
代价聚合:遵循GC-Net,具有3D卷积的沙漏结构,但减少了通道数量和网络深度以降低计算代价,在每一个模块之后加入引导代价体激励;
Top-k视差回归
9. 实验结果:SceneFlow、KITTI 2012和KITTI 2015数据集上的广泛实验证明了模型的有效和高效,并表明模型优于其他基于速度的算法,同时也与其他最先进的算法在精度方面相匹敌。
10.论文&代码下载:
https://arxiv.org/pdf/2108.05773v1.pdf
https://github.com/antabangun/coex
Correlate-and-Excite: Real-Time Stereo Matching via Guided Cost Volume Excitation
摘要
立体匹配的体深度学习方法使用3D卷积聚合了从左右输入图像计算的代价体。最近的工作表明,利用提取的图像特征和空间变化的代价体聚合补充了 3D 卷积。然而,具有空间变化操作的现有方法很复杂,需要大量计算时间,并且会导致内存消耗增加。在这项工作中,我们构建了引导代价体激励(GCE),并表明由图像引导的代价体的简单通道激励可以显着提高性能。此外,我们提出了一种在soft-argmin视差回归之前使用 top-k 选择来计算最终视差估计的新方法。结合我们的新贡献,我们提出了一个端到端网络,称为 Correlate-and-Excite (CoEx)。SceneFlow、KITTI 2012和KITTI 2015数据集上的广泛实验证明了我们的模型的有效和高效,并表明我们的模型优于其他基于速度的算法,同时也与其他最先进的算法相匹敌。
一. 介绍
立体匹配目的是从一对图像中估计深度,是机器人、自动驾驶和计算机视觉领域的一项重要任务。该任务存在遮挡、无纹理区域、具有重复纹理的区域、薄或小物体等各种具有挑战性的问题。随着深度学习算法的进步,立体匹配算法的准确性显着提高;然而,许多准确的最先进的模型对于实时应用没有快速的处理速度。有一些算法专注于快速计算,但为了获得这种优势通常会以牺牲精度为代价,这可能是立体相机在应用中没有更频繁地使用的主要原因,例如对于自动驾驶,快速计算必不可少的。如果立体匹配算法的效率可以从当前标准提升,基于立体相机的深度感知可以替代许多自动驾驶算法中目前仍在使用的昂贵的LiDAR传感器。
最近一系列基于学习的立体匹配算法使用左右输入图像,通过计算两幅图像之间特征的互相关或连接来构建代价体。基于相关的方法将输入图像的特征向量简化为余弦相似性值,从而提供具有更低内存使用和更快运行时间的模型。然而,这也降低了神经网络的表示能力,并且与基于连接的代价体相比,性能通常不佳。
在体方法中,计算的代价体使用3D卷积层进行聚合。然而,3D卷积的深层堆叠计算成本高且内存效率低。最近的工作试图使用空间变化的聚合来提高代价聚合步骤的效率。虽然这些工作提高了准确性,但计算成本和内存消耗明显增加,并且在实现所提出的方法时增加了额外的复杂性。
我们提出了一种有效且直接的方法,通过使用基于注意力的方法提取图像特征来改进代价聚合,该方法已被证明可以改进图像分类网络。给定一个代价体的特征图,引导代价体激励 (GCE) 使用从参考图像特征计算的权重来激励代价体通道。计算的权重在视差通道中共享,因此操作是轻量级的且易于实现。该模块通过3D神经网络层从代价体和图像引导权重中提取几何特征以激发相关特征。我们凭经验证明在没有增加任何额外显着的计算成本的前提下,这种操作显着提高了性能。我们证明该模块使用基于相关性的代价体利用图像信息,并用基于连接的模型实现相似的精度,使我们能够构建快速且准确的基于相关的立体匹配模型。
在基于体的立体匹配模型中,soft-argmin是计算最终视差估计的标准方法,并且很少有工作来改进soft-argmin回归。soft-argmin函数根据从代价体聚合获得的每个像素的视差分布计算期望值。然而,在许多情况下,视差分布可能具有多个峰值,例如在边缘边界上,甚至是几乎均匀的分布,例如无纹理区域。由于这个原因,在分布不是单峰时取期望值可能不是估计视差的最佳选择。相反,我们建议仅使用分布中的前k个值来计算视差图。我们分析表明了这个简单而新颖的想法可以提供更准确的深度估计,并且可以应用于任何基于体的模型。
根据我们提出的想法,我们构建了一个端到端的实时立体匹配网络,我们称之为CoEx。我们总结了我们的贡献并将它们列出如下:
1)我们提出了引导代价体激励(GCE),以利用从图像中提取的特征图作为代价聚合的指导来提高性能。
2)我们提出了一种新的视差回归方法来代替soft-argmax(argmin)来计算前k个匹配代价值的视差,并表明它可靠地提高了性能。
3)通过这些方法,我们构建了一个实时立体匹配网络CoEx,它优于其他面向速度的方法,并与最先进的模型相比时显示出竞争力。
二. 相关工作
最近的工作集中在使用深度卷积神经网络 (CNN) 来提高立体匹配性能。在[18]-[20]中,CNN用于获取左右图像的特征表示用于特征匹配,但代价聚合仍然使用传统方式完成。DispNet通过引入相关层来构建代价体扩展了想法,训练端到端深度模型来预测立体图像深度。在此之后,提出了更多端到端的工作,这些工作主要可以分为直接回归或体方法。基于直接回归的方法在代价体上使用2D卷积来直接计算视差图。另一方面,基于体的方法通过几何约束和沙漏结构中堆叠3D卷积,使用3D卷积来聚合代价体。
最近,更多的工作集中在提高聚合步骤中3D卷积的效率。两个出色的工作GANet和CSPN使用空间相关过滤器来聚合代价。这些方法使用空间依赖的3D聚合实现了更高的精度,但代价是计算时间更长。受这些方法的优缺点的启发,我们的模型基于空间依赖的3D操作,但专注于速度和效率。另一方面,StereoNet专注于构建实时立体匹配模型,并且像许多其他模型一样,通过牺牲精度来做到这一点。最近,实时立体匹配模型的工作的精度越来越接近性能最好的模型。
上面提到的基于体的方法为每个像素在每个视差层次上输出匹配代价值的分布。然后通过使用soft-argmin操作获取分布的期望值来计算最终的视差估计。结果,网络只是被间接训练以产生视差分布,并且在模糊区域中可能失败。很少有工作改进soft argmin视差回归。最近的研究AcfNet和CDN通过引入新的损失函数来训练网络以产生更好的单峰分布。本文的工作提出了一种新方法,它建立在soft-argmin操作的基础上,并改进了整体视差回归。
三. 方法
基于深度学习的端到端立体匹配网络由匹配代价计算、代价聚合和视差回归组成。我们提出了一种新颖的GCE和top-k soft argmin视差回归模块,可以集成到基于体的基准立体方法中,两者都不会给基准立体匹配模型增加显着的计算开销。使用提出的模块构建了实时端到端的立体模型,如图2所示,实现了与最好的技术相匹敌的性能。我们将在以下小节中详细描述每个组件。
图2:具有代价聚合沙漏结构的整体的端到端立体匹配模型。GCE模块插入到3D卷积之间来利用图像特征图。图像和代价体特征之间的操作是广播操作。Top-k 回归用于计算最终的视差估计。该模型可以扩展到其他基于体的CNN的结构中,并且可以以相同的方式加入所提出的模块。
A. 匹配代价计算
给定左右输入大小为3×H×W的立体图像对,使用共享特征提取模块从它们两者中提取特征图。我们使用MobileNetV2作为我们的主干特征提取器,因为它具有轻量级的特性,并构建了一个U-Net方式的上采样模块,在每个尺度层次上都有长跳跃连接。从这个特征提取模块中,提取每个尺度的特征,以供以后用作空间变化代价聚合的指导信号。为了构建代价体,在左右图像的1/4尺度上提取的特征图构建相关层,以输出D/4×H/4×W/4代价体,其中D = 192是为我们的网络设置的最大视差。
B. 引导代价体激励 (GCE)
3D卷积在现代结构中用于聚合构建的代价体,使得神经网络从数据中获得几何表示。近期的工作使用空间变化的模块来补充3D卷积并实现了更好的性能。具体来说,权重是从参考图像的特征图计算出来的,以聚合从代价体计算的3D特征表示。这些模块为每个感兴趣的像素及其周围的邻居的位置计算权重,以空间依赖的方式进行邻域聚合。
我们认为体代价聚合中的3D卷积已经获得了邻域信息。没有邻域聚合的代价体的特征图的空间变化更新就足够了,而且效率显着提高。为了制定它,对于具有c个特征通道的代价体,我们将相同尺度的图像特征图传递到引导子网络中,以输出每个像素的c个权重。使用这个公式,3D 卷积从代价体中获得几何信息,引导权重激发相关的几何特征。在代价体的尺度s上:
其中F2D是使用2D逐点卷积实现的,其中s是sigmoid函数。引导权重在视差维度上共享,并且(1)中的乘法是广播乘法。此流程显示在图2的左下方。由于该模块涉及使用从参考图像的特征图计算的权重作为指导来激发代价体特征,我们将此模块称为引导代价体激发 (GCE)。该模块极其简单明了,整个网络只增加了一些操作;但是,如我们在SecIV-D.1中的展示,添加GCE模块可以显着提高我们模型的准确性。在我们的CoEx模型中,代价聚合架构遵循GC-Net,具有3D卷积的沙漏结构,但减少了通道数量和网络深度以降低计算代价。然后在代价体的每个尺度上添加GCE模块(图2)。表VI详细说明了GCE的全部的代价聚合模块。该模块输出4D代价体,大小为原始图像分辨率的1/4。
表 VI:代价聚合模块。详细的代价聚合模块如表VI所示。s和p分别是卷积核的步幅和填充大小。I(s)是在特征提取阶段在左侧图像上获得的尺度(s)的特征图。
C.Top-k视差回归
前面步骤中产生的4D代价体为我们提供了每个像素的每个视差层次上的匹配置信值,可以通过对视差值进行Softmax操作将其转换为概率分布。在以前的工作中,通过在该分布上获取期望值,用soft argmax操作来计算视差:
其中d是一组预先确定的视差索引。
只有一个峰值的视差分布可以为视差预测提供足够的估计。然而,在某些情况下,可能有多个峰,甚至是相对均匀的分布。在这些情况下,匹配代价分布的预期值可能与实际的真实值有很大的不同。
为了缓解这个问题,我们不采用整个分布的期望值,而是仅使用每个像素的聚合后的代价体的k个值。我们将这种回归策略称为top-k soft-argmax(argmin) 视差回归。具体来说,在每个像素上,我们使用top-k权重来计算预期的视差值。
当k等于感兴趣的视差D的数量时,top-k回归只是一个soft-argmax操作。当D>k>1时,仅使用每个像素中的top-k值来计算估计的视差。这是通过掩码top-k值并对这些值执行softmax以对其进行归一化来完成的,以便可以获得总和为1的权重。然后将这些权重与其相应的视差索引相乘,而其余的值则被屏蔽掉。这些值的总和是前k个视差候选的加权平均值。这个操作可以看作类似于 k-max pooling。在k等于1的情况下,top-k回归变为argmax,因为最大索引的权重变为常数1。在这种情况下,操作是不可训练的,这就是以前的工作使用soft-argmax的原因。虽然很简单,但我们通过实验证明了top-k soft-argmax 回归的有效性。
使用top-k回归来计算全分辨率的视差图需要大量的额外计算时间,如Sec. IV-D所示。为了减轻这种情况,我们设计我们的模型来计算输入图像分辨率为1/4的视差回归。最后,输出视差预测被上采样到原始输入图像分辨率。延续[34]的方法,上采样分辨率中每个像素的最终视差估计是通过围绕它的3×3“超像素”的加权平均值获得的。另一个CNN分支预测每个超像素的权重。
我们使用 smoothL1 损失函数以完全监督的端到端方式训练网络。我们最终的损失函数如下:
其中,N 是标记像素的数量,dGT 和 d^ 分别是真实和预测视差。
四. 实验
在本节中,我们将详细解释我们的Correlate-and-Excite(CoEx)网络的实现细节和训练,通过广泛的实验和消融来展示我们方法的有效性,并包括对我们的方法的详细讨论。
A.数据集和评估指标
为了测试我们的方法CoEx的有效性,我们在以下数据集上进行了实验和评估:SceneFlow、KITTI Stereo 2012 和KITTI Stereo 2015。
SceneFlow是一个由35,454张训练图像和4,370张测试图像组成的合成数据集。视差范围从1到468开始,所有图像的大小都为W = 960,H = 540。我们使用数据集的“finalpass”版本。只有视差值低于我们的最大视差192的像素被用于训练和评估。end-point-error(EPE),是预测和真实值之间的平均差,被用作报告指标。
KITTI 2012年和2015年的数据集是从激光雷达传感器中获得的具有稀疏真实值的真实世界的数据集。我们将训练数据分为90%的训练集和10%验证集。KITTI 2012使用“Out-All”,即在错误阈值为3像素的度量中,总共占错误像素的百分比。对于KITTI 2015,我们在排行榜上显示了“D1-all”度量,这是所有标记像素的立体视差异常值的百分比。
B. 实时细节
我们使用在ImigeNet上预先训练过的MobileNetV2作为我们的特征提取器主干。使用ImageNet预训练模型让训练过程更快地收敛。我们使用PyTorch实现了我们的模型,并使用Adam优化器(β1 = 0.9,β2 = 0.999)作为我们的随机权值平均(SWA)的优化器。我们随机裁剪图像,大小为W = 576,H = 288进行训练。
在SceneFlow数据集上,我们训练模型10个epoch,前7个epoch的学习率为0.001,其余3个epoch的学习率为0.0001,批大小为8。对于我们在KITTI数据集上的实验,我们使用一个在SceneFlow数据集上预先训练的模型,并在KITTI数据集上对模型进行微调,持续800 epoch,初始学习率为0.001,在30、50和300 epoch中衰减0.5倍。我们使用Nvidia RTX 2080Ti GPU用于训练和测试。
C. CoEx的性能
我们在表1中展示了我们的模型与现有最先进的模型的比较。注意,KITTI结果都来自KITTI立体匹配排行榜,包括SceneFlow的EPE值以及运行时间以及每个工作中提出的值。在基于速度的模型中,StereoNet 是性能最快的模型,运行时间为15 ms。然而,StereoNet 在SceneFlow和KITTI上的精度明显低于CoEx,在SceneFlow上的差异为0.411 EPE,在KITTI 2015上的差异为2.7%。
表1: 与其他先进模型的比较。加粗的:最好的,下划线:第二好。
由于在不同硬件上的运行时间不能给出公平的比较,我们将LEAStreo和AANet的运行时间与我们的方法进行了比较,使用表2中的官方开源模型在相同硬件(RTX 2080Ti)上测试的模型。代价聚合部分包括代价体构建和视差回归。我们的模型比AANet快3.3倍,并且有更低的EPE(0.18),同时在KITTI 2012的3px out-all上高0.46%,在KITTI 2015的D1-all上高0.42%。AANet+增加了对视差改进的关注,为了提高精度没有牺牲速度但是增加大量的网络参数达到8.4M,相较于我们的2.7M。我们的模型没有使用任何后聚合改进化,并且仍然提供了类似的精度,同时比AANet+快3倍。
表2: 相同硬件上ms与其他先进模型的时间比较。加粗:最好的时间。
D. 消融研究
我们在SceneFlow数据集上进行了消融研究,以研究所提出的模块的影响。我们将GCE和top-k soft-argmin回归整合到基准立体匹配模型中。对于这项消融研究,我们使用基准PSMNet和CoEx模型(表3)。注意到PSMNet使用左右图像之间的特征表示的连接来构造代价体。基于连接的方法比基于相关构造代价体的方法使神经网络具有更强的表征能力,对于每个匹配相关方法将特征图减少到只有单一余弦相似度值。将PSMNet中的连接替换为相关会降低预期的精度。然而,在基于相关的PSMNet中只添加一个GCE层,由表3中的“One”表示,其精度与基于连接方法的PSMNet的值相似,这表明GCE使网络能够利用基于相关方法所遗漏的图像特征表示。此外,使用相关也显著减少了计算时间。
表3:在SceneFlow ' finalpass '的基础模型中集成GCE和top-k soft argmin回归的消融研究,使用EPE作为指标(越低越好)。“One”表示只向模型中添加一个GCE层,而“Full”则在每个尺度级别添加GCE层。图2。* k1→K2:用k1训练模型,用K2 soft argmin回归测试模型。
在PSMNet中,代价体被上采样到原始输入图像的分辨率,最大视差值为D = 192。我们在PSMNet中测试了k在2到192之间的top-k soft-argmin回归。我们发现,从k = 192的原始值减少k,通常可以在一定程度上提高性能。当k设置得太低时,精度会下降,这可能是由于在反向传播中缺乏梯度信息。此外,在全代价体分辨率中执行排序以获得top-k值使得计算成本太高。
这促使我们在CoEx模型中计算输入图像分辨率为1/4时的视差回归,并利用超像素上采样获得原始分辨率下的视差图。注意,在CoEx中,k = 192/4 = 48是k的最大值。在表3中显示,在CoEx中添加top-k soft-argmin回归几乎不会增加计算时间,当使用较低的k值时会得到更好的精度。
表3还显示了在每个尺度水平上加入GCE时的性能增益(图2),用“Full”表示。当在原有CoEx模型中加入“Full”GCE和top-2 soft-argmin回归时,得到了我们的最佳模型。请注意,这两个模块相比基本模型只增加了1 ms的计算开销,但在测试中得到了低于原来0.17的EPE。
(1) GCE模块:我们研究了两种使用参考图像作为指导代价体聚合的方法。第一种是通过广播操作在图像特征和代价体特征之间的简单相加,这事实上就像一个UNet风格的跳跃连接。第二种是基于激励的,是GCE模块。两者在SceneFlow数据集上的测试比较如表4所示。基于跳跃连接的加法方法确实对基准提供了轻微的精度提高。然而,我们发现代价体激励是一种在代价聚合中利用图像特征的更有效的方法。
表4:使用参考图像特征做加法或激励代价体特征的比较。
我们比较了执行空间变化的局部聚合的GCE模块与涉及邻域聚合的类似空间变化的操作。为此,我们将一个邻域表示为一个图,并使用图卷积来聚合感兴趣的中心节点周围的节点,其中图的边缘发生空间变化,并从参考图像特征图计算出来。这种基于图的聚合的细节在附录中给出。表5显示,使用GCE模块简单地激励代价体特征比实现的空间独立的邻域聚合性能更好、更有效。
表5: GCE与空间变化邻域聚合的比较。
(2) Top-2视差回归:为了进一步说明top-k回归比soft-argmin回归更好,我们绘制了由k值训练的模型的代价聚合输出产生的视差分布。图4显示了3种在top-k回归中一个较低的k值优于基准soft-argmin方法的情况。在最左边的图中,候选方差具有单峰分布。中间的情况表示有2个可能的峰值,最右边的情况表示分布相对平坦的情况。在所有这些情况下,使用top-2分布训练的模型能只使用峰值匹配值,并且能够抑制远离正确匹配峰值的值,从而得到更准确的估计。
图4. top-k回归中不同k选择训练的模型的视差分布。红色虚线是估计的视差,绿色实线是真是的视差。
那么,当我们在测试时用top-k soft-argmin替换这个回归模块时,用全soft-argmin训练模型表现如何?我们在表3中提供了该测试的实验结果,并发现准确性没有提高。模型需要在训练阶段使用top-k soft-argmin回归。
5. 结论
本文介绍了一种新的实时立体匹配模型,该模型利用了我们称为 CoEx 的空间相关代价聚合。我们表明,空间变化的聚合可以以轻量级和直接的方式执行,以提高性能。我们还展示了如何直接使用top-k值来改进 soft-argmin 视差回归。我们相信,我们方法的惊人速度,对于实时应用来说足够快,可以成为未来在现实世界应用中进行实时立体匹配研究的跳板。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。