Advertisement

论文阅读《Cascade Residual Learning: A Two-stage Convolutional Neural Network for Stereo Matching》

阅读量:

为解决立体匹配中难产高质量视差图的问题,本论文提出了一种堆叠卷积神经网络结构(CRL)。该结构由两阶段组成:第一阶段利用DispNetC生成全分辨率初始视差图,并通过反卷积模块获取更多细节;第二阶段利用多尺度残差学习对初始视差进行精细化修正。实验表明,在FlyingThings3D、KITTI2015等数据集上,该方法显著提升了视差估计精度,并优于现有方法。

摘要
本研究聚焦于深度学习在计算机视觉中的应用前景及发展趋势。
介绍
深度学习作为一种新兴的人工智能技术,在模式识别与图像处理等方面展现出显著优势。
相关工作
随着人工智能技术的快速发展,在深度学习领域已形成了大量相关研究与实践探索。
堆叠残差学习
* 双层视差计算框架:该方法通过引入双层视差计算机制,在提升精度的同时保证了算法的有效性。
* 多尺度残差学习:针对不同尺度特征间的关联性进行了深入分析,并在此基础上构建了多尺度残差学习模型。
* 网络架构优化:在传统网络架构的基础上进行了创新性设计,在保持原有功能的基础上实现了性能与效率的最佳平衡。

  • 实验

    • 1 实验设置
    • 2 架构对比
    • 3 和其他方法比较
  • 总结

  • 参考文献

摘要

为了应对立体匹配中病态区域(包括目标遮挡、重复模式以及无纹理区域等)导致难以生成高质量视差的问题,在这项研究中我们提出了一种双阶段堆叠卷积神经网络架构。首先,在第一部分中我们采用了基于DispNet的设计,并附加了一个能够显著提升视差细节程度的反卷积模块。随后,在第二部分中我们对第一部分所得出的基本视差点阵进行了优化校正,并融合了多尺度残差信息以进一步提升精度。需要注意的是,在这一过程中第二部分并非直接学习真实的视差点阵分布而是通过残差学习的方式实现了更为精细的空间重建过程。

1 介绍

该研究提出了一种堆叠残差学习框架(CRL),其由两个相互关联的卷积神经网络模块构成。在第一个模块中,一种非同寻常的反卷积模块设计被采用以生成细纹理视差信息,并为第二个模块奠定了良好的初始基础。第二个模块则通过多层次生成的残差信号进行优化调整。值得注意的是,在这一过程中所采用的学习方法具有显著优势:与传统的深度学习方法不同,在ResNet架构中每个残差块通常独立存在而无法互相监督;而本文创新性地将多个尺度嵌入到残留学习机制中,并使单个残留块能够直接接受基于ground-truth视差点位和初始预测值的信息反馈监督;这种改进使得模型能够实现更为精细的空间细节捕捉能力,并显著提升了整体性能表现

2 相关工作

传统立体匹配算法由四个步骤构成:首先进行代价计算;接着完成代价聚合;然后进行视差计算;最后实现视差精细化。
在匹配代价学习方面 数据驱动生成的相似性度量在性能上优于传统手工设计的方法;然而这些方法仍需执行一系列后处理步骤(即传统方法中的第二至第四步)以获得理想效果。
正则化学习过程中 视差图通常呈现出分段平滑的特点 因此一些现代方法在训练中引入了平滑约束以提升模型效果。
此外 一些研究尝试用替代值替代不可靠的视差信息 但这种方式可能会降低效率。
另一些研究则结合目标检测与语义分割模块来进行正则化处理 从而提高了模型的整体性能。
端到端架构方面 研究者提出了DispNet和GC-NET等著名网络结构 有效提升了视差估计精度。

3 堆叠残差学习

这里写图片描述

3.1 两阶段视差计算

动机:视差估计和光流估计可以通过事后的迭代精细化来改进。FlowNet2.0使用堆叠的CNNs来精细化光流。
与DispNetC类似,本论文提出的CNN的第一阶段有一个带跳跃连接的沙漏结构。然而,DispNetC输出输入立体图像的半分辨率视差图像。而本论文的网络利用了额外的反卷积模块来放大视差,因此获得与输入图像具有相同尺寸的视差图。第一阶段的网络叫做DispFulNet(Ful表示全分辨率)。DispFulNet在目标的边界提供额外的细节和尖锐的转变,为第二阶段的精细化提供了一个理想的起点。
在本来论文的网络中,第一阶段和第二阶段的堆叠方式同FlowNet2.0。第一个网络输入立体图像对I_L和I_R,产生左图的初始视差d_1。然后根据视差扭曲右图像I_R,获得一个合成的左图像,即

然后第二个网络的输入为concat运算:

I_L, I_R,d_1,\widetilde{I}_L(x,y)

和误差项e_L = |I_L - \widetilde{I}_L(x,y)|。该扭曲操作采用可微的双线性插值方法实现,并使整个网络架构得以端到端训练。

3.2 多尺度残差学习

第二个阶段精细化由第一阶段产生的初始视差。给出初始视差,第二个网络输出对应的残差信号r_2,新的视差为d_2=d_1+r_2. 因此第二个网络只关注于学习高度非线性的残差。与ResNet一样,如果第一阶段就已经产生了最优的视差,则第二阶段只需输出0残差以保持最优性。
第二阶段也是一个沙漏结构,在多个尺度上产生残差信号,称为DispResNet(Res表示残差)。在DispResNet的扩张部分,网络在多个尺度上产生残差,表示为\{{r_2^{(s)}\}_{s=0}^S},其中0代表全分辨率尺度。r_2^{(s)}和下采样的视差d_1^{(s)}的和给出在尺度s上的新视差:

为了训练DispResNet,监督在S+1个尺度上估计的视差 \{{d_2^{(s)}\}_{s=0}^S}

3.3 网络架构

CRL的网络结构如图1所示,其中,d_1=d_1^{(0)},最终的视差输出是d_2^{(0)}.为了获得\{{d_1^{(s)}\}_{s=0}^S},网络中执行了一个可微的双线性下采样层,类似于空间变换网络[1]中的采样器模块。
第一阶段的DispFulNet扩大由DispNetC估计的半分辨率视差到全分辨率。与DispNetC不同的是,本论文在DispNetC的最后两个卷积层后面附加额外的反卷积层,然后把反卷积层的输出和左图像concat在一起。通过对concatenated的3D数组再使用一个卷积层(只有一个输出通道),最终获得DispFulNet的输出——一个全分辨率的视差图。这个全分辨率的视差图和其他在六个不同尺度产生的中间视差图通过与ground-truth计算L1损失进行监督。
(论文中没有给出DispFulNet的详细结构,下表是本人根据自己对论文的理解结合论文代码给出的DispFulNet详细结构,其中黑色部分是DispNetS,DispNetC是在DispNetS的conv2后加了correlation层,最后两行红色部分为DispFulNet与DispNetC的不同点,iconv0就是DispFulNet的输出)

DispFulNet

这里写图片描述

第二阶段的DispResNet的具体介绍如下表所示。(值得注意的是,在结构上两者具有一定的相似性,然而,在功能上该网络主要聚焦于残差学习而非直接视差估计)

DispResNet

这里写图片描述

本文的目标是构建一个包含两个模块的深度网络架构,在初始特征提取过程中生成一个全分辨率的基础视差图谱;随后,在精细特征提取模块中通过残差学习逐步优化并获得高精度的视差细节;这两个模块协同工作以实现各自的功能目标,并通过信息传递机制相互协作以优化整体性能。

4 实验

4.1 实验设置

本研究采用了三个数据集进行深度估计模型的实验研究:
(1)针对FlyingThings3D数据集,在处理过程中发现其存在一些不合理视差较大的样本(即视差超过300且像素占比超过25%的图像),因此对这些样本进行了剔除处理;
(2)Middlebury 2014数据集仅用于验证和测试模型性能;
(3)KITTI 2015数据集包含共200张图片,在实验中将其中前170张作为训练用例,并将剩余的30张作为验证用例使用

训练:
基于caffe的框架实现深度学习模型的构建与训练流程。通常情况下,在实际操作中会遵循以下步骤:首先对DispFulNet模型进行初始阶段的参数学习;随后在完成初步训练后锁定该网络的参数;接着对DispositionResNet进行优化;在此基础上根据需求对整体模型架构展开精细调整;具体采用的数据集由实验目标决定;如表所示(其中1F-1K-2F-2K-0K表示:先利用FlyingThings3D数据集对第一个模型进行预训练;随后通过KITTI数据集对其做微调处理;接着锁定前一阶段的学习成果并针对第二个模型展开优化学习;最后统一采用KITTI数据集完成整体模型的最终微调)。

这里写图片描述

评估:
采用以下两个常用度量标准:
(1)End-point误差(EPE):表示估计视差与ground-truth之间的平均欧几里得距离。
(2)三像素误差(3PE):用于衡量端点误差超过三个像素的比例。

4.2 架构对比

在第一阶段中,网络分别采用DispNetC和DispFulNet;在第二阶段中,在基于神经网络的基础上分别采用了DispNetS和DispResNet。

这里写图片描述
这里写图片描述
这里写图片描述

4.3 和其他方法比较

(1)FlyingThings3D数据集上的比较:

这里写图片描述
这里写图片描述

(2)KITTI 2015数据集上的比较:

这里写图片描述

5 总结

本文提出一种双阶段堆叠卷积神经网络架构:第一部分旨在生成具有高质量细节的初始视差图,在此基础上第二部分通过多尺度残留信号对初始视差进行精细优化/校正。实验结果表明,残留学习不仅能够有效提升精细度,并且有助于整体双阶段网络性能的优化。

参考文献

[1] M. Jaderberg, K. Simonyan, A. Zisserman, et al. Spatial transformer networks. In Advances in Neural Information Processing Systems, pages 2017–2025, 2015.

全部评论 (0)

还没有任何评论哟~