其他分享
首页 > 其他分享> > 论文阅读Anisotropic Convolutional Networks for 3D Semantic Scene Completion

论文阅读Anisotropic Convolutional Networks for 3D Semantic Scene Completion

作者:互联网

Anisotropic Convolutional Networks for 3D Semantic Scene Completion

用于3D语义场景补全的各向异性卷积网络

源码:https://waterljwant.github.io/SSC

摘要

作为体素级的标注任务(voxel-wise labeling task),语义场景补全(SSC)试图从单个深度和RGB图像中同时推断场景的占有率和语义标签。SSC面临的关键挑战是如何有效地利用3D环境对形状、布局和可见性有很大变化的各种对象或物品进行建模。为了处理这种变化,我们提出了一种新的模块,称为各向异性卷积(anisotropic convolution),它具有标准三维卷积及其一些变体等竞争方法所不具备的灵活性和强大的性能。与局限于固定3D感受野的标准3D卷积不同,我们的模块能够以体素的方式模拟维度各向异性。
基本思想是通过将3D卷积分解成三个连续的1D卷积来实现各向异性3D感受野,并且每个这样的1D卷积的核大小是动态自适应地确定的。
通过堆叠多个这样的各向异性卷积模块,可以进一步增强体素建模能力,同时保持模型参数的可控量。在NYU-Depth-v2和NYUCAD两个SSC基准上的大量实验表明了该方法的优越性能。我们的代码可以在https://waterljwant.github.io/SSC上找到。

1、介绍

在这项工作中,我们提出了一种新的模型,称为各向异性卷积,以模拟对象的变化,其性质是灵活和强大的,这是其他方法所不能比拟的。与限于固定感受野的标准3D卷积及其一些变体相比,新模块以体素的方式适应维度各向异性特性,并实现具有不同大小的感受野,即各向异性感受野。其基本思想是将3D卷积运算分解成三个连续的1D卷积,并为每个这样的1D卷积配备不同核大小的混合器。沿着每个1D卷积的这些核的组合权重是以体素方式学习的,因此各向异性3D上下文基本上可以通过连续执行这样的自适应1D卷积来建模。虽然我们使用多个内核,例如3个,由于维度分解技巧,与3D模型相比,我们的模型仍然是参数经济的。通过堆叠多个这样的模块,可以获得更灵活的3D上下文,以及从这样的上下文到体素输出的有效映射功能
这项工作的贡献如下:

我们在两个SSC基准上对我们的模型进行了彻底的评估。我们的方法在很大程度上超过了现有的方法,建立了新的最先进的方法。代码将可用。

2、相关工作

2.1 Semantic Scene Completion

语义场景补全

end-to-end net:端到端指的是输入是原始数据,输出是最后的结果,原来输入端不是直接的原始数据,而是在原始数据中提取的特征,这一点在图像问题上尤为突出,因为图像像素数太多,数据维度高,会产生维度灾难,所以原来一个思路是手工提取图像的一些关键特征,这实际就是就一个降维的过程。

2.2 Going Beyond Fixed Receptive Field

超越固定的接受域
大多数现有模型利用固定大小的内核来建模固定的可视上下文,这在处理不同大小的对象时缺乏健壮性和灵活性。

与上述方法不同的是,本文提出的AIC模块是为三维任务量身定制的,特别是针对SSC。通过明智地学习各向异性的接受场体素,它能够处理形状、布局和可见性变化的对象。同时实现了语义补全精度和计算代价的权衡。

3、Anisotropic Convolutional Networks

各向异性卷积网络
在本节中,我们介绍了用于三维语义场景完成的各向异性卷积网络(AIC-Net)。AIC网络的核心是我们提出的各向异性卷积(AIC)模块。给定一个3D场景的单视图RGB-D图像,AIC-Net预测一个密集的3D体素表示,并将视图锥体中的每个体素映射到其中一个标签C

C = { c1, c2,· · · , cN+1 }

  • N是对象的数量
  • CN+1代表空体素
  • c1, c2,· · · cN表示不同类别对象占用的体素

图1显示了我们的AIC-Net的总体架构。

  • 混合特征提取器包含两个平行分支,分别用于深度图和RGB图像的特征提取。每个分支包含一个2D和3D CNN的混合结构。2D和3D cnn通过2D-3D投影层连接起来,允许模型将2D特征图转换为适合于3D语义场景完成(SSC)的3D特征图。
    【10】我们的混合特征提取器的结构遵循DDRNet的结构。
  • 多阶段特征聚合模块由一系列AIC模块组成,每个模块都可以动态地灵活调整三维环境。这些AIC模块的输出被连接在一起,另两个AIC模块将这些多级信息融合在一起。
  • 然后,通过在融合特征上应用一系列体素级的三维卷积层,重构出三维语义场景。

在这里插入图片描述

AIC-Net整体网络结构。

  • AIC-Net有两个特征提取器并行分别从RGB和深度图像中获取特征。特征提取器包含一个投影层,用于将2D特征映射到3D空间。
  • 然后,我们使用堆叠的AIC来获取具有自适应接受域的信息。
  • 多尺度特征通过另外两个AIC和三个体素级卷积进行连接和融合,同时预测占用率和目标标签

在本节的其余部分,我们将介绍AIC模块(第3.1节),通过堆叠AIC模块实现的多路径内核选择机制(第3.2节),并详细介绍了我们模型的训练损失(第3.3节)。

3.1 Anisotropic Convolution

各项异性卷积
考虑到物体形状、布局以及不同遮挡程度在SSC中的变化,对不同的上下文信息建模从而推断不同体素位置的占用率和语义将是有益的。为了适应这种变化,提出了各向异性卷积(AIC)模块,使卷积能够适应三维几何变形。

举例:对于x,我们可以有三个核(1 × 1 × kx 1)、(1 × 1 ×kx 2)和(1 × 1 ×kx 3)。

图2是我们的AIC模块的结构。
对于每一维,我们以3个不同核大小的并行卷积为例。不同核的学习调制因子(modulation factors )用不同的颜色表示。调制因数的值为正,并且每行的值之和为1。

Modulation factors
调制因数 为了使模型能够确定候选核的最优组合,从而自适应地控制上下文来对不同的体素建模,我们在AIC模块中引入了调制模块。如图2所示,

假设AIC模块的输入是张量:

  • L W H是张量的长宽高
  • D表示特征的维度。

输出Xt∈RL×W×H×D可以表示为
在这里插入图片描述

  • 其中Fu表示沿u∈{x,y,z}维的各向异性卷积。

我们采用一种残差结构,将连续三个各向异性一维卷积的输入张量和输出按单元求和,从而得到输出。在不失去一般性的情况下,我们将 F x ( X   t − 1 ) F^x(X~t−1) Fx(X t−1)表示为,
在这里插入图片描述

  • 其中

    表示使用θxi,即大小为(1,1,kxi)的核对Xt-1执行卷积,其中kxi∈{kx1,kx2,···,kxn},
  • N是维度x的候选核的总数,并且表示⨀按元素相乘。
  • 在这里插入图片描述
    是从输入张量到用于沿维度x选择核的权重或调制因子的映射函数,φx表示映射函数的参数。
  • 在这里插入图片描述
    使用softmax是的每个维度u∈{x,y,z}的核的权重相加为1
    在这里插入图片描述

在这个意义上,我们采用一组权值的软约束来确定不同内核的重要性。两种极端情况是,学习到的调制因子为1或0,表示对应的核将是唯一选择或被忽略。通过使用软值,我们可以更灵活地控制这些内核的贡献。
图2中,我们展示了一个AIC模块的例子,m = n = l = 3,如图所示,gu(·,·)是通过与核(1 × 1 × 1)的1层三维卷积实现的。

额外资料解析:https://blog.csdn.net/alfred_torres/article/details/107496979

  • g就是来衡量不同体素的重要性的,并且g是需要一个softmax来进行归一化的。

Bottleneck anisotropic convolution
为了进一步减少AIC模块的参数,提出了一种基于瓶颈的AIC模块。如图3所示,对于每个AIC模块,在AIC运算前后都加一个(1×1×1)卷积。这两个卷积负责减少和恢复特征通道,使AIC模块具有更紧凑的输入。在本文的剩余部分,除非另有说明,AIC指的是基于AIC的瓶颈。
在这里插入图片描述

瓶颈版AIC模块。第一次卷积减少了从D到D’(D’< D)的通道数量,最后一次卷积将通道增加回D。

3.2 Multi-path Kernel Selection

尽管单个AIC模块具有吸引人的特性,但在这里我们展示了通过堆叠多个AIC模块可以获得更大的灵活性。堆叠多个AIC模块隐式地在层间形成多个可能路径,从而使模型的接受域变化范围广泛。图4显示了一个由四个AIC模块组成的堆栈,每个模块沿三个维度设置内核大小为{3,5,7}。
对于一个特定的维度,当每个模块倾向于选择内核大小7时,这个维度的最大接受字段将获得25。相反,如果核大小3在该维度的四个AIC模块的选择中都占主导,则一个维度的最小接受域为9。理论上,这个特定维度的接受域可以在(9,25)的范围内自由变化。当同时考虑三个维度时,我们的AIC网络支持的3D接受域的数量将呈指数级增长,这将为建模对象变化提供灵活性和能力,这是竞争方法无法做到的。在这里插入图片描述

一维多路径内核选择的例子。在本例中,堆叠了四个AIC模块,每个模块的每个维度的内核大小为{3,5,7}。内核的背景暗度表示调制因子的值,从而反映了对该内核的选择趋势。堆叠多个AIC模块可以成倍地增加接受域的范围。

3.3 Training Loss

我们提出的AIC网络可以通过端到端方式进行训练。我们采用体素级交叉熵损失函数【16】进行网络训练。损失函数可以表示为:
在这里插入图片描述

  • 其中Lsm交叉熵损失,
  • yijk标签的groundtruth(i,j,k)
  • pijk相同体素的预测
  • wijk是平衡语义类别的权重,我们遵循[16,10],在我们的实验中使用相同的权重。

标签:Convolutional,Completion,Semantic,卷积,模块,维度,各向异性,AIC,3D
来源: https://blog.csdn.net/qq_42042757/article/details/116134928