主要针对的任务是RGBD语义分割, 不一样于往常的RGB图像的语义分割任务, 这里还能够更多的考虑来自D通道的深度信息. 因此对于这类任务须要联合2D外观和3D几何信息来进行联合推理.github
关于将深度信息编码为图像的方法有如下几种:算法
以后FCN直接在编码图像上进行特征提取.编程
关于如何进行RGBD图像的分割, 以往有的工做主要有如下的几种方法:网络
为了处理上述挑战, 文章提出了一个端到端的3D图神经网络, 这直接从3D点中学习表示.app
当前不少工做已经努力将神经网络推广到图数据上.dom
一个方向是将卷积神经网络(CNN)应用于图. 在谱方法中, CNN用于依赖于拉普拉斯矩阵的谱域. 然而[6]使用哈希函数, 所以能够将CNN应用于图. 另外一个方向是将神经网络循环应用于图的每一个节点, 产生了“图形神经网络”. 该模型包括一个传播过程, 它相似于图模型的消息传递. 这种模型的最终学习过程能够经过BPTT算法来实现.ide
这里使用的消息传播模型的图神经网络, 基础更新公式为:函数
其中h为隐藏状态, m对于当前节点的邻居信息的汇总后的结果, 具体如何汇聚, 看具体不一样的模型的设定, 文章是使用的均值. 函数M是计算消息的函数, 而F是用来更新隐藏状态的函数. 和循环卷积神经网络相似, M, F是不一样的时间步上是共享权值的. 简单的M和F可使用像素级加法和全链接层来分别表示 这些更新函数指定了图内信息的传播模型. 也可使用多个M来包含来自有着不一样类型的边的图的更多信息.性能
经过执行上述传播模型必定数量的步骤来执行推断, 最终预测能够在节点处或在图级别产生, 具体取决于任务. 例如, 能够将隐藏表示(或其聚合)提供给另外一个神经网络以执行节点(或图)分类.
图神经网络与许多现有模型密切相关, 例如条件随机场(CRF)和循环神经网络网络(RNN). 文章专一于成对CRF, 但请注意, 这里的链接扩展到了高阶模型上.GNN能够被看做是一个RNN从序列到图数据上的泛化.
这种动态计算方案的关键思想是节点状态由其历史状态和其邻居发送的消息共同肯定, 同时将外观和3D信息同时考虑在内.
使用每一个节点的最终状态来执行每一个节点的分类任务. 采用BPTT算法计算图形神经网络的梯度. 此外, 经过传播梯度到一元CNN促进端到端的培训.
给定图像, 基于像素的2D位置和深度信息来构建有向图, 让[x, y, z]表示相机坐标系中的点的3D坐标, 而且让[u, v]表示其根据针孔相机模型投影到图像上的坐标. 根据透视投影几何产生式子:
这里的fx和fy表示沿着x和y的焦距长度(focal length), 而且cx和cy表示主点(the principal point). 为了造成图, 将每一个像素视为一个节点, 并经过有向边缘将其链接到3D空间中的K近邻(KNN), 在咱们的实验中K设置为64. 注意, 这个过程产生不对称结构, 即, 自A到B的边的存在不必定意味着自B到A的边的存在.
在构造完图后, 使用CNN做为一元模型来计算每一个像素的特征, 这些特征做为对应节点的初始隐藏层表示, 从而编码外观信息. 给定已经编码好几何上下文信息的3D图, 图神经网络能够用来利用外观和几何信息.
信息传递过程以下:
这里的g是一个多层感知机, 文章是用的是ReLU做为对应的非线性激活函数. 每一个时间步, 每一个节点收集来自邻居节点的消息. 消息首先被汇聚平均后, 与节点原始隐藏状态进行融合更新.这里关于F的选择, 主要有两种:
网络的大体状况如上.
对于每一个节点v在得分图中对应的像素, 这里预测语义类别yv的几率pyv使用下面的公式计算:
这里的s是一个全部节点共享的有着softmax层MLP. 注意这里拼接了一元CNN输出的初始隐藏状态和T个时间步以后的迭代输出隐藏状态.
最终使用一个softmax交叉熵损失函数来对每一个节点进行损失计算, 使用BPTT进行训练.
We evaluate our method on two popular RGBD datasets: NYUD2 and SUN-RGBD.
NYUD2 contains a total of 1,449 RGBD image pairs from 464 different scenes. The dataset is divided into 795 images from 249 scenes for training and 654 images from 215 scenes for testing. We randomly split 49 scenes from the training set as the validation set, which contains 167 images. The remaining 654 images from 200 scenes are used as the training set.
划分比例: tr:val:te = 654:167:654 = 1:0.25 :1
SUN-RGBD consists of 10,335 images, which are divided into 5,285 RGBD image pairs for training and 5,050 for testing.
All our hyperparameter search and ablation studies are performed on the NYUD2 validation set.
For most of the ablation experiments, we use a modified VGG-16 network, i.e., deeplab-LargeFov with dilated convolutions as our unary CNN to extract the appearance features from the 2D images. We use the fc7 feature map. The output feature map is of size H×W×C where H, W and C are the height, width and the channel size respectively. Note that due to the stride and pooling of this network, H and W are 1/8 of the original input in terms of size.** 所以, 咱们的 3D 图形是创建在向下采样的特征图之上的.**
为了进一步合并上下文信息, 咱们使用全局池从特征图计算另外一个 C 维向量. 而后将向量附加到全部空间位置, 从而生成一个 H×W×2C 特征图.
In our experiment, C=1024 and a 1×1 convolution layer is used to further reduce the dimension to 512.
We also experimented by replacing the VGG-net with ResNet-101 or by combining it with the HHA encoding.
提出了一种用于RGBD语义分割的新型3D图神经网络. 图神经网络创建在从RGB图像中提取颜色和深度的点之上. 咱们的3DGNN利用2D外观信息和3D几何关系, 它可以捕捉图像中的长距离依赖, 这在传统方法中难以建模. 各类实证结果代表, 咱们的模型在标准RGBD语义分段基准上实现了良好的性能.
未来, 咱们计划调查反馈以调整构造图的结构.