原文章:https://www.yuque.com/lart/papers/wmu47a
主要针对的任务是RGBD语义分割, 不同于往常的RGB图像的语义分割任务, 这里还可以更多的考虑来自D通道的深度信息. 所以对于这类任务需要联合2D外观和3D几何信息来进行联合推理.
关于将深度信息编码为图像的方法有以下几种:
之后FCN直接在编码图像上进行特征提取.
关于如何进行RGBD图像的分割, 以往有的工作主要有以下的几种方法:
为了处理上述挑战, 文章提出了一个端到端的3D图神经网络, 这直接从3D点中学习表示.
当前很多工作已经努力将神经网络推广到图数据上.
一个方向是将卷积神经网络(CNN)应用于图. 在谱方法中, CNN用于依赖于拉普拉斯矩阵的谱域. 然而[6]使用哈希函数, 因此可以将CNN应用于图. 另一个方向是将神经网络循环应用于图的每个节点, 产生了“图形神经网络”. 该模型包括一个传播过程, 它类似于图模型的消息传递. 这种模型的最终学习过程可以通过BPTT算法来实现.
这里使用的消息传播模型的图神经网络, 基础更新公式为:
其中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语义分段基准上实现了良好的性能.
将来, 我们计划调查反馈以调整构造图的结构.