文章目录
- 1 背景
- 2 创新点
- 3 方法
- 3.1 总体结构
- 3.2 代价体计算
- 3.3 引导式代价体激励(GCE)
- 3.4 TopK视差回归
- 4 效果
- 参考资料
1 背景
在IGEV中构建几何编码体CGC_GCG时用到了本文将要描述的CoEx,IGEV中没有说明为什么要这样做,本文就是对代价体激励这部分内容进行说明。
基于3D卷积的立体匹配算法通常计算左右输入图像之间的特征互相关或将左右图的特征直接拼接来构建代价体。我们这里将前者称为相关体,后者称为成本体,两者统称为代价体。
相关体将输入左右图像的特征H×W×CH \times W \times CH×W×C转变为左右图的余弦相似度特征H×W×DH \times W \times DH×W×D,DDD为最大视差,这样可以减少后续融合模型的计算量。然而,这降低了神经网络的表示能力,并且效果不如成本体。
成本体根据最大视差将左右图的特征进行拼接,维度为H×W×D×2CH \times W \times D \times 2CH×W×D×2C。然而,深度堆叠的3D卷积运算不仅计算成本高昂,还存在内存占用效率低下的问题。近期研究尝试采用空间变化聚合技术来优化成本聚合步骤的效率。尽管这些改进方案在精度上有所提升,但同时也导致计算成本和内存消耗显著增加,并且在实现过程中需要应对额外的复杂性。
本文提出了一种有效且直接的方法来改进代价聚合,该方法利用基于注意力机制提取的图像特征来进行优化,该方法已被证明可以改善图像分类网络。在给定代价体特征图的情况下,引导式代价体激励(GCE)会根据参考图像特征计算权重,并对代价体通道进行激励。这些计算出的权重会在视差通道中共享,因此该操作轻量且易于实现。该模块使3D卷积能够从代价体中提取几何特征,并利用图像引导的权重来激励相关特征。作者通过实验证明,这一操作在不显著增加计算成本的情况下,能显著提升效果。作者证明该模块让相关体利用倒了图像特征,并且最终效果与成本体类似。这样一来就可以得到一个基于相关体的轻量且效果好的立体匹配模型。
除此之外,作者还优化了最终视差回归的方式。在基于代价体的模型中,soft-argmin计算从成本体聚合获得的每个像素点的视差分布的期望值。然而,在多数情况下,视差分布有多个峰值,特别是边缘区域,甚至是无纹理的区域。正因如此,在非单峰分布情况下采用期望值来估算视差可能并非最佳选择。为此,作者提出仅使用分布中的top-k个峰值来计算视差图。研究表明,这种看似简单却别具一格的方法能获得更精准的深度估计结果,并且适用于所有基于代价体模型的系统。
2 创新点
(1)提出了引导式代价体激励(GCE),仅使用相关体就可以达到和成本体接近的效果。
(2)提出了top-k视差回归方法来替代soft-argmin。
3 方法
3.1 总体结构
基于代价体的模型一般包括代价体计算,代价体聚合,视差回归三个部分。本文提出的引导式代价体激励(GCE)模块与top-k soft-argmin视差回归模块可无缝集成到基于代价体的立体匹配方法中,且不会显著增加立体匹配模型的计算开销。如图3-1所示,通过采用这些模块构建的实时端到端立体匹配模型,在性能表现上达到了与当前最先进方法相媲美的水平。
3.2 代价体计算
给定左右输入的立体图像对 H×W×3H \times W \times 3H×W×3,通过共享特征提取模块从两者中提取特征图。采用MobileNetV2作为骨干特征提取器,因为它具有轻量化特性。在每个尺度层级构建具有长跳连接的U-Net风格上采样模块。该特征提取模块会提取各尺度特征,后续作为空间变化相关体聚合的引导信号。为构建相关体,使用左右图像四分之一尺度提取的特征图,通过相关层输出H/4×W/4×D/4H/4×W/4×D/4H/4×W/4×D/4相关体,其中D=192D=192D=192是网络设置的最大视差。
3.3 引导式代价体激励(GCE)
3D卷积技术在现代神经网络架构中被用于聚合构建的代价体数据,使神经网络能够从数据中捕捉几何特征。近期研究通过引入空间变化模块来增强3D卷积效果,从而获得更优效果。具体而言,该技术基于参考图像特征图计算权重,进而聚合代价体生成的三维特征表示。这些模块会在每个位置为感兴趣像素及其周边邻域计算权重,以空间依赖的方式实现邻域聚合。
作者认为,3D卷积在代价体聚合中的应用已能有效捕捉邻域信息。无需进行邻域聚合,仅需对代价体特征图进行空间变化更新即可满足需求,且效率显著提升。具体实现方式如下:对于具有ccc个特征通道的代价体,作者将等比例缩放的图像特征图输入引导子网络,输出每个像素对应的ccc个权重值。通过这种设计,3D卷积可捕捉代价体的几何信息,而引导权重则能激发相关几何特征。在代价体的比例尺度(sss)下
α=σ(F2D(I(s)))C0(s)=α×Ci(s)(3-1)\alpha = \sigma(F^{2D}(I^{(s)})) \\ C^{(s)}_0 = \alpha \times C^{(s)}_i \tag{3-1} α=σ(F2D(I(s)))C0(s)=α×Ci(s)(3-1)
其中F2DF^{2D}F2D通过2D逐点卷积实现,σ表示sigmoid函数。引导权重在视差维度上共享,式3-1中的乘法运算采用广播式乘法。整个工作流如图3-1下方所示。由于该模块需要利用参考图像特征图计算的权重来激励成本体素特征作为引导,因此将此模块命名为“引导式代价体激励”(Guided cost volume excitation,简称GCE)。
在本文的CoEx模型中,代价体聚合架构沿用了GC-Net的设计方案,采用沙漏形3D卷积结构,但通过减少通道数量和网络深度来降低计算成本。随后在代价体的每个尺度上添加了提出的GCE模块(图3-1)。包含GCE的整体代价聚合模块详见表3-1。该模块输出的4D代价体,分辨率仅为原始图像的1/4。
这个方法本质上是一种特征缩放。假设当前的特征Ci(s)C^{(s)}_iCi(s)的维度是(B,C,D,H,W)(B, C, D, H, W)(B,C,D,H,W),那么α\alphaα的维度就是(B,C,1,H,W)(B, C, 1, H, W)(B,C,1,H,W),对于所有视差维度上的缩放系数是相同的。
3.4 TopK视差回归
通过上述步骤生成的4D代价体,为每个像素在不同视差层级上获得了对应的置信度值。这些数值可通过对视差值进行Softmax操作转换为概率分布。在先前的研究中,通常采用soft-argmin运算来计算视差值——即通过对该概率分布求期望值得出结果:
d^=∑d=0Dd×Softmax(cd)(3-2)\hat{d} = \sum_{d=0}^{D} d \times Softmax(c_d) \tag{3-2} d^=d=0∑Dd×Softmax(cd)(3-2)
式3-2其实写的有点歧义。既然说是argmin,怎么算的是argmax呢?这其实是因为soft-argmin想表达的意思是代价最小的视差值,因此有些地方也会写作Softmax(−cd)Softmax(-c_d)Softmax(−cd)。
然后这个Softmax的输入,怎么是cdc_dcd呢?到底是在对什么进行Softmax呢?这点可以参考这篇博客,总而言之,就是每个像素上所有的DDD加权和为1。
仅有单个峰值的视差分布可能为视差预测提供足够估计。但在某些情况下,可能存在多个峰值或相对均匀的分布,比如在物体的边缘,一个像素会包括前景和背景,因此会有远的视差和近的视差两个峰值。在此类情形下,匹配成本分布的期望值可能与实际真实值存在显著偏差。
为解决这一问题,作者不再对整个分布取期望值,而是仅在每个像素处使用聚合代价体的前kkk个值。作者将这种回归策略称为TopK soft-argmin视差回归。具体来说,在每个像素位置,通过前kkk个权重计算出对应的视差期望值。
当kkk等于最大视差DDD时,TopK回归本质上就是一种soft-argmin操作。当D大于kkk且k>1k > 1k>1时,系统仅使用每个像素中排名前kkk的值来计算估计视差。具体实现是通过掩码处理这前kkk个值,并对它们执行softmaxsoftmaxsoftmax归一化操作,从而获得权重之和为1的特征向量。随后将这些权重与其对应的视差索引相乘,而其余值则被掩码屏蔽。最终计算结果即为前kkk个视差候选的加权平均值,该操作可视为与k−maxk-maxk−max池化类似。当k=1k=1k=1时,TopK回归退化为argmax操作——此时最大索引的权重固定为1。这种情况下算法不具备可训练性,这也是早期研究采用soft-argmax的原因。尽管实现简单,但本文的实验表明,TopK soft-argmax回归具有显著优势。
4 效果
作者对比了本文提出的模型与其他SOTA模型的效果和速度,如下表4-1所示。
不同模型之间,不同模块的速度对比如下表4-2所示,单位是ms。
参考资料
[1] Correlate-and-Excite: Real-Time Stereo Matching via Guided Cost Volume Excitation