摘要 

单视图3D形状完成或重建的问题具有挑战性,因为在解释观察结果的许多可能形状中,大多数形状令人难以置信,并且不对应于自然物体。 通过使用深度卷积网络的表达能力,该领域的最新研究已经解决了这个问题。 实际上,还有另一个模糊性水平经常被忽略:在合理的形状中,仍然有多个形状可以很好地拟合2D图像; 即,给定单视图输入,地面真值形状是不确定的。 现有的完全监督方法无法解决此问题,并且通常会产生具有平滑表面但没有精细细节的模糊平均形状。 在本文中,我们提出了ShapeHD,通过将深度生成模型与对抗性学习的形状先验相集成来突破单视图形状完成和重建的极限。 学到的先验可作为正则化器,仅当模型的输出不切实际时才对模型进行惩罚,而不是偏离基本事实时对其进行惩罚。 因此,我们的设计克服了上述两个歧义。 实验证明,ShapeHD在多个完整数据集上的形状完成和形状重构方面都远远领先于现有技术。

关键字:形状先验·形状完成·3D重建

1.简介

让我们从一个游戏开始:图1中的两个实例分别显示了深度或彩色图像以及两种不同的3D形状解释。 哪个看起来更好?

我们向Amazon Mechanical Turk上的100个人问了这个问题。 其中59%的人更喜欢飞机的解释A,而35%的人更喜欢汽车的解释A。 这些数字表明,人们对这两种情况的意见分歧,表明这些重建的质量接近,并且其感知差异相对较小。

实际上,每种情况下,其中一种重构是本文介绍的模型的输出,另一种是ground truth形状。 脚注中提供了答案。 本文旨在突破单一深度图像的3D形状完成和单一色彩图像的3D形状重建的极限。研究人员利用巨大的3D数据集[5,60,59]在这些任务[7,52,8]上取得了令人瞩目的进展。 这些方法中的许多方法都是通过使用深度卷积网络来回归可能的3D形状来解决问题的不适定性。 利用深层生成模型的功能,他们的系统学会避免产生难以置信的形状(图2b)。

但是,从图2c中我们可以看出,受过监督训练的网络仍无法建模。 仅从单一角度来看,就有多种自然形状可以很好地解释观测结果。 换句话说,每个观察都没有确定的基础事实。 通过纯监督学习,网络往往会产生平均形状,从而恰好由于这种歧义而使惩罚最小。

为了解决这个问题,我们提出了ShapeHD,它通过将深度体积卷积网络与对抗性学习的形状先验相结合来完成或重建3D形状。 只有在生成的形状不切实际的情况下,学习的形状先验才会对模型进行惩罚,而不是在偏离基本事实的情况下,惩罚模型。 这克服了上面讨论的困难。 我们的模型通过对抗性学习来描述这种自然丧失的特征,对抗性学习是近年来受到极大关注并且仍在迅速增长的研究主题[14,37,57]。

在多个合成和真实数据集上进行的实验表明,ShapeHD在单视图3D形状完成和重建上表现良好,比最先进的系统获得更好的结果。 进一步的分析表明,网络学会了关注有意义的对象部分,而自然性模块的确可以帮助表征随时间变化的形状细节。

2 相关工作

3D形状完成。 形状完成是几何处理中的一项基本任务,具有广泛的应用。 传统方法尝试用局部表面图元完成形状,或将其表述为优化问题[35,44],例如,泊松表面重构通过泊松方程[29,28]求解体素网格上的指示符函数。最近,关于利用形状结构和规则性的论文也越来越多[34,51],以及利用强大的数据库先验知识的论文[46,32,4]。 但是,这些方法通常要求数据库包含形状的精确部分,因此具有有限的泛化能力。

随着诸如ShapeNet [5]等大型形状存储库的发展,研究人员开始开发完全由数据驱动的方法,其中一些方法基于深度卷积网络。 仅举几例,Voxlets [12]使用随机森林来预测未知的体素邻域。  3D ShapeNets [58]使用深度置信网络来获取给定形状数据库的生成模型,Nguyen等人(1998)。  [50]扩展了网格修复的方法。

与我们最相关的论文可能是Dai等人的3D-EPN。  [8]。  3DEPN通过利用3D卷积网络和基于非参数补丁的形状合成方法,通过部分深度扫描在3D形状完成上获得了令人印象深刻的结果。 我们的模型在两个方面比3D-EPN具有优势。 首先,由于自然损失,ShapeHD可以在解释观察结果的多个假设中进行选择,从而重建具有精细细节的高质量3D形状; 相反,没有非参数形状合成的3D-EPN输出通常是模糊的。 其次,我们的完成仅需一次前馈,而无需任何后处理,因此比3D-EPN快得多(<100ms)。

单图像3D重建。 从单个图像恢复对象形状的问题是具有挑战性的,因为它既需要强大的识别系统,又需要先验的形状知识。 作为早期尝试,Huang等。  [21]建议从现有的CAD模型中借鉴形状零件。 随着诸如ShapeNet [5]之类的大规模形状存储库的发展以及诸如深度卷积网络之类的方法的发展,近年来,研究人员已经建立了更具可扩展性和效率的模型[7,13,18,27,36,38,48,52,56,57  ,62]。虽然这些方法大多是从视觉上对体素中的物体进行编码,但也有人试图重建点云[11,15]或八度树[40,49,39]中的物体,或使用触觉信号[53]。
一个相关的方向是估计2.5D素描(例如,深度和曲面法线贴图)。过去,研究人员曾探索过恢复2.5天来自阴影、纹理或彩色图像的草图[2,3,20,47,55,63]。随着深度传感器[23]和更大规模RGB-D数据集[33,42,43]的发展,也有关于深度估计[6,10]、表面法线[1,54]和其他深网络内在图像[25,41]的论文。受MarrNet[56]的启发,我们通过建模重建三维形状2.5D素描,但是为了更高的质量加入了自然性的损失。

Perceptual losses and adversarial learning 研究人员最近提出用感知损失来评估二维图像的质量[26,9]。这种思想已经被应用到许多图像任务中,如样式转换和超分辨率[26,31]。
此外,这一思想被扩展到学习一个知觉损失函数与生成性对抗网(GAN)[14]。GANs在生成性建模过程中加入了一个对抗性的鉴别器,在图像合成等任务中取得了令人印象深刻的性能[37]。Isola等人。[22]和Zhu等人。[65]分别在有监督和无监督的情况下使用GANs进行图像翻译。
在3D视觉中,Wu等人。[57]扩展了用于三维形状合成的GANs。然而,他们的形状重建模型(3D-VAE-GAN)通常会在给定RGB图像的情况下产生一个有噪声的、不完整的形状。这是因为与识别网络联合训练GANs可能非常不稳定。许多其他的研究人员也注意到了这个问题:尽管三维形状空间的对抗性建模可以解决前面讨论的模糊性,但是它的训练可能是一个挑战[8]。当Gwak等人。[17] 探索了用于单幅图像三维重建的对抗网络,并选择使用GANs来建模二维投影,而不是三维形状。然而,这种弱监管的环境阻碍了它们的重建。在本文中,我们通过对三维形状空间的对抗性建模来开发我们的自然度损失,显著优于当前的技术水平。

3 方法

我们的模型由三部分组成:2.5D草图估计器和通过2.5D草图从RGB图像预测三维形状的三维形状估计器(图3-I,II,灵感来自MarrNet[56]),以及如果预测的形状不自然则惩罚形状估计器的深自然度模型(图3-III)。仅在有监督重建损失的情况下训练的模型往往会产生模糊的平均形状。我们学习的自然模型有助于避免这个问题。

2.5D草图估算网络。我们的2.5维草图估计器有一个编码器结构,可以从RGB图像预测物体的深度、表面法线和轮廓(图3-I)。我们使用ResNet-18[19]将256×256的图像编码成512个8×8大小的特征图。译码器由四个转置卷积层组成,核心尺寸为5×5,步长和填充为2。预测的深度和表面法向图像被预测的轮廓掩盖,并作为我们的形状完成网络的输入。

三维形状完成网络。我们的3D估计器(图3-II)是一个编码器网络,可以从2.5D草图的标准视图中预测3D形状。编码器根据ResNet-18[19]进行调整,以将四通道256×256图像(一个用于深度,三个用于表面法线)编码为200-D潜在向量。然后,向量通过五个转置卷积层和ReLU层的解码器生成128×128×128体素化形状。预测体素和目标体素之间的二元交叉熵损失被用作有监督损失的Lvoxel。

3.1 Shape Naturalness Network 

由于单视图三维形状重建固有的不确定性,只有监督损失的形状完成网络通常预测不现实的平均形状。通过这样做,当存在多个可能的地面真值形状时,它们将损失最小化。相反,我们引入了一个经过对手训练的深层自然正则化器,该正则化器惩罚网络的这种不切实际的形状。
我们预先训练了一个3D生成的对抗网络[14],以确定形状是否真实。它的生成器从随机采样的矢量中合成一个三维形状,它的鉴别器将生成的形状与实际形状区分开来。
因此,该判别器具有模拟真实形状分布的能力,可作为形状完成网络的自然损耗。生成器不参与我们以后的培训过程。在3D-GAN[57]之后,我们使用5个带批处理规范化和ReLU的转置卷积层作为生成器,使用5个带泄漏ReLU的卷积层作为鉴别器。
由于三维形状的高维性(128×128×128),GAN的训练变得非常不稳定。为了解决这个问题,我们关注Gullajani等人。[16] 利用Wasserstein-GAN损失和梯度惩罚来训练我们的敌对生成网络。明确地,

其中D是鉴别器,Pg和Pr分别是生成形状和实际形状的分布。最后一项是古拉贾尼等人的梯度惩罚。[16] 是的。在训练过程中,鉴别器试图将总体损失最小化LWGAN。当生成器试图通过方程1中的第一项使损失最大化时,因此我们可以将自然损失定义为,其中Pc是从我们的completion网络重构的形状。

3.2 Training Paradigm

我们分两个阶段训练我们的网络。我们首先分别对模型的三个组件进行预训练。然后,形状完成网络在体素损失和naturalness 损失的情况下进行微调。

我们的2.5D草图估计网络和3D完成网络使用ShapeNet[5]对象渲染的图像进行训练(详见第4.1节和第5节)。我们使用了L2损失和学习率为0.001的SGD训练了120个epochs的2.5D素描估计器。在这个阶段,我们只使用监督损失Lvoxel来训练3D估计器,同样使用SGD,学习率为0.1,80个epochs的动量为0.9。naturalness网络是以对抗的方式训练的,我们使用Adam[30],学习率为0.001,批量大小为4,80个epoch。我们按照Gullajani等人的建议设置λ=10。

然后,我们将体素损失和自然度损失作为L=L voxel+αLnatural来调整我们的完成网络。我们比较了损失梯度的比例,并使用80个epoch的SGD,α=2.75×10-11训练我们的完成网络。我们的模型对这些参数是稳健的;它们只用于确保各种损失的梯度是相同的。另一种方法是利用这两种损耗,从头开始与完成网络联合训练自然度模块。这似乎很诱人,但在实践中,我们发现Wasserstein GANs有很大的损失和梯度,导致不稳定的产出。因此,我们选择使用我们的预训练和微调设置。

4 Single-View Shape Completion 

对于单深度图像的三维形状完成,我们只使用模型的最后两个模块:三维形状估计器和深自然度网络。

4.1Setup

Data。我们以20个随机、完全无约束的视图呈现来自飞机、汽车和椅子类别的ShapeNet Core55[5]对象。对于每个视图,我们随机设置相机的方位角和仰角,但相机上方向向量固定为世界+y轴,并且相机始终注视对象中心。焦距固定在50毫米处,35毫米胶片。我们使用基于物理的图形引擎Mitsuba[24]进行所有渲染。我们使用90%的数据进行培训,10%用于测试。我们在所有20个视图中渲染每个对象的ground truth深度图像。深度值是从相机中心(即光线深度)而不是从图像平面测量的。由于地表法向图是深度扫描的常见副产品,为了逼近深度扫描数据,我们还根据原始深度数据生成了相应的ground truth法向图。我们所有的渲染表面法向量都是在相机空间中定义的。

Baselines。我们与最新技术进行比较:3D-EPN[8].为了确保公平比较,我们将深度图转换为ShapeNet Core55[5]定义的标准全局坐标中注册的部分曲面,这是3D-EPN所要求的。当原始3D-EPN文件通过绘制和融合多视点深度图生成局部观测时,我们的方法以单视点深度图作为输入,解决了一个更具挑战性的问题。

度量  我们使用两种标准的度量标准来进行定量比较:交集(IoU)和倒角距离(CD)。特别是,倒角距离可以应用于各种形状表示,包括体素(通过在等值面上采样点)和点云。

4.2 ShapeNet结果

Qualitative results   在图4中,我们展示了ShapeHD从单视图深度图像预测的三维形状。虽然常见的编码器-解码器结构通常会生成具有少量细节的平均形状,但我们的ShapeHD预测具有较大方差和精细细节的形状。此外,即使深度图像中存在强遮挡,我们的模型也能预测出一个高质量、貌似合理的三维形状,在视觉上看起来很好,并推断出输入图像中不存在的部分。

Ablation。当使用自然度损失时,网络会因产生不合理的平均形状而受到惩罚,但会使监督损失最小化。在图5中,我们展示了从我们的形状中重建的形状,包括自然损失和不自然损失(即在使用自然值进行精确调谐之前),以及由3D-EPN预测的地面真实形状和形状[8]。与3D-EPN的结果相比,我们的结果包含了更详细的信息。同时,随着自然度的降低,形状设计的性能有了很大的提高,预测出更加合理、完整的形状。

定量结果。定量结果见表1。我们的ShapeHD在所有指标上都超过了最新水平。我们的方法输出的形状分辨率为1283,而由3D-EPN生成的形状分辨率为323。因此,为了进行公平的比较,我们将预测形状缩小到323,并在该分辨率中报告两种方法的结果。最初的3D-EPN论文提出了一个后处理步骤,用于检索相似的patch从形状数据库获取更高分辨率的结果。实际上,我们发现一张图片需要18个小时。因此,我们报告两种方法的结果,而不进行后处理。表1还表明,自然度损失提高了完成结果,获得了相当的IoU分数和更好(更低)的CDs。CD更善于捕捉人类对形状质量的感知[45]。

4.3 实际深度扫描的结果

我们现在显示实际深度扫描的ShapeHD结果。我们使用结构传感器(http://Structure.io)捕捉六张不同椅子的深度图,并使用捕捉到的深度图评估我们的模型。所有用作输入的对应法向图都是根据深度测量值估计的。图6显示了ShapeHD在给定一个视图深度图的情况下很好地完成了3D图形。我们的ShapeHD比3D-EPN更灵活,因为我们不需要任何相机内部或外部来注册深度图。在我们的例子中,这些参数都是未知的,因此3D-EPN无法应用。

Learning Shape Priors for Single-View 3D Completion and Reconstruction相关推荐

  1. 论文学习笔记:Learning to Estimate 3D Human Pose and Shape From a Single Color Image

    解决的问题:从单个彩色图像估计人体的姿势和形状 - 一般方法:通过迭代优化 - 存在的问题:卷积网络缺少训练数据.3D预测时分辨率低 本篇论文的工作:提出一个基于卷积网络的高效的直接预测方法来解决上述 ...

  2. 人脸对齐(十九)--Regressing a 3D Face Shape from a Single Image

    Regressing a 3D Face Shape from a Single Image 主要提出了对一张单独的图片进行3D人脸特征点定位的方法.该方法基于一个级联回归框架直接在3D中对人脸特征点 ...

  3. Autolabeling 3D Objects with Differentiable Rendering of SDF Shape Priors

    [CVPR2020] Autolabeling 3D Objects with Differentiable Rendering of SDF Shape Priors 论文地址:https://ar ...

  4. 论文阅读:X-ray2Shape: Reconstruction of 3D Liver Shape from a Single 2D Projection Image

    X-ray2Shape: Reconstruction of 3D Liver Shape from a Single 2D Projection Image X-ray2Shape:从单个2D投影图 ...

  5. 论文阅读(2)3D Human Body Reconstruction from a Single Image via Volumetric Regression

    3D Human Body Reconstruction from a Single Image via Volumetric Regression 论文阅读 Abstract 1 Introduct ...

  6. Single View Metrology 单视图度量衡 复现

    本文作为课程作业记录,仅译出原文Single View Metrology中有关3D视觉理论的部分,而没有译出有关不确定性算法校准的部分. Abstract 本文描述如何通过只给出从图像确定的最小几何 ...

  7. monotouch Single View Application

    创建Single View Application,在AppDelegate中启动完成以后会自动跳转到主页面上. 在不使用Storyboard的情况下,直接创建单个的xib,跳转方式如下: stati ...

  8. Self2Self With Dropout: Learning Self-Supervised Denoising From Single Image【使用单张图像进行自监督学习去噪】

    文章目录 Self2Self With Dropout: Learning Self-Supervised Denoising From Single Image[使用单张图像进行自监督学习去噪] 一 ...

  9. Learning Shape Representations for Clothing Variations in Person Re-Identification

    ##Learning Shape Representations for Clothing Variations in Person Re-Identification

最新文章

  1. Bag of Word
  2. bzoj 3033 太鼓达人——欧拉图搜索
  3. php生成图片验证码代码,PHP生成图片验证码以及点击切换的代码
  4. 如何在Java中将图像上传到DropBox
  5. 【Antlr】Antlr 将 CSV文件 转成Map数据结构
  6. linux中杀死指定进程,Linux中通过 kill命令 杀死指定进程
  7. Deep Q-learning
  8. 怎么用U盘重装系统?
  9. 940mx黑苹果驱动_黑苹果intel网卡驱动方法
  10. 原生开发什么意思_原生APP是什么?选原生开发有哪些优势?
  11. linux 文件修复工具,五款救急的Linux文件恢复软件
  12. Java源文件的编译运行
  13. 北京某牧场管理企业——牧场智慧管理项目
  14. oeasy教您玩转linux010206toilet
  15. JVM--Java虚拟机
  16. 实践出真知:大乱斗游戏
  17. Java Exer0905 玩家1、2互相攻击,直至一方生命值小于零,战斗结束,三局两胜,公布胜方。for循环、while循环、三元运算符、if-else、Scanner
  18. 网页中的th/th是什么意思
  19. SVN图标消失解决方案
  20. 软件开发中 前台、中台、后台英文_一个微服务业务系统的中台构建之路

热门文章

  1. 如何用好埋点中的数据
  2. 医药电商、线上药房、连锁药店、用药咨询、药箱补货、药师认证、分销商、合伙人、医生管理、诊所管理、处方药、收银、发票、电子会员卡、门店调拨、提成分销、问诊咨询、积分、顾客、流程图、业务逻辑、营销、优惠
  3. Windows 10 上强制Visual Studio以管理员身份运行
  4. mongodb 连接失败
  5. 数组引用--冒泡排序 数组倒置为例
  6. 实现Serclet(1)
  7. 记次浙大月赛 134 - ZOJ Monthly, June 2014
  8. 求关于运动的英语(收集)
  9. 多个构造器参数使用构建器
  10. CSS3 选择器(Selector)