【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软)

这篇具有很好参考价值的文章主要介绍了【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

题目: Make-It-3D: High-Fidelity 3D Creation from A Single Image with Diffusion Prior
Paper: https://arxiv.org/pdf/2303.14184.pdf
Code: https://make-it-3d.github.io/



前言

在本文中,研究者的目标是:从一个真实或人工生成的单张图像中创建高保真度的3D内容。这将为艺术表达和创意开辟新的途径,例如为像Stable Diffusion这样的前沿2D生成模型创建的幻想图像带来3D效果。通过提供一种更易于访问和自动化的创建视觉上惊人的3D内容的方法,研究者希望吸引更广泛的受众加入到轻松的3D建模世界中来。
【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

本文探讨了仅使用单张图像创建高保真度3D内容的问题。这本质上是一项具有挑战性的任务,需要估计潜在的3D几何结构,并同时产生未见过的纹理。为了解决这个问题,论文利用训练好的2D扩散模型的先验知识作为3D生成的监督Make-It-3D采用两阶段优化pipeline:第一阶段通过在前景视图中结合参考图像的约束和新视图中的扩散先验来优化神经辐射场;第二阶段将粗略模型转化为纹理点云,并利用参考图像的高质量纹理,结合扩散先验进一步提高逼真度。大量实验证明,论文的方法在结果上显著优于先前的方法,实现了预期的重建效果和令人印象深刻的视觉质量。论文是第一个尝试从单张图像为一般对象创建高质量3D内容的方法,可用于text-to-3D的创建和纹理编辑等各种应用。


提示:以下是本篇文章正文内容

一、方法

论文利用了文本-图像生成模型文本-图像对比模型的先验知识,通过两阶段(Coarse Stage和Refine Stage)的学习来还原高保真度的纹理和几何信息,所提出的两阶段三维学习框架如图所示。

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

1.第一阶段 Coarse Stage: Single-view 3D Reconstruction

作为第一阶段,论文从单一参考图像 x 重建一个粗糙的NeRF,以扩散先验约束新的视角。优化的目标是同时满足以下要求:

1.优化后的三维表示应该与输入观测x在参考视图上的渲染结果非常相似
2.新视图渲染应该显示与输入一致的语义,并尽可能可信
3.生成的3D模型应该表现出引人注目的几何形状
鉴于此,论文对参考视图周围的相机姿态进行随机采样,并对参考视图和未可见视图的渲染图像 gθ 施加以下约束:

1.参考点的像素损失 Reference view per-pixel loss

优化后的三维表示应该与输入观测 x 在参考视图上的渲染结果非常相似,因此惩罚NeRF渲染图像和输入图像之间的像素级差异:
【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d
其中使用前景matting mask m 来分割前景。

2.扩散模型先验 Diffusion prior

新视图渲染应该显示与输入一致的语义,为了解决这个问题,论文使用一个图像字幕模型,为参考图像生成详细的文本描述 y。有了文本提示 y,可以在Stable Diffusion的潜空间上执行LSDS (利用text conditioned扩散模型作为3D感知先验),度量图像和给定文本提示符之间的相似性:

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

虽然 LSDS 可以生成忠实于文本提示的3D模型,但它们并不能与参考图像完全对齐(参见上图中的baseline),因为文本提示不能捕获所有的对象细节。因此,论文额外添加一个扩散CLIP损失,记为LCLIP-D ,它进一步强制生成的模型来匹配参考图像:

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

具体来说,论文并没有同时优化LCLIP-DLSDS 。论文在小timesteps使用LCLIP-D ,在大timesteps切换到LSDS 。结合LSDS和LCLIP-D,论文的扩散先验确保了生成的3D模型在视觉上是吸引人的和可信的,同时也符合给定的图像(见上图)。

3.深度先验 Depth prior

此外,模型仍然存在形状模糊,从而导致诸如凹陷面、过平面几何或深度模糊等问题(见图3)。为了解决这个问题,论文使用一个现有的单目深度估计模型来估计输入图像的深度 d 。为解释d 中的不准确性和尺度不匹配,论文正则化了NeRF在参考视点上的估计深度 d(βref) 和单目深度 d 之间的negative Pearson correlation,即:

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

4.训练整体 Overall training

最终总的损失可以表述为LdepthLrefLCLIP-DLSDS 的组合。为了稳定优化过程,论文采用了渐进式训练策略,在参考视图附近从一个狭窄的视图范围开始,在训练过程中逐渐扩大范围。通过渐进式的训练,论文可以实现一个360°的物体重建,如上图所示。

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

2.第二阶段 Refine Stage: Neural Texture Enhancement

在coarse stage,我们获得了一个具有合理几何形状的3D模型,但通常显示出粗糙的纹理,可能会影响整体质量。因此,需要进一步细化以获得高保真度的3D模型。

论文的主要思路是在保留粗糙模型几何形状的同时,优先进行纹理增强。我们利用新视角和参考视角中可观察到的重叠区域,来将参考图像的高质量纹理映射到3D表示中。然后,论文着重于增强参考视角中被遮挡区域的纹理。为了更好地实现这一过程,论文 将 NeRF 导出到显式表示形式——点云(虽然NeRF 作为一种粗糙表示,可以连续处理拓扑变化,但将参考图像投影到它上是具有挑战性的)。与Marching Cube导出的噪声网格相比,点云提供了更清晰和更直接的投影

1.Textured point cloud building 纹理点云构建

构建点云的一个简单尝试是从NeRF渲染多视图的RGBD图像,并将它们提升到3D空间中的纹理点。然而,我们发现这种简单的方法由于不同视图之间的冲突导致噪声点云:在不同视图[56]下,三维点在NeRF渲染中可能具有不同的RGB颜色。因此,我们提出了一个迭代策略来从多视图观测中建立干净的点云。如下图所示,我们首先根据NeRF的渲染深度D(βref)和alpha掩模M(βref)从参考视图βref 中构建点云,

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

其中RrefK 为相机的外在矩阵和内在矩阵,P表示深度到点的投影。这些点在参考视图下是可见的,因此可用GT 纹理着色。对于其余视图βi的投影,必须避免引入与现有点重叠但颜色冲突的点。为此,我们:

  1. 将现有的点V(βref)投影到新的视图βi中,以产生βi视角的伪掩模 Mref(βi)
  2. 以这个掩模作为指导,我们只 lift 那些尚未观察到的点V(βi),如图5所示。
  3. 然后用NeRF渲染G(βi)中的粗糙纹理初始化这些看不见的点(也就是第一阶段产生的βi视角的结果 M(βi))。两者相减 M(βi)- Mref(βi),就得到 原始输入得到的点云中,看不见的背后点的mask。将其映射成3维点,再补充到 visible points 中。

2.Deferred point cloud rendering 延迟点云渲染

到目前为止,我们已经建立了一组纹理点云V = {V(βref)、V(β1)、…,V(βN)}。虽然 V(βref) 已经有了从参考图像投影出来的高保真纹理,但在参考视图中被遮挡的其他点仍然遭受了来自粗糙NeRF的平滑纹理,如下图所示。为了增强纹理,我们优化了其他点的纹理,并使用扩散先验约束了新视图渲染。具体来说,我们为每个点优化了一个19维的描述符F,它的前三个维度是用初始的RGB颜色初始化的

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

为了避免噪声颜色和 bleeding 伪影[2],我们采用了多尺度延迟渲染方案:给出一个新的视图β,我们对点云V进行K次栅格化,得到K个不同大小为 [W/2i,H/2i ] 的特征映射 Ii,其中i∈[0,K)。然后,这些特征映射被拼接起来,并使用一个联合优化的U-Net渲染器Rθ 渲染成一个图像 I

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d
其中S是一个可微点光栅化器。纹理增强过程的目标类似于在第二节中讨论的几何创建。3.2,但是我们还包括了一个正则化术语,它惩罚优化纹理和初始纹理之间的巨大差异。

二、实验

1.实施细节

NeRF渲染。我们使用 Instant NGP 的多尺度哈希编码在粗优化阶段实现NeRF表示,较少计算代价。与Inestist-NGP类似,我们维持了一个占用网格,通过跳过空白空间来实现有效的射线采样。此外,我们在渲染图像上采用了一些阴影增强,如Lambertian 和 normal阴影。

点云渲染。对于延迟渲染,我们使用 具有gated 卷积的 2D U-Net 架构。点描述符的维度为19,其中前3个维度初始化RGB颜色,其余维度随机初始化。我们还为背景设置了一个可学习的描述符。

相机设置。我们以75%的概率随机抽样新的视图,并以25%的概率抽样预定义的参考视图。我们还在使用NeRF渲染时随机放大FOV。

分数蒸馏采样。我们在200到600之间随机抽样t,并根据时间步长将w (t)设置为均匀加权。我们还使用了无分类器的指导和指导权重ω:【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d
。我们的方法旨在将创建的三维模型与输入图像对齐,并使用引导权重ω = 10。

训练速度。Adam ,两阶段学习率都为0.001。粗阶段在100×100的渲染分辨率下训练5000次迭代;精细化阶段将以800×800的渲染分辨率再进行5,000次迭代。在一个特斯拉32GB V100 GPU上,训练大约2个小时。

测试基准。我们建立了一个由400张图像组成的测试基准,包括真实图像和由stable diffusion 生成的图像。基准测试中的每个图像都伴随有前景alpha掩码、估计深度映射和文本提示。对真实图像的文本提示从图像标题模型中获得。

2.与SOTA模型的比较

基线 。我们将我们的方法与五种有代表性的基线进行了比较。1) DietNeRF ,一个few-shot 的NeRF。我们用三个输入视图来训练它。2) SinNeRF ,一种单视图NeRF方法。3) DreamFusion由于它最初是基于文本提示的,我们也在参考视图中进行了修改,称为DreamFusion+,以进行公平比较。4)Point-E,基于图像的点云生成。5)3D-Photo,基于深度的图像扭曲和内部 inpaint 方法。

定性比较。我们首先将我们的方法与三维生成基线进行比较,其中DreamFusion++利用二维扩散作为3D先验,而PointE是一个三维扩散模型。如图7所示,他们生成的模型不能与参考图像对齐,并且遭受纹理平滑。相比之下,我们的方法产生了高保真的三维模型与精细的几何形状和真实的纹理。图8显示了对新视图合成的额外比较。由于SinNeRF和由于缺乏多视图监督,DietNeRF在重建复杂对象时遇到了困难。三维照片无法重建底层的几何图形,并在大视图中产生可见的伪影。相比之下,我们的方法在新颖的视角下实现了非常忠实的几何形状和视觉上令人愉悦的纹理。
【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d

【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软),3d


总结

我们介绍了Make-It-3D,一种新的两阶段方法,从一个创建高保真三维内容的单一图像。利用扩散先验作为3D感知监督,生成的3D模型显示出 faithful 的几何形状和真实的纹理与扩散剪辑损失和纹理点云增强。Make-It-3D 适用于一般对象,赋予多用途迷人的应用。我们相信,我们的方法在将2D内容创建的成功扩展到3D方面迈出了一大步,为用户提供了一个全新的3D创建体验。文章来源地址https://www.toymoban.com/news/detail-648003.html

到了这里,关于【三维生成】Make-it-3D:diffusion+NeRF从单张图像生成高保真三维物体(上交&微软)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于3D Gaussian Splatting与NeRF实现三维重建(使用IPhone创建数据集)

    本项目参考YouTube中博主( Spectacular AI ) 详细可了解:SpectacularAI官网 本文项目构建在Windows与Ubuntu中,二者在项目构建中并未有实质性的差距,可相互参考环境与参数的配置,本文即在Windows11(已配置好CUDA)中进行。 Windows下配置CUDA的方法可参考 :《TensorFlow-GPU-2.4.1与CUDA安

    2024年01月17日
    浏览(39)
  • 【AIGC-图片生成视频系列-4】DreamTuner:单张图像足以进行主题驱动生成

    目录 一. 项目概述 问题: 解决: 二. 方法详解 a) 整体结构 b) 自主题注意力 三. 文本控制的动漫角色驱动图像生成的结果 四. 文本控制的自然图像驱动图像生成的结果 五. 姿势控制角色驱动图像生成的结果 2023年的最后一天,发个文记录下。马上就要迎来新的一年,在这里预

    2024年02月03日
    浏览(39)
  • 数字人解决方案——Champ单个视频单张图像生成可控且一致的人体视频生成

    Champ是阿里巴巴集团、南京大学和复旦大学的研究团队共同提出了一种创新的人体动画生成技术,Champ能够在仅有一段原始视频和一张静态图片的情况下,激活图片中的人物,使其按照视频中的动作进行动态表现,极大地促进了虚拟主播和其他虚拟角色生成技术的发展。 Cham

    2024年04月10日
    浏览(31)
  • DreamTalk:单张图像即可生成逼真人物说话头像动画,助力AI数字人落地

    “ DreamTalk: When Expressive Talking Head Generation Meets Diffusion Probabilistic Models ” DreamTalk是一个基于扩散的音频驱动的富有表现力的说话头生成框架,可以生成不同说话风格的高质量的说话头视频。DreamTalk对各种输入表现出强大的性能,包括歌曲、多语言语音、噪声音频和域外肖像。

    2024年04月15日
    浏览(32)
  • 利用弱监督学习实现从单张图像到图像集的准确3D人脸重建:PyTorch和Python的深度实践

    在这篇文章中,我将带你走进3D人脸重建的世界,并介绍如何使用弱监督学习从单张图像或图像集中准确重建3D人脸。我们将使用Python和PyTorch,一种广泛用于深度学习的开源框架,来实现这一目标。 3D人脸重建是计算机视觉领域的一项重要任务,它旨在从2D图像中恢复出3D脸部

    2024年02月16日
    浏览(36)
  • 3d场景重建&图像渲染 | 神经辐射场NeRF(Neural Radiance Fields)

         NeRF(Neural Radiance Fields,神经辐射场)是一种用于 3D场景重建和图像渲染 的深度学习方法。它由Ben Mildenhall等人在2020年的论文《NeRF: Representing Scenes as Neural Radiance Fields for View Synthesis》中首次提出。NeRF通过学习场景的连续体积密度和颜色分布, 能够从任意视角准确地渲

    2024年03月17日
    浏览(63)
  • 更有效地将2D图像转换成3D场景 – 在Adreno GPU上使用Vulkan进行Mobile Nerf渲染

    Snapdragon 和 Qualcomm 品牌产品是 Qualcomm Technologies, Inc. 和 /或其子公司的产品。 假设您刚刚度假回来,带回来几十张从不同角度拍摄的埃菲尔铁塔、泰姬陵或米开朗基罗大卫的照片。如果您希望再“虚拟地”逛一逛这些景点,该怎么办呢?这需要拼接所有的 2D 图像,创建一个

    2024年04月15日
    浏览(29)
  • RSD的伪三维(3D)遥感图像

    李国春 3D对象的背后是3D模型,用点面数据描述现实世界的物体,通过材质视角光线等条件的渲染得到比较逼真的展示效果。但这里给大家介绍的伪3D则不然,将通常的遥感影像加上高程数据,不使用3D对象模型,实现一种自顶向下观察的模拟立体效果。 RSD的伪3D图像是常用的

    2024年02月09日
    浏览(28)
  • Python三维图像的绘制以及相关图例添加(3D图像 - 图例)

    此部分自行完成,预先准备好需要的数据即可。 本例子实现的是:要在4*4的格子里面的3个格子里分别绘制3条不同颜色的图形。 (为了更加直观,绘图相关的程序不使用循环) (为了更加直观,绘图相关的程序不使用循环) 可以看到3维柱形是通过ax.bar3d()函数设置的, 其中传入的

    2024年02月11日
    浏览(29)
  • 三维人脸实践:基于Face3D的人脸生成、渲染与三维重建 <一>

    git code: https://github.com/yfeng95/face3d paper list: PaperWithCode 该方法广泛用于基于三维人脸关键点的人脸生成、属性检测(如位姿、深度、PNCC等),能够快速实现人脸建模与渲染。推荐!!! 相机坐标下的人脸变换 光照渲染 3DMM模型 提示:对于初学者来说,作者强烈建议按照这个顺

    2024年01月21日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包