数字文艺复兴来了:英伟达造出「AI版」米开朗基罗,实现高保真3D重建
在科技周边实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《数字文艺复兴来了:英伟达造出「AI版」米开朗基罗,实现高保真3D重建》,聊聊,希望可以帮助到正在努力赚钱的你。
对通过基于图像的神经渲染来恢复密集的 3D 表面,神经表面重建已被证明是可行的。然而,目前的方法很难恢复真实世界场景的详细结构。
为了解决这个问题,英伟达和约翰霍普金斯大学发布了一项研究,开发了一种命名为 Neuralangelo(即神经朗基罗)的模型,其可以将 2D 视频片段重建成细节丰富的 3D 结构,比如生成建筑、雕塑和其它现实物体的逼真虚拟复制品。
- 项目网站:https://research.nvidia.com/labs/dir/neuralangelo/
- 论文地址:https://research.nvidia.com/labs/dir/neuralangelo/paper.pdf
- 附加材料:https://research.nvidia.com/labs/dir/neuralangelo/supplementary.pdf
这项研究已入选 CVPR 2023。英伟达在其官方博客上使用了「数字文艺复兴」来形容这项研究,足见其潜在的重要价值。
正如米开朗基罗能用大理石雕刻出令人惊叹、栩栩如生的作品,英伟达宣称 Neuralangelo 生成的 3D 结构也带有精细的细节和纹理。创意专业人士可以将这些 3D 对象导入到设计应用中,进一步编辑它们来创造艺术作品、开发视频游戏、创造机器人和产业数字人应用。
Neuralangelo 能将复杂的材料纹理(比如屋顶瓦、玻璃板和光滑大理石)从 2D 视频转译到成 3D 结构,其能力已经显著超越之前的方法。其具有非常高的保真度,让开发者和创意专业人士能更轻松地快速创建可用的虚拟对象,而所需的材料不过是用手机拍摄的一段视频。
该研究的作者之一同时也是一位高级研究主管的 Ming-Yu Liu 表示:「Neuralangelo 具备的 3D 重建能力将能极大地造福创作者,帮助他们在数字世界中创建出现实世界。这一工具最终能让开发者将细节丰富的对象 —— 不管是小型雕像还是大型建筑 —— 导入到虚拟环境中,进而用于视频游戏或产业数字孪生人。」
英伟达给出了一段演示视频,可以看到该模型既能重建出米开朗基罗那著名的大卫雕像,也能重建出日常可见的平板卡车。Neuralangelo 还能重建出建筑的内部和外部 —— 视频中给出了英伟达的湾区公园的详细 3D 模型。
下面我们来看看 Neuralangelo 的具体方法和论文中的一些实验结果。
方法
Neuralangelo 采用了实时 NGP 作为底层 3D 场景的一种神经 SDF 表征,并通过神经表面渲染根据多视角图像观察进行优化;其中 NGP 是指 Neural Graphics Primitives(神经图形基元);SDF 是指 signed distance function(有符号的距离函数)。为了充分释放多分辨率哈希编码的潜力,英伟达研究者提出了两大发现。一,使用数值梯度来计算高阶导数对实现优化稳定来说至关重要,比如用于程函正则化(eikonal regularization)的表面法线。二,为了重建出不同细节程度的结构,需要一种渐进式的优化方案。研究者将这两种思路组合到了 Neuralangelo 中,实验也证明了这样做确实可行,能极大提升神经表面重建的重建准确度和视图合成质量。
Neuralangelo 重建场景的密集结构使用的是多视角图像。它会跟随相机视角方向采样 3D 位置,并使用一种多分辨率哈希编码来对这些位置进行编码。编码后的特征会被输入一个 SDF MLP 和一个颜色 MLP,以使用基于 SDF 的体积渲染来合成图像。
数值梯度计算
研究者表示,有关哈希编码位置的解析梯度会受到局部性的影响。因此,优化更新只会传递给局部哈希网格,缺乏非局部的平滑性。针对这种局部性问题,英伟达提出了一种简单的补救方案:使用数值梯度。图 2 给出了该方法的概况。
图 2:为高阶导数使用数值梯度可将反向传播更新散播到局部哈希网格单元之外,由此变成解析梯度的一种平滑化版本。
SDF 有一种特殊性质:其在单位范数的梯度方面是可微的。SDF 的梯度几乎在所有地方都满足程函方程(eikonal equation)。为了迫使经过优化的神经表征成为可行的 SDF,通过会在 SDF 预测结果上施加一个程函损失。
为了实现端到端优化,需要在 SDF 预测结果上使用一种双重反向操作。
在计算 SDF 的表面法线时,人们事实上采用的方法就是使用解析梯度。但是,在三线性插值(trilinear interpolation)下,与位置相关的哈希编码的解析梯度在空间上不是连续的。为了找到体素网格中的采样位置,需要首先根据网格分辨率对每个 3D 点进行缩放。
哈希编码的导数是局部的,即当 3D 点越过网格单元边界时,对应的哈希项将会不同。因此,前述的程函损失就只会反向传播到本地采样的哈希项。当连续表面(比如平墙)横跨多个网格单元时,这些网格单元应当产生连贯一致的表面法线,而不该有突然的过渡。为了确保表面表征中的一致性,需要对这些网格单元进行联合优化。但是,解析梯度却受限于局部网格单元,除非对应的网格单元碰巧能被同时采样和优化。但我们很难保证总是能够这样采样。
为了克服哈希编码的解析梯度的局部性问题,英伟达提出的方案是使用数值梯度来计算表面法线。如果数值梯度的步长小于哈希编码的网格大小,则数值梯度就等于解析梯度;否则,多个网格单元的哈希项就会参与到表面法线计算中。
这样一来,通过表面法线的反向传播就能让多个网格单元的哈希项同时收到优化更新。直观来说,使用精心选择的步长的数值梯度可被解读成在解析梯度表达式上的平滑化操作。还有另一种方法可以替代法线监督,即 teacher-student curriculum,其中要使用预测的有噪声法线来帮助 MLP 输出,这样就能利用到 MLP 的平滑性。但是,这样的教师 - 学生损失的解析梯度仍然只会反向传播给局部网格单元。相较而言,数值梯度无需添加网络便能够解决局部性问题。
要使用数值梯度计算表面法线,还需要额外的 SDF 样本。给定一个采样过的点,还需要在该点周围一定步长内沿正则坐标的每个轴额外采样两个点。
渐进式的细节水平
为了避免陷入错误的局部最小值,从粗到细的优化可以更好地塑造损失图景。这样的策略已被用于许多计算机视觉应用。Neuralangelo 也采用了一种从粗到细的优化方案来在细节上渐进式地重建表面。使用高阶导数的数值梯度能自然地让 Neuralangelo 执行从粗到细的优化,这需要考虑两个方面。
步长:前面已经提到,数值梯度可被解释成一种平滑化操作,其中步长控制着分辨率及重建的细节量。如果让程函损失用更大的步长来计算数值表面法线,能在更大规模上确保表面法线的一致性,由此能得到一致和连续的表面。反过来,如果程函损失的步长更小,就只能影响更小的区域,就能避免细节平滑。在实践中,英伟达的做法是先将步长初始化为最粗的哈希网格大小,然后在整个优化过程中指数级地降低步长以匹配不同的哈希网格大小。
哈希网格分辨率:如果从优化一开始,所有哈希网格都被激活,为了捕获几何细节,细粒度哈希网格就必须首先「忘记」粗粒度优化(更大步长)所学到的东西,并用更小的步长「重新学习」。如果优化收敛而导致这个过程失败,那么就会丢失几何细节。因此,一开始只会激活一组初始的粗粒度哈希网格,当步长缩小至其空间大小时,会在优化过程中渐进式地激活更细的哈希网格。这样一来,就能避免「重新学习」过程,从而更好地捕获细节。在实践中,英伟达研究者的做法是在所有参数上应用权重衰减,以避免最终结果被单一分辨率特征主导。
优化
为了进一步促进重建表面的平滑性,他们还提出添加一个先验,具体做法是正则化 SDF 的平均曲率。平均曲率是通过离散拉普拉斯算子计算的,类似于表面法线计算,否则当使用三线性插值时,哈希编码的二阶解析梯度在任意位置都为零。
Neuralangelo 的整体损失定义为所有损失(RGB 合成损失、程函损失、曲率损失)的加权和,如下所示:
包括 MLP 和哈希编码在内的所有网络参数都是以端到端方式联合训练的。
实验
图 3:在 DTU 基准上的定性比较
可以看到,Neuralangelo 得到的表面更加准确,保真度也更高。
图 4:定性比较不同的从粗到细优化方案
当使用解析梯度时(AG 和 AG+P),粗粒度的表面通常带有伪影。当使用数值梯度时(NG),可以得到更好的粗粒度形状,细节也更为平滑。英伟达的新方法(NG+P)得到的表面既平滑又有精细细节。
表 1:在 DTU 数据集上的定量实验结果
可以看到,Neuralangelo 的重建准确度最高,图像合成质量也最好。
图 5:在 Tanks 和 Temples 数据集上的定性比较
相比于其它对比方法会丢失表面细节或有较多噪声,Neuralangelo 能更好地捕获场景细节。
今天关于《数字文艺复兴来了:英伟达造出「AI版」米开朗基罗,实现高保真3D重建》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

- 上一篇
- 如何在golang中使用正则表达式验证文件路径的合法性

- 下一篇
- Golang学习之Web应用程序的测试
-
- 科技周边 · 人工智能 | 37分钟前 |
- SQLServer2017AlwaysOnonLinux配置维护攻略
- 207浏览 收藏
-
- 科技周边 · 人工智能 | 2小时前 |
- 五大新能源车AEB测试,智界R7eAES功能突出
- 204浏览 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 484次学习
-
- 可图AI图片生成
- 探索快手旗下可灵AI2.0发布的可图AI2.0图像生成大模型,体验从文本生成图像、图像编辑到风格转绘的全链路创作。了解其技术突破、功能创新及在广告、影视、非遗等领域的应用,领先于Midjourney、DALL-E等竞品。
- 16次使用
-
- MeowTalk喵说
- MeowTalk喵说是一款由Akvelon公司开发的AI应用,通过分析猫咪的叫声,帮助主人理解猫咪的需求和情感。支持iOS和Android平台,提供个性化翻译、情感互动、趣味对话等功能,增进人猫之间的情感联系。
- 16次使用
-
- Traini
- SEO摘要Traini是一家专注于宠物健康教育的创新科技公司,利用先进的人工智能技术,提供宠物行为解读、个性化训练计划、在线课程、医疗辅助和个性化服务推荐等多功能服务。通过PEBI系统,Traini能够精准识别宠物狗的12种情绪状态,推动宠物与人类的智能互动,提升宠物生活质量。
- 18次使用
-
- 可图AI 2.0图片生成
- 可图AI 2.0 是快手旗下的新一代图像生成大模型,支持文本生成图像、图像编辑、风格转绘等全链路创作需求。凭借DiT架构和MVL交互体系,提升了复杂语义理解和多模态交互能力,适用于广告、影视、非遗等领域,助力创作者高效创作。
- 23次使用
-
- 毕业宝AIGC检测
- 毕业宝AIGC检测是“毕业宝”平台的AI生成内容检测工具,专为学术场景设计,帮助用户初步判断文本的原创性和AI参与度。通过与知网、维普数据库联动,提供全面检测结果,适用于学生、研究者、教育工作者及内容创作者。
- 34次使用
-
- GPT-4王者加冕!读图做题性能炸天,凭自己就能考上斯坦福
- 2023-04-25 501浏览
-
- 单块V100训练模型提速72倍!尤洋团队新成果获AAAI 2023杰出论文奖
- 2023-04-24 501浏览
-
- ChatGPT 真的会接管世界吗?
- 2023-04-13 501浏览
-
- VR的终极形态是「假眼」?Neuralink前联合创始人掏出新产品:科学之眼!
- 2023-04-30 501浏览
-
- 实现实时制造可视性优势有哪些?
- 2023-04-15 501浏览