摘要
负担得起的便携式深度传感器的可用性使扫描物体和人员比以往任何时候都更加简单。 但是,处理遮挡和缺失部分仍然是一个重大挑战。 近年来,从单个或多个部分扫描重建3D对象(可能非刚性移动)的问题日益受到关注。 在这项工作中,我们提出了一种新颖的基于学习的方法来完成局部形状。 与大多数现有方法不同,我们的方法着重于可能经历非刚性变形的物体。 带有图卷积运算的变式自动编码器的核心,它学习了完整逼真的形状的潜在空间。 推断时,我们进行优化以在此潜在空间中找到最能将生成的形状拟合到已知部分输入的表示形式。 完成的形状在未知部分上表现出逼真的外观。 我们对完成人体和面部网格的合成和真实扫描的完成显示出有希望的结果,这些网格和网格显示了不同的关节运动和局部风格。
1 引言
从局部观察重建3D形状的问题对于从虚拟和增强现实到机器人技术和自主导航的广泛应用来说是至关重要的。 特别令人感兴趣的是物体可能会经过关节或更普遍地发生非刚性变形的环境。 虽然已经提出了几种基于(体积)卷积神经网络的方法来完成人造刚性物体(请参见[12、51、55、61、49]),但它们在处理可变形形状方面遇到了困难。 但是,这不是特定于体积方法的限制。 对于深度学习框架中使用的其他3D形状表示,例如基于视图的[52,59]和点云[42,43],存在与可变形形状相同的困难,而与完成任务无关。 这主要是因为对于基于欧几里德卷积运算的方法(例如基于体积或基于视图的深度神经网络),隐含了在刚性变换(大多数情况下为轴对齐)下自相似相似性的假设.例如,椅座将始终平行于地板。 非刚性变形违反了这一假设,有效地使每个姿势构成了一个新颖的对象。 因此,使用标准CNN处理此类数据需要许多网络参数和大量训练。 尽管基于模型的方法(如[2])表现出良好的性能,但它们仅限于具有手动构建模型的特定形状类。
为了明确地实现对非刚性变形的鲁棒性,本文提倡的方法采用了直接利用3D网格结构的图上CNN的最新进展。 这允许在没有明确模型的情况下从数据中学习强大的非刚性形状表示。
深度学习形状completion技术的另一个缺点源于它们的端到端设计。 训练为执行完成工作的网络将偏向于训练时引入的丢失数据的类型,并且可能不会泛化以前从未见过的信息丢失类型。 为了使一般化为任何形式,我们选择将completion任务与训练过程完全分开。 因此,我们还需要对训练数据进行通常大量的预处理和扩充。
最后,当需要一个完整的网格作为输出时,从点云或体积网格生成三角剖分本身就是一个挑战性的问题,并且可能会引入不需要的伪影(尽管最近的发展,例如[12]可以通过直接生成隐式表面来解决)。 相反,通过利用网格卷积网络,我们的方法将通过设计产生完整且合理的曲面。
贡献。 这项工作的主要贡献是一种可变形的形状完成方法,该方法使部分形状完成的任务与学习生成形状模型的任务脱钩,为此,我们介绍了一种新颖的图卷积自动编码器体系结构。 与以前的工作相比,该方法具有许多优点。 首先,它可以处理任何样式的局部性,而无需在训练过程中看到任何局部形状。该方法不限于特定的形状类别(例如人类),并且可以应用于任何种类的3D数据。 第三,形状完成是一个固有的不适定问题,可能存在多个有效的拟合数据的解决方案(对于铰接和可变形的形状尤其如此),从而使确定性解决方案不足。 所提出的方法通过产生多个合理的解决方案来反映问题的内在模糊性。
2.相关工作
3D形状完成。 本文涉及的应用是计算机视觉和图形学中非常活跃的研究领域,范围从小孔[48]的完成和单个对象[1、45、55、61、49]的较大缺失区域到整个场景[ 51]。 已经探索了由几何先验指导的完成,例如泊松填充[22]和自相似[27、48、32]。 但是,此类方法仅适用于较小的缺失区域,并且处理较大的遮挡需要更先验。 一种可行的替代方法是基于模型的方法,其中描述对象的某些类的可变性的参数可变形模型可以适合观察到的数据[4,16]。
非刚性形状完成的设置与其刚性对应的设置不同之处在于,推断时,输入的局部形状可能允许在训练数据中看不到变形。 随着较大的缺失区域迫使先验条件变得更加复杂,这种区别变得至关重要(例如,参见[2]中设计的人体模型)。
非刚性形状的生成方法。 随着变量自动编码器(VAE [25]),生成对抗网络[18]和相关变量(例如VAEGAN [29])的引入,生成建模的最新技术迅速发展。 这些进步已被3D形状分析社区所采用,用于通过VAE [28]生成动态表面,并通过VAEGAN [60]生成图像到形状。 在[53]中,提出了一种非刚性形状误差的VAE。 这项工作与我们的工作有所不同,因为我们网络的核心操作是图卷积操作,而不是完全连接的层,并且我们的网络直接在原始3D顶点位置上运行,而不是依靠手工制作的功能。
几何深度学习。 本文与几何深度学习的广泛研究紧密相关(有关摘要,请参见[9])。深度学习(特别是卷积架构[30])在计算机视觉中的成功引起了计算机图形界的浓厚兴趣,他们希望将这种进展复制给处理几何3D数据的应用程序。 关键难题之一是,对于此类数据,需要非常谨慎地定义构成深度神经网络的基本操作,例如卷积和池化。
多项工作通过使用3D形状的欧几里得表示来避免此问题,例如渲染2D视图[52、59],体积表示[61]或点云[42、43]的集合。 这种外部深度学习方法的主要缺点之一是它们难以处理形状变形,如前所述。 另外,体素表示通常会占用大量内存,并且分辨率较差[61],尽管最近的模型已经提出来解决这些问题:隐式表面表示[12],稀疏八叉树网络[57、44],补丁级别的编码器/解码器CNN 几何优化[19],以及长期递归CNN,用于对粗略形状进行升采样[58]。 关于点云表示,PointNet模型[42]将相同的操作应用于每个点的坐标,并汇总此局部信息,而无需在不同点之间进行交互,从而难以捕获局部表面属性。 PointNet ++ [43]通过提出空间层次模型来解决这个问题。 另外,为使PointNet不变于刚性变换,将输入点云与规范空间对齐。 这是通过一个预测适当的仿射变换的小型网络来实现的,但是通常,这种对齐方式对于铰接和可变形的形状来说是困难的。
另一种策略是以几何上有意义的或固有的方式重新定义深度神经网络的基本成分。 第一种用于3D形状的固有CNN类型架构是基于局部制图技术,将“补丁”的概念推广到非欧几里得和不规则采样域[35,7,36]。 这种方法的主要优点是,广义卷积运算是在流形上固有地定义的,因此自动对其等轴测变形保持不变。 结果,固有的CNN能够以显着更少的参数和非常小的训练集获得对应结果。 相关的独立工作为通用图[10、20、13、26、36、31]开发了CNN型架构。
最近,[56]提出了一种动态滤波器,其中每个滤波器对图形邻域中k环的每个成员的分配都由其特征值确定。 重要的是,该方法展示了直接在嵌入功能上发挥作用的最新性能。 因此,在工作中我们会为卷积运算构建[56]基础构建块。
部分形状对应。 密集的非刚性形状对应[23、11、33、47、8]是一项基本挑战,因为它是许多高级任务(例如跨表面的姿势或纹理转移)的促成因素。 我们请有兴趣的读者阅读[54,3]以获取有关文献的详细评论。 在这项工作中,所提出的方法建立在部分输入和同一类别的规范形状之间的对应关系的基础上,与此相关的是探索部分形状对应和匹配的几种方法[46、36、34]。 在部分人体形状上展示最先进性能的方法(例如[36])将对应关系视为顶点分类任务。 最近[59]在不同的人体姿势和衣服上对应不同的人类对象显示出令人印象深刻的结果。
修补。 3D形状完成任务与图像修复的类似结构化预测任务密切相关[41,62]。 但是,我们提出的优化方案更让人联想到样式转换[15]技术。 在我们的设置中,我们仅对最佳完整形状进行优化,而对内部特征表示没有任何限制。
3.方法
我们提出了一种shape completion方法,该方法将生成3D形状学习过程从部分形状完成任务中分离出来。 我们的方法需要一个完整的3D形状的生成模型,该模型可以通过训练图卷积变分自编码器(VAE [25])来构建。 通过确定VAE发生器的输出空间中与输入部分最匹配的形状,可以完成部分形状。 我们提出了一种在潜在空间中进行优化的方法,该方法可迭代地(非刚性地)变形随机生成的形状以与部分输入对齐。 在下文中,我们将更详细地描述过程的组成部分,VAE发生器和部分形状完成方案。 该方法的示意图如图1所示。
3D shape generator。 将顶点数N和参考形状的拓扑进行固定,然后将三维顶点嵌入X∈R3×N作为形状。 VAE由两个网络组成:将3D形状输入X编码为潜在表示向量z = enc(x)的编码器,以及将潜在向量解码为3D形状X0 = dec(z)的解码器。 变分分布q(z | X)与潜在变量的先验分布相关,这里我们遵循的通常选择是中心变分高斯,单位变分为N(0,I)。我们的VAE损失结合了形状重建损失鼓励编码器/解码器对近似身份转换,由Kullback-Leibler散度测量的正则化先验损失
。总的VAE损失计算为L = Lr +λLp,其中λ≥0控制变化分布与先前的相似度。
用点到点距离测量形状重构损失并不是唯一的选择。 例如,可以将VAE与[29,60]中的创生对抗网络(VAE-GAN)结合,从而在重构形状上引入额外的鉴别器损失。 我们不会在此工作范围内考虑使用判别器来避免额外的模型复杂性,而应将其留作未来工作,以研究可对重构形状施加的不同损失函数。
通过选择3D形状表示形式,很大程度上影响了VAE编码器enc(X)和解码器dec(z)的内部细节。 如第2节所述,从体素到原始点云,已经探索了许多表示形式。 我们希望将重点放在可变形对象类的形状完成上,这导致我们考虑在其他应用程序中,对于可变形形状的对应关系,应考虑内在因素手表面模型尽管显示出有希望的结果(例如[35,36])。 已经提出了多种方法来对空间网格进行卷积。 区分空间图卷积运算的主要因素是如何确定卷积滤波器和局部图邻域之间的对应关系。 我们不依靠底层几何的属性将过滤器映射到表面patch,而是采用数据自适应模型来学习从邻域patch到过滤器权重的映射。 具体来说,我们的VAE主要由FeaStNet [56]中提出的动态过滤卷积层组成。 图层的输入是网格顶点上的特征向量场,将向量xi附加到顶点i上。 输出也是一个向量域yi,可能具有不同的维数,计算如下
其中Ni表示围绕顶点i的面片,而是面片中的正边缘权重,归一化为m之上的和。 可训练的层权重分别为Wm,um,cm和b,而重量矩阵M则是固定的设计参数。 注意,从邻域patch到权重转换的映射在输入特征空间不变,因为q仅对差xi -xj起作用。 有关更多详细信息,请参见图1和[56]。
Partial shape completion。 一旦编码器/解码器对被编码,编码器就本质上被抛弃,而解码器则充当一个完整的形状生成器,将每个输入潜矢量z和R3嵌入参考形状相关联,X = dec(z)。重要的是,这可以作为先验形状,生成合理的外观形状(见图2)。 根据推断,给出局部形状Y。 我们首先使用现成的方法(MoNet)[36]计算Y与参考形状之间的密集局部本征对应关系。 将此对应关系表示为部分置换矩阵Π并将其应用于解码器生成的任何形状X,会在R3中生成点的子集(XΠ),并与它们的对应部分在Y中进行有序匹配。因此,我们定义了输入形状与生成的完整形状之间的非固有差异,D(X,Y)= kX-Yk 每个点上对应关系的置信度。
推理主要由寻找潜在矢量来最小化输入形状和输出形状之间的不相似度
,其中T表示刚性变换 。 在z(非刚性变形)和T(刚性配准)上执行交替步骤。 当使用l2范数来定义形状不相似性时,刚性配准步骤通过Y和XΠ协方差矩阵的奇异值分解而具有封闭形式的解,而非刚性变形步骤是使用随机梯度下降执行的。
Shape completion是一个固有的问题,可以有多个合理的解决方案。 如果存在与数据一致的解决方案,则对我们提出的生成模型的结果进行采样可以使我们探索这一空间。 第4.2节中的结果说明了通过随机初始化重复优化过程(2)时完整形状的可变性。
5,结论和未来工作
本文介绍了一种新颖的图卷积方法来完成形状。 它的重要属性包括对非刚性变形具有鲁棒性的模型,训练时样本复杂度小以及能够重建任何样式的缺失数据的能力。 评估表明,这是从现实世界的扫描走向完成形状的有希望的第一步,并且分析揭示了未来工作的方向。 首先,探索一种解开形状和姿势的表示法,以便在完成时进行形式控制,并可能改善动态融合结果。 其次,对于初始化,我们需要部分形状模型和规范形状模型之间的对应关系。 尽管我们显示出对不良通信的抵御能力,但改善对嘈杂的现实世界数据的初始化将是有益的。 最后,提出的公式假设在解码形状时已知所需的形状拓扑(即,顶点连通性)。 让未来的工作完成未知拓扑的任务。