前言:
本文为记录自己在NeRF学习道路的一些笔记,包括对论文以及其代码的思考内容。公众号: AI知识物语 B站讲解:出门吃三碗饭
论文地址: https://arxiv.org/abs/2403.02151
代码: https://github.com/VAST-AI-Research/Tr ipoSR
先来看下演示效果
TripoSR可以在0.5秒内从单张图片重建高质量3D模型,并泛化到不同领域的对象,效果确实不错,但笔者在测试真人图片以及较复杂结构的单个建筑时候,建模效果仍然不够理想。
摘要
TripoSR,这是一种利用 Transformer 架构进行快速前馈 3D 生成的 3D 重建模型,可在 0.5 秒内从单个图像生成 3D 网格。 TripoSR 基于 LRM 网络架构,集成了数据处理、模型设计和训练技术方面的重大改进。 对公共数据集的评估表明,与其他开源替代品相比,TripoSR 在数量和质量上都表现出卓越的性能。 TripoSR 在 MIT 许可下发布,旨在为研究人员、开发人员和具有 3D 生成人工智能最新进展的创意。
1.介绍
近年来,3D 生成式人工智能的发展呈现出多种发展趋势,模糊了单个或少数视图的 3D 重建与 3D 生成之间的界限 。 通过引入大规模公共 3D 数据集 和生成模型架构的进步,这种融合得到了显着加速。 为了克服 3D 训练数据的稀缺性,最近的研究Forts 已经探索利用 2D 扩散模型从文本提示或输入图像 创建 3D 资产。
DreamFusion [20] 是一个著名的例子,它引入了分数蒸馏采样(SDS),采用 2D 扩散模型来指导 3D 模型的优化。 这种方法代表了利用 2D 先验进行 3D 生成的关键策略,在生成详细的 3D 对象方面取得了突破。 然而,由于广泛的优化和计算需求以及精确控制输出模型的挑战,这些方法通常面临生成速度慢的限制。 相反,前馈 3D 重建模型实现显着更高的计算效率。 沿着这个方向的几种最新方法在不同 3D 数据集上的可扩展训练中显示出了前景。 这些方法通过快速前馈推理促进快速 3D 模型生成,并且更有可能对生成的输出提供精确控制,标志着这些模型的效率和适用性的显着转变。 在这项工作中,我们引入了用于快速进给的 TripoSR 模型在 A100 GPU 上从单个图像进行正向 3D 生成只需不到 0.5 秒。 基于 LRM 架构,我们在数据管理和渲染、模型设计和训练技术方面引入了一些改进。 实验结果表明,与其他开源替代方案相比,无论在数量上还是在质量上都具有优越的性能。
2.TripoSR:数据和模型的改进
2.1TripoSR概述
TripoSR的设计基于LRM,在数据管理、模型和训练策略方面有一系列技术进步。 我们现在概述该模型,然后介绍我们的技术改进。
与 LRM 类似,TripoSR 利用 Transformer 架构,专为单图像 3D 重建而设计。 它采用单个 RGB 图像作为输入,并输出图像中对象的 3D 表示。 TripoSR 的核心包括以下组件:图像编码器、图像到三平面解码器和基于三平面的神经辐射场 (NeRF)。 图像编码器使用预先训练的视觉变换器模型 DINOv1 进行初始化,该模型将 RGB 图像投影到一组潜在向量中。 这些向量对图像的全局和局部特征进行编码,并包含重建 3D 对象所需的信息。 随后的图像到三平面解码器将潜在向量转换为三平面 NeRF 表示形式 。 triplane-NeRF 表示是一种紧凑且富有表现力的 3D 表示,非常适合表示具有复杂形状和纹理的对象。 我们的解码器由一堆变压器层组成,每个变压器层都有一个自注意力层和一个交叉注意力层。 自注意力层允许解码器关注三平面表示的不同部分并学习它们之间的关系。 交叉注意力层允许解码器关注来自图像编码器的潜在向量,并将全局和局部图像特征合并到三平面表示中。 最后,NeRF 模型由一堆多层感知器 (MLP) 组成,负责预测空间中 3D 点的颜色和密度。 而不是调节图像到三平面的投影关于相机参数,我们选择允许模型在训练和推理过程中“猜测”相机参数(外部参数和内部参数)。 这是为了增强模型在推理时对野外输入图像的鲁棒性。 通过前述明确的相机参数调节,我们的方法旨在培养一种更具适应性和弹性的模型,能够处理各种现实场景,而不需要精确的相机信息。 架构的主要参数,例如数量Transformer 中的层数、三平面尺寸、NeRF 模型的细节以及主要训练配置详细信息如表 1 所示。与 LRM 相比,TripoSR 引入了多项技术改进。
2.2数据改进
我们在训练数据收集中纳入了两项改进:
• 数据管理:通过选择 Objaverse数据集的精心策划的子集(可在 CC-BY 许可下使用),我们增强了 训练数据的质量。
• 数据渲染:我们采用了多种数据渲染技术,可以更接近地模拟真实世界图像的分布,从而增强模型的泛化能力,即使在经过专门训练时也是如此。与 Objaverse 数据集密切相关。
2.3模型和数据改进
Triplane Channel Optimization三平面通道优化
由于体渲染的计算成本很高,triplane-NeRF 表示中的通道配置在训练和推理期间管理 GPU 内存占用方面发挥着重要作用。 此外,通道数显着影响模型的详细和高保真重建能力。 为了追求重建质量和计算效率之间的最佳平衡,实验评估使我们采用了 40 个通道的配置。 这种选择允许在训练阶段使用更大的批量大小和更高的分辨率,同时最大限度地减少推理期间的内存需求。
Mask Loss掩模损失
在训练过程中加入了掩模损失函数,可以显着减少“漂浮物”伪影并提高重建的保真度,损失函数如下:
在训练中,需要最小化的全部损失函数如下:
Local Rendering Supervision本地渲染监督
模型完全依赖于渲染损失进行监督,因此我们的模型需要高分辨率渲染来学习详细的形状和纹理重建。 然而,高分辨率(例如 512 × 512 或更高)的渲染和监控可能会导致计算和 GPU 内存负载不堪重负。 为了解决这个问题,我们在训练期间从原始 512 × 512 分辨率图像中渲染 128 × 128 大小的随机补丁。 至关重要的是,我们增加了选择覆盖前景区域的作物的可能性,从而更加重视感兴趣的区域。 这种重要性采样策略确保了物体表面细节的忠实重建,有效平衡了计算效率和重建粒度。
3.结果
定性结果: 我们将 TripoSR 输出网格与 GSO 和 OmniObject3D 上的其他 SOTA 方法进行比较(前四列来自 GSO [6],后两列来自 OmniObject3D [30])。 我们重建的 3D 形状和纹理显着提高了质量以及比以前最先进的方法更好的细节。
我们在 3D 重建方面优于 SOTA 方法,同时实现了快速的推理时间。 图中,F-Score 与阈值 0.1 是 GSO 和 OmniObject3D 的平均值。
文章来源:https://www.toymoban.com/news/detail-850737.html
4.结论
在本报告中,我们提出了一种开源前馈 3D 重建模型 TripoSR。 我们模型的核心是在 LRM 网络 上开发的基于变压器(transformer-based)的架构,以及沿多个轴的重大技术改进。 根据两个公共基准进行评估,我们的模型展示了最先进的重建性能和高计算效率。 我们希望 TripoSR 能够帮助研究人员和开发人员开发开发更先进的 3D 生成人工智能模型。文章来源地址https://www.toymoban.com/news/detail-850737.html
到了这里,关于论文阅读 TripoSR: Fast 3D Object Reconstruction from a Single Image 单张图片快速完成3D重建的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!