论文翻译:StereoNet: Guided Hierarchical Refinement for Real-Time Edge-Aware Depth Prediction
论文《StereoNet: Guided Hierarchical Refinement for Real-Time Edge-Aware Depth Prediction》的完整翻译,如有翻译不当之处敬请评论指出,蟹蟹!(2019-03-21)
发表:ECCV2018
代码:https://github.com/meteorshowers/StereoNet
摘要
本文介绍了StereoNet,这是第一个用于实时立体匹配的端到端深度架构,在NVidia Titan X上以60fps运行,可生成高质量,边缘保留,无量化的视差图。本文的一个重要见解是,网络实现的亚像素匹配精度高于传统立体匹配方法的精度。这使我们能够通过使用非常低分辨率的代价量来实现实时性能,该代价量对实现高视差精度所需的所有信息进行编码。通过采用学习的边缘感知上采样功能来实现空间精度。 我们的模型使用Siamese网络从左右图像中提取特征。 在非常低分辨率的代价卷中计算视差的第一估计,然后分层地通过使用紧凑的像素到像素细化网络学习的上采样函数来重新引入高频细节。 利用颜色输入作为指导,此功能可以生成高质量的边缘感知输出。 我们在多个基准测试中获得了令人信服的结果,展示了所提出的方法如何在可接受的计算预算下提供极大的灵活度。
关键词:立体匹配,深度估计,边缘感知细化,代价卷滤波,深度学习。
1、介绍
立体匹配是一种经典的计算机视觉问题,涉及从两个略微位移的图像估计深度。 随着对虚拟现实和增强现实的兴趣不断增加,深度估计最近被预测到了中心阶段[41]。 它是3D重建,定位和跟踪等许多任务的核心[28]。 它的应用范围涵盖了其他不同的研究和产品领域,包括室内地图和建筑,自动驾驶汽车,以及人体和面部跟踪。
像Microsoft Kinect这样的主动深度传感器提供高质量的深度图,不仅彻底改变了计算机视觉研究[12,11,41,16,55],而且在消费级应用中也发挥了重要作用。近年来,随着许多其他消费类设备的发布,这些有源深度传感器变得非常流行,例如英特尔实感系列,iPhone X上的结构光传感器,以及Kinect V2等飞行时间相机。随着移动设备上增强现实(AR)应用的兴起,越来越需要能够在严格的计算预算下预测精确深度的算法。除iPhone X外,市场上的所有智能手机都只能依赖单或双RGB流。像ARKit和ARCore这样的稀疏跟踪和绘图工具的发布令人印象深刻地展示了移动设备上的粗略和稀疏几何估计。然而,它们缺乏密集的深度估计,因此不能实现令人兴奋的AR应用,例如遮挡处理或虚拟对象与现实世界的精确交互。使用单个移动摄像机(类似于[46])或双摄像头进行深度估计自然成为业界要求将AR扩展到数百万用户的要求。
被动深度的现有技术依赖于两个(整流的)RGB图像之间的立体三角测量。 这在历史上一直由基于CRF的方法主导。 这些技术获得了非常好的结果,但计算速度慢。 这些模型中的推论等于解决一般NP难问题,迫使从业者在许多情况下使用运算时间在秒范围内的求解器[33]或求助于近似解[14,15,56,54]。 另外,这些技术通常在无纹理区域,遮挡,重复图案,薄结构和反射表面的存在下遭受损失。 该领域正在缓慢过渡,自[61]以来,它开始使用深层特征,主要是作为一元的潜力,以进一步推进现有技术。
最近,深层架构在预测被动立体数据的深度方面表现出高水平的准确性[37,26,29,42]。 尽管取得了这些显着进步,但所提出的方法需要大量的处理能力和存储器。 例如,[29]在他们的网络中有350万个参数,在960×540图像上达到每秒约0.95图像的吞吐量,[42]花费0.5秒在高端GPU上产生单个视差。
在本文中,我们介绍了StereoNet,这是一种新颖的深层架构,可在高端GPU上以60Hz生成最先进的720p深度图。 基于我们的洞察力,深度架构非常适合以极高的亚像素精度推断匹配,我们证明了非常低的分辨率成本量足以实现与以全分辨率操作的传统立体匹配系统相当的深度精度。 为了实现空间精度,我们以多尺度方式应用边缘感知滤波阶段,以提供高质量的输出。 总之,这项工作的主要贡献如下:
1>我们表明深层结构的亚像素匹配精度比“传统”立体方法的亚像素匹配精度高一个数量级。
2>我们证明了网络的高亚像素精度允许以非常低的分辨率代价卷实现传统立体匹配的深度精度,从而产生极其有效的算法。
3>我们表明,之前在深层体系结构中引入代价卷的工作过度参数化,以及如何以极低的精度降低系统的运行时间和内存占用量。
4>一种新的分层深度细化层,能够执行保留边缘的高质量上采样。
5>最后,我们证明了所提出的系统在几个基准测试中获得了令人信服的结果,同时实时在高端GPU架构上。
2、相关工作
立体深度已经研究了很长时间,我们将感兴趣的读者推荐给[49,22]进行调查。对立体的对应搜索是一个具有挑战性的问题,并且传统上分为全局和局部方法。全局方法在图像上形成代价函数,传统上使用信念传播或图切割[3,17,30,31]等方法进行优化。相反,局部立体匹配方法(例如[4])将支持窗口置于参考帧中的像素上,然后在第二图像中移位该窗口,直到找到最高相关点。局部立体匹配的主要挑战是为支持窗口定义最佳大小。一方面,窗口需要很大以捕获足够量的纹理,但是需要同时小以避免聚集错误的视差值,这可能导致在视差不连续处的众所周知的边缘肥胖效应。为了避免这种折衷,自适应支持方法基于例如权重来权衡支持区域内的每个像素的影响。它与中心像素的颜色相似。
有趣的是,自适应支持权重方法在[25]中被视为代价卷滤波:通过计算所有可能的视差水平的每个像素匹配代价来构建三维代价量。 然后使用加权平均滤波器对该代价卷进行滤波。 该滤波在空间域和深度域中传播局部信息,产生深度图,该深度图保留跨物体不连续的边缘。
对于基于三角测量的立体匹配系统,深度的精度直接与另一图像中的对应像素可以定位的精度相关联。因此,以前的工作力求与亚像素精度匹配。大多数算法的复杂性随着评估的视差的数量线性地缩放,因此一种方法是建立具有非常精细的视差步长的大代价卷,这在计算上是不可行的。因此,许多算法以离散匹配开始,然后通过将诸如抛物线拟合的局部曲线拟合到离散视差候选者之间的代价函数来细化这些匹配(参见例如[59,39])。其他工作基于连续优化策略[47]或相位相关[48]。在[45]中显示,在实际条件下,亚像素精度的界限是像素的1/10,而在无噪声条件下的理论极限是低10倍[10]。我们证明了这种传统智慧并不适用于基于学习的方法,我们可以实现1/30像素的亚像素精度。
最近的工作已经发展到使用端到端学习进行立体匹配。 各种方法将学习的小图像块或匹配代价与全局优化方法(如半全局匹配(SGM))相结合以进行细化[60]。 [9]学习多尺度嵌入模型,然后是MRF。 [62,61]学会匹配图像块,然后是SGM。 [35]学习使用Siamese功能网络匹配块并使用SGM进行全局优化。 [52]使用多阶段方法,其中首先使用公路网络架构来计算匹配成本,然后在后处理中使用另一个网络来聚合和汇集成本。
其他工作试图在没有后处理的情况下端到端地解决立体匹配问题。 [37,26]训练端到端的编码器解码器网络,用于视差和流量估计,在现有和新的基准测试中实现最先进的结果。 其他端到端方法使用多个细化阶段,这些阶段会聚到正确的视差假设。 [21]提出了一种用于标记问题的通用体系结构,包括深度估计,这种体系是端到端训练以预测和改进输出。 [42]提出了一种级联方法来迭代地改进预测深度。 迭代细化方法虽然在各种基准测试中表现出良好的性能,但往往需要大量的计算资源。
与我们的工作更密切相关的是[29],他们使用了代价卷滤波的概念,但对端到端的功能和过滤器进行了训练,取得了令人瞩目的成果。 DeepStereo [18]使用平面扫描体积从多视图立体声输入合成新颖的视图。 与之前的工作相反,我们对可以实时运行的端到端学习立体流水线感兴趣,因此我们从非常低分辨率的代价卷开始,然后使用学习的边缘感知滤波器对其进行上采样。
3 StereoNet 算法
3.1初步措施
给定输入图像对,我们旨在训练端到端视差预测流水线。 训练此类管道的一种方法是利用通用编码器解码器网络。 编码器通过一系列收缩层将输入提取到瓶颈,该瓶颈捕获与训练中的任务最相关的细节,并且解码器通过一系列扩展层重建从瓶颈层中捕获的表示的输出。 虽然这种方法在包括深度预测在内的各种问题上都取得了广泛的成功[37,26,42],但它们在立体算法中缺乏一些我们关心的特性。
首先,这种方法没有捕捉到关于立体匹配问题的任何几何直觉。 立体声预测首先是对应匹配问题,因此我们的目标是设计一种算法,无需重新训练即可适应不同分辨率和基线的不同立体声相机。 其次,我们注意到类似的方法明显过度参数化,其中预测是像素到像素的映射,其不涉及输入的任何扭曲,因此可能过度拟合。
我们的立体匹配方法采用了利用问题结构和经典方法来解决它的设计,类似于[29],同时使用紧凑的上下文感知像素到像素细化网络产生边缘保留输出。 我们模型的体系结构概述如图1所示,并在以下部分中详述。
图1.模型架构。 提出了两阶段方法:首先,我们使用Siamese网络以较低分辨率提取图像特征。 然后,我们通过匹配扫描线上的特征来建立该分辨率的代价卷,从而为我们提供粗略的视差估计。 我们最终分层次地细化结果以恢复小细节和薄结构。
3.2、粗略预测:代价卷滤波
立体声系统通常解决对应问题。 该问题通常归结为通过沿着其扫描线找到两个校正图像之间的像素到像素匹配来形成视差图。 对平滑和边缘保持解决方案的需求导致了诸如代价卷滤波的方法[25],其通过形成和处理共同解决每个像素处的所有候选视差的3D体积(卷)来明确地模拟匹配问题。 虽然[25]直接使用颜色值进行匹配,但我们计算用于匹配的每个像素的特征表示。
特征网络 管道的第一步找到图像块的有意义的表示,可以在后期准确匹配。我们记得立体声遭受无纹理区域的影响,传统方法通过使用大窗口聚合代价来解决这个问题。我们通过确保从大的感知字段中提取特征来在网络中复制相同的行为。特别是,我们使用两个输入图像(也称为连体网络)之间具有共享权重的特征网络。我们首先使用K 5×5卷积以2为步幅积极地对输入图像进行下采样,在整个下采样期间将通道数保持在32。在我们的实验中,我们将K设置为3或4。然后我们应用6个残差块[23],采用3×3卷积,批量归一化[27]和Leaky ReLU**(α= 0.2)[36]。最后,使用具有3×3卷积的最终层处理,不使用批量标准化或**。输出是下采样图像中的每个像素处的32维特征向量。这种低分辨率表示很重要,原因有两个:1)它具有很大的感受野,对无纹理区域很有用。 2)它保持特征向量紧凑。
代价卷 此时,我们通过获取像素的特征向量与匹配候选的特征向量之间的差来形成粗分辨率的代价卷。 我们注意到不对称表示通常表现良好,并且连接两个载体在我们的实验中获得了类似的结果。
在这个阶段,传统的立体声方法将使用赢者通吃(WTA)方法来选择两个特征向量之间的最低欧几里德距离(欧式距离)的差异。 相反,在这里,我们让网络通过运行多个卷积然后运行非线性来学习正确的度量。
特别是,为了聚合空间域和视差域的上下文,我们使用4个3D卷积滤波代价卷,过滤器大小为3×3×3,批量归一化和Leaky ReLu**。 然后应用不使用批量归一化或**的最终3×3×3卷积层,并且滤波层在每个像素处产生1维输出和候选视差。
对于尺寸为W×H的输入图像并且评估D个候选视差的最大值,对于K个下采样层,我们的代价卷为W/2^K × H/2^K × (D + 1)/2^K。 在我们的StereoNet设计中,我们针对紧凑型方法,内存占用空间小,可以部署到移动平台。 与[29]形成四分之一分辨率的特征表示和多个级别的总代价量不同,我们注意到大部分时间和计算都花费在更高分辨率上匹配,而大多数性能增益来自较低分辨率的匹配。 我们在实验中验证了这一说法,并表明鉴于速度增益,性能损失并不显着。 其原因在于网络实现了比传统立体匹配方法更高的亚像素精度。 因此,不需要在更高分辨率下进行匹配。
可微分的arg min 我们通常会使用arg min选择滤波后的代价卷中每个像素的最小代价视差。 对于像素 i 和成本函数超过视差值C(d),所选择的视差值 di 被定义为:
然而,由于arg min是不可微分的函数,因此无法学习。 我们在方法中考虑了两种可区分的变体。 第一个是软arg min,最初在[6]中提出并在[29]中使用。 实际上,所选视差是所有视差值的softmax加权组合:
第二个可微分变量是概率选择,从softmax分布中获取代价:
通过采样过程进行区分使用梯度估计技术,通过最小化随机过程的预期损失来学习视差的分布。 虽然这种技术源于强化学习中的政策梯度方法[57],但它最近被制定为[50]中的随机计算图,并应用于[5]中基于RANSAC的相机定位。 此外,我们讨论的两个可微变体之间的平行关系类似于软关注网络和硬关注网络之间的平行关系[58]。
不幸的是,即使使用各种方差减少技术,概率方法在我们的实验中也显着地表现不佳[58]。 我们希望这是因为它保留了艰难的选择。 在许多应用中,这种特性可能是至关重要的,但在我们的模型中,它被软arg min能够回归亚像素精确值所取代。 这一结论得到了关于强化学习中连续动作空间的文献的支持[34]。 因此,软arg min选择更快收敛并且更容易优化,这是我们在实验中选择使用的。
3.3、分层细化:边缘感知上采样
依赖粗匹配的缺点是由此产生的近视输出缺乏细节。 为了保持我们的紧凑设计,我们通过学习边缘保留细化网络来解决这个问题。 我们注意到网络在这个阶段的工作是扩大或侵蚀视差值,以使用颜色输入作为指导来融合高频细节,因此是一个学习像素到像素映射的紧凑网络,类似于最近计算中使用的网络 摄影作品[8,7,20],是一种合适的方法。 具体地,我们任务细化网络仅寻找残差(或增量视差)以从粗略预测中加或减。
我们的细化网络将视差双线性上采样到输出尺寸以及调整到相同尺寸的颜色作为输入。最近显示出去卷积产生棋盘格,所以我们选择使用双线性上采样和卷积[40]。连接的颜色和视差首先通过输出32维表示的3×3卷积层。然后通过6个残余块,再次采用3×3卷积,批量标准化和Leaky ReLu**(α= 0.2)。我们在这些块中使用带孔卷积来从更大的上下文中进行采样,而不会增加网络规模[43]。我们将残差块的扩张因子分别设置为1,2,4,8,1和1。然后使用不使用批量归一化或**的3×3卷积层处理该输出。该网络的输出是1维视差残差,然后将其添加到先前预测。我们将ReLu应用于总和以限制视差为正。
在我们的实验中,我们使用所描述的网络的级联评估分层次地改进输出,以及应用单次细化,将粗略输出上采样到一次性的全分辨率。 图2示出了层次结构的每个级别的细化层的输出以及在每个级别添加的残差以恢复高频细节。 这个网络的行为让人想起联合双边上采样[32],实际上我们认为这个网络是一个学习边缘感知的上采样功能,可以利用指南图像。
图2.分层细化结果。 从左上角的成本量输出开始的每个阶段(顶行)的结果将使用相应细化网络的输出(底行)进行更新。 使用颜色输入作为指导,细化网络输出预期会在边缘周围扩张和侵蚀。 groundtruth显示在右下角。 此示例的每个阶段的平均端点错误分别为:3.27,2.34,1.80和1.26。 放大细节。
3.4、损失函数
我们使用groundtruth标记的立体声数据以完全监督的方式训练StereoNet。 我们最小化层次损失函数:
其中 di^k 是在第k个细化级别的像素i处的预测视差,其中k = 0表示输出预细化,并且di是相同像素处的groundtruth。 预测的视差图总是双线性上采样以匹配groundtruth分辨率。 最后,ρ(·)是来自[2]的双参数鲁棒函数,其参数设置为α= 1且c = 2,近似于平滑的L1损失。
3.5、实现细节
我们使用Tensorflow [1]实施和训练了StereoNet。 我们所有的实验都使用RMSProp进行优化[24],初始设定为1e-3的指数衰减学习率。 输入数据首先归一化到范围[-1,1]。 我们使用批量大小为1,因为模型尺寸较小,我们不会裁剪,不像[29]。
我们的网络需要大约150k次迭代才能达到收敛。 我们发现,直观地,同时对图像对的左右视差图进行训练显着加快了训练速度。 在较小的数据集中,从头开始训练将是徒劳的,我们对预先训练的模型进行了微调,以进行额外的50k迭代。
4、实验
在这里,我们在几个数据集上评估我们的系统,并证明我们以现有技术所需的计算成本的一小部分获得高质量的结果。
4.1、数据集和建立
我们在三个数据集上定量和定性地评估了StereoNet:场景流[37],KITTI 2012 [19]和KITTI 2015 [38]。 场景流是一种适用于深度学习模型的大型合成立体数据集。 但是,其他两个KITTI数据集虽然与实际环境相当,但对于完整的端到端培训来说太小了。 我们通过最初的场景流训练,然后在KITTI数据集上单独微调得到的模型,遵循先前的端到端方法[29,42]。 最后,我们在准确性和运行时方面与显着的theart-theart方法进行比较,以显示我们的方法在实时场景中的可行性。
此外,我们使用模型的四种变体对场景流数据集进行了消融研究。 我们评估了将下采样卷数K(详见3.2节)的数量设置为3和4.这将控制成本量形成的分辨率。 通过更积极的下采样,成本量过滤指数更快,但是以牺牲薄结构和小物体的细节为代价。 细化层可以带来很多细节,但如果信号完全从代价卷中丢失,则不太可能恢复它们。 此外,我们使用K细化层进行评估,以分层方式恢复不同尺度的细节,而不是使用单个细化层将代价卷输出直接上采样到所需的最终分辨率。
4.2、亚像素精度
在为给定应用选择合适的技术时,深度系统的精度通常是一个关键变量。 具有基线b,焦距f和亚像素精度的三角测量系统具有随距离 [53]的二次方增加的误差。 诸如飞行时间之类的竞争技术不会受到这个问题的影响,这使得它们对于诸如房间扫描和重建的长距离应用具有吸引力。 尽管如此,已经证明ToF系统中的多径效应甚至可以在物体扫描等近距离任务中扭曲几何形状[13]。 长距离精度仍然是反对立体声系统和支持ToF的主要论据之一。
在这里,我们表明深层架构是亚像素精度方面的突破,因此它们可以与其他技术竞争,不仅适用于短距离,也适用于长距离。 传统的立体匹配方法执行离散搜索,然后执行抛物线插值以检索准确的视差。 这种方法通常会导致亚像素精度~0.25像素,对于具有55 cm基线的系统(例如Intel Realsense D415),大致相当于3 m距离处的4.5 cm误差。
为了评估方法的精度,我们使用了场景流的评估集,我们仅计算了在整数位置正确匹配的像素的平均误差。 结果对应于超过一亿像素的平均值,并在图3中报告。从该图中,重要的是要注意:(1)所提出的方法实现了0.03的亚像素精度,这比传统的低一个数量级。 立体匹配方法,如[4,14,15]; (2)无论成本量的分辨率如何,细化层的表现都非常相似; (3)在没有任何细化的情况下,下采样成本体积仍然可以在低分辨率输出中实现0.03的亚像素精度。 但是,误差随着下采样因子几乎呈线性增加。
请注意,亚像素精度为0.03表示距离相机3米距离处的预期误差小于5毫米(英特尔Realsense D415)。 这一结果使得三角测量系统非常具有吸引力并且与ToF技术相当,而不会受到多径效应的影响。
图3.立体匹配中的亚像素精度。 我们证明StereoNet的亚像素精度达到0.03,比传统的立体声方法低一个数量级。 在实际条件下,传统方法的下限被发现为1/10(见[45]),我们用黑线表示。 而且,我们的方法可以在720p图像上实时运行。
4.3、定量结果
我们现在在标准基准上评估模型,证明所提方法的有效性以及代价卷分辨率和获得的精度之间的不同折衷。
SceneFlow. 虽然这些数据是综合生成的,但由于存在闭塞,薄结构和大的差异,评估序列是非常具有挑战性的。 我们评估了表1中报告终点误差(EPE)的模型。
表1. SceneFlow的定量评估。 与最近的深度学习方法相比,我们实现了最先进的结果。 我们比较了我们模型的四种变体,这些变体在代价卷形成的分辨率(8x对16x)和细化层数(多对比单)上有所不同。
单个未精制的模型,即仅使用分辨率的1/8的代价卷输出,实现了2.48的EPE,其优于[29]中提出的完整模型,其达到2.51的EPE。 请注意,我们的未精炼模型由360k参数组成,在960×540输入分辨率下以12毫秒运行,而[29]在相同分辨率下使用350万参数,运行时间为950毫秒。 我们最好的多尺度架构实现了1.1的最新误差,这也低于最近的方法[42]中报告的误差。 定性示例可以在图4中找到。请注意该方法如何恢复非常具有挑战性的细节。
图4. FlyingThings3D测试装置的定性结果。 尽管形成代价卷的分辨率很低,但所提出的两阶段架构能够恢复非常精细的细节。
最后一个考虑因素是代价卷的解决方案。一方面,我们证明了粗略代价卷已经携带了检索非常高的亚像素精度所需的所有信息,即高视差分辨率。另一方面,对图像进行下采样可能导致空间分辨率的损失,因此如果代价卷的输出非常粗糙,则不能重建薄结构。在这里,我们证明了1/16分辨率的卷足以恢复非常具有挑战性的小物体。实际上在图5中,我们比较了三个代价卷的输出,即1/4,1 / 8,1 / 16分辨率,我们也应用了细化层。我们可以观察到,通过我们提出的上采样策略可以正确地恢复1/16分辨率视差图中遗漏的精细结构。为了获得令人信服的结果,1/4的代价卷不是必需的,这对于移动应用来说是一个重要的发现。如前一小节所示,即使在低分辨率下,网络也实现了1/30像素的亚像素精度。但是,我们还要强调,要在多个基准测试中实现最先进的精度,代价卷分辨率成为一个重要因素,如表1所示。
图5.代价卷比较。 1/16分辨率的代价卷已经具有生成高质量视差图所需的信息。 这在后期细化中很明显,我们恢复了具有挑战性的薄结构,并且整体终点误差(EPE)低于一个像素。
Kitti. Kitti是一个突出的立体声基准测试,通过驾驶配备摄像头和激光扫描仪的汽车拍摄[19]。 由于巨大的变异性,反射,过度曝光的区域以及更重要的是缺乏大型训练集,数据集非常具有挑战性。 尽管如此,我们在表2中提供了Kitti 2012的结果。我们的模型使用下采样系数8作为代价卷和3个改进步骤。 在表现最好的方法中,我们将其与三个重要方法进行比较。 现有技术[29],EPE达到0.6,但每张图像的运行时间为0.9秒,并使用多尺度代价卷和多个3D去卷积。 早期基于深度学习的[62]立体匹配方法每个图像需要67秒,并且与我们的每立方对0.015秒的方法相比具有更高的误差(0.9)。 SGM-net [51]的错误与我们的相当。虽然我们没有达到最先进的结果,但我们相信所产生的视差图非常引人注目,如图6底部所示。 我们分析了模型中的误差来源,我们发现大多数错误的估计都是围绕反射,导致错误的视差预测,以及遮挡区域,这些区域在另一个视图中没有对应关系。 这些区域无法通过数据解释,然后问题可以被制定为一个修复任务,我们的模型没有经过训练。 现有技术[42]在其精制步骤中使用了一种类似沙漏的结构,这已被证明对于修复目的非常有效[44]。 这当然是处理这些无效区域的有效解决方案,但是它需要大量额外的计算资源。 我们相信所提出的架构的简单性显示出重要的见解,并且它可以引导通向有趣的方向以克服当前的限制。
表2. Kitti 2012的定量评估。对于StereoNet,我们使用了一个模型,其下采样因子为8和3个细化级别。 我们报告误差大于2的像素百分比,以及非遮挡(Noc)和所有像素(全部)中的整体EPE。
图6. Kitti 2012和Kitti 2015的定性结果。注意我们的方法与快速相比如何保留边缘和恢复细节[51]。 现有技术方法比提出的方法慢一个数量级。
同样,我们在Kitti 2015上评估了我们的算法,并在Tab3中报告结果,其中可以进行类似的考虑。 在图6的顶部,我们展示了测试数据中的一些示例。
表3. Kitti 2015的定量评估。对于StereoNet,我们使用了一个模型,其下采样因子为8和3个细化级别。 我们在背景区域(bg),前景区域(fg)和所有区域中报告误差大于1的像素百分比。
4.4、运行时间分析
我们在本节结束时详细介绍了算法的运行时间。 对实时应用程序感兴趣的读者会发现有助于了解瓶颈所在。 目前的算法在NVidia Titan X和整个运行时间的图7中以60fps运行。 注意特征提取,卷形成和滤波如何占用整个计算的不到一半(41%),最耗时的步骤是细化阶段:在全分辨率下完成的最后一个细化级别是使用38%的计算。
图7. StereoNet的运行时分析。 细分运行时间。 请注意大部分时间是在最后一级细化中花费的。
5、讨论
我们展示了StereoNet,这是第一款用于无源立体声匹配的实时,高质量端到端架构。 我们从这样的见解开始,即低分辨率成本量包含大部分信息,以生成高精度视差图,并在给定足够训练数据的情况下恢复薄结构。 我们证明了1/30像素的亚像素精度,超过了文献中公布的限制。 我们的改进方法使用颜色输入作为指导,分层地恢复高频细节,与数据驱动的联合双边上采样算子平行。 我们的方法的主要限制是由于缺乏监督的训练数据:事实上我们表明,当有足够的例子可用时,我们的方法达到了最先进的结果。 为了减轻这种影响,我们未来的工作涉及监督和自我监督学习[63]的组合,以增强训练集。