谷歌研究院联手牛津大学推出Bolt3D!7秒内单GPU生成高保真3D,推理成本直降300倍!


谷歌研究院联手牛津大学推出Bolt3D!7秒内单GPU生成高保真3D,推理成本直降300倍!

仅用于站内搜索,没有排版格式,具体信息请跳转上方微信公众号内链接

最新论文解读系列
论文名:Bolt3D:Generating3DScenesinSeconds
论文链接:https ://arxiv.org/pdf/2503.14445
开源代码:https ://szymanowiczs.github.io/bolt3d
现代图像和视频生成模型能够生成引人注目的高质量视觉内容,但这些模型采样的是2D图像,而不是底层的3D场景。相反,直接生成3D内容的能力将使众多应用成为可能,如交互式可视化和编辑。然而,将现代基于扩散的生成模型扩展到生成详细的3D场景仍然是研究界面临的重大挑战,主要有两个原因。首先,如何表示和构建(可能无界的)3D数据,以训练一个能够高分辨率生成完整场景的扩散模型,这是一个尚未解决的问题。其次,与用于训练最先进生成模型的丰富2D图像和视频数据相比,“真实”的3D场景极为稀缺。因此,许多近期的3D生成模型仅限于合成对象或部分“前向”场景。能够扩展到真实完整360°场景的模型使用相机条件多视图或视频扩散模型,将输入图像转换为一个大型的合成观测“数据集”,然后通过测试时优化从中恢复出明确的3D表示(如神经或3D高斯辐射场)。虽然这种方法能够生成高质量的3D内容,但并不实用;使用多视图扩散模型采样数百张增强图像以及优化3D表示以匹配这些图像都很缓慢且计算密集。
我们提出了一种用于快速前馈场景生成的潜在扩散模型。给定一张或多张图像,我们的模型Bolt3D可在单个GPU上不到七秒的时间内直接采样出一个3D场景表示。我们通过利用强大且可扩展的现有扩散网络架构来生成一致的高保真场景表示,从而实现这一目标。为了训练该模型,我们通过将最先进的密集重建技术应用于现有的多视图图像数据集,创建了一个大规模的多视图一致的3D几何和外观数据集。与之前需要对每个场景进行优化以进行重建的多视图生成模型相比,Bolt3D将推理成本降低了多达300倍。
Bolt3D将单张或多张图像及其相机位姿作为输入,并输出一个3D高斯表示。该模型由两个组件组成:一个潜在扩散模型,用于为每个视角生成更多视角和每个像素的3D位置(即3D点图);一个前馈高斯头部模型,它将扩散模型的输出作为输入,并为每个视角预测每个像素的一个彩色3D高斯分布的完整参数(即喷涂图像)。下面我们将描述3D高斯表示、潜在扩散模型、前馈高斯头部模型和训练过程。我们在图2中给出了一个概述。
图2.方法。Bolt3D将一张或多张已定位的观测图像以及一组目标位姿作为输入(a),并输出一个可渲染的3D场景(e)。首先,我们使用多视图潜在扩散模型对每个视图的潜在外观和几何信息进行采样(b)。分别使用预训练的图像VAE解码器和我们训练的几何解码器,将外观和几何潜在信息独立解码为全分辨率图像和点图(c)。接下来,多视图高斯头预测与像素对齐的3D高斯的不透明度和尺度,并优化预测的颜色。结合(c)中的点图,这些值形成飞溅图像[49](d),可以将它们组合起来创建场景的完整3D高斯表示(e)。
假设可以观察或生成个视角,我们利用由个喷涂图像[49]组成的3D高斯表示,即每个视角的像素对齐的彩色3D高斯分布。每个3D高斯分布包含四个属性:颜色、3D位置(高斯分布的均值)、不透明度和协方差矩阵。与先前基于重建的方法不同,我们采用一种生成式方法,该方法可以在比输入视角所覆盖范围更广泛的场景中生成新内容。
因式分解采样。我们将高斯参数的生成分解为两部分:首先,利用一个潜在扩散模型生成颜色和3D位置。然后,一个前馈高斯头部模型将颜色和3D位置作为输入,并预测不透明度、协方差矩阵和细化后的颜色。这样做的动机是,我们可以通过收集捕获的图像并运行密集的运动恢复结构算法来轻松获取颜色和3D位置的数据,以作为潜在扩散模型的目标。另一方面,为协方差矩阵和不透明度找到直接的监督信息并非易事。然而,给定从扩散模型生成的颜色和3D位置,协方差矩阵和不透明度的歧义性就会小得多,因此可以通过一个由渲染损失监督的确定性映射函数来建模。
我们训练了一个多视图潜在扩散模型,该模型可以对图像和3D点图(pointmap)进行联合建模。具体来说,该模型将一张或多张图像及其相机位姿作为输入。给定多个目标相机位姿,该模型学习捕捉目标图像、目标点图和源视图点图的联合分布:
模型架构。我们从一个预训练的多视图图像扩散模型对我们的模型进行微调,而该预训练模型本身是从文本到图像的潜在扩散模型微调而来的,这样可以在有限的带有3D位置信息的多视图数据上进行训练时,最大程度地保持模型的泛化能力。图像和几何信息(即点图和相机)由两个独立的变分自编码器(VAE)进行编码和解码,这两个VAE在空间上对输入信号进行下采样(即从像素空间的到潜在空间的)。图像VAE是预训练好的且保持冻结状态,而几何VAE则从头开始训练。相机位姿被参数化为一个6维的射线图(raymap),它对每个空间位置的射线原点和方向进行编码。在潜在扩散的输入阶段,图像潜在特征、几何潜在特征和与潜在特征大小相同的射线图按通道进行拼接。我们对扩散模型使用v参数化和v预测损失[43]。该模型总共在8个视图上进行预训练,在16个视图上进行微调,并且随机采样1-3个视图作为输入视图。在采样过程中,我们总共生成16个视图。
几何VAE。我们训练一个几何VAE,将一个视图的点图和相机射线图联合编码为一个几何潜在特征:
其中是一个卷积编码器,是一个Transformer解码器。该模型通过最小化以下训练目标进行优化,该目标是标准VAE目标和特定几何损失的组合:
重建损失由下式给出
其中是一个逐像素的权重,它取决于在局部相机坐标系中该点到场景中心的距离(更多细节见补充材料)。直观地说,这在考虑到离相机越远置信度越低的情况下,鼓励精确的几何信息。由下式给出:
最后,我们添加点图垂直和水平梯度的重建误差,以提高解码后点图的边界清晰度:
给定相机以及生成的图像和点图,我们训练一个多视图前馈高斯头部模型,以输出存储在散点图像(SplatterImages)中的3D高斯的细化颜色、不透明度和协方差矩阵。我们首先将生成的点图校准为在相应相机坐标系下与像素对齐。也就是说,我们将3D点转换到相机坐标系中,保留并根据相机射线和设置。虽然VAE为每个视图独立解码颜色和点图,但我们发现实现一个多视图高斯头部模型至关重要。在Transformer块之前应用了一个U-ViT架构并进行分块处理,更多细节见补充材料。高斯头部模型以8个视图作为输入,并使用光度损失(即L2损失和感知损失[76])对从4个下采样输入视图和8个新视图渲染的图像进行训练。
数据。我们的方法需要对与多视图图像相关的密集、多视图一致的点云图进行监督。我们利用了最近最先进的密集重建和匹配方法MASt3R[24],对每个场景的20-25张图像进行深度和特征估计,然后对所有像素进行光束平差。这种设置可以实现完整的场景覆盖,并输出多视图一致的3D点云图。虽然数据并不完美,但我们发现残余噪声和几何缺陷足够小,不会对我们的方法产生显著影响(部分原因是除了几何损失外,还使用了渲染损失)。我们在CO3D[40]、MVImg[71]、RealEstate10K(RE10K)[77]和DL3DV-7K[30]的所有场景上运行MASt3R,形成了一个包含约个多视图一致的场景的数据集。我们在CO3D、MVImg和RE10K中使用标准的训练-测试划分,在DL3DV中,我们使用前个场景进行训练,后个场景进行测试。此外,我们利用合成对象数据集(Ob-javerse[9]和一个高质量的内部对象数据集)及其相应的点云图渲染结果。我们在这些数据集的混合数据上进行训练,以相等的概率从所有4个真实数据集中采样真实场景,并且与采样真实数据相比,以1:2的比例采样合成数据集。
我们采用三阶段训练过程:
几何变分自编码器(GeometryVAE)。我们首先在分辨率下对模型进行300万次迭代训练,然后在分辨率下再进行次迭代微调。
高斯头。给定真实颜色和自动编码的几何信息,高斯头通过渲染损失进行次迭代训练,以输出飞溅图像(SplatterImages)。
潜在扩散模型。我们从CAT3D[12]初始化我们的潜在扩散模型,在8视图设置下进行次迭代训练,然后在16视图设置下进行次迭代微调。更多细节见补充材料。
生成式方法最好通过定性评估,因此我们在实验开始时在图3中展示我们方法的结果。此外,我们鼓励读者查看补充材料中的视频和交互式可视化内容。我们在广泛的输入上展示了高质量的重建结果。
图3.定性结果。我们展示了仅从一张输入图像(每张图像的左上角)以前馈方式重建的3D场景的渲染结果。在单个GPU上推理仅需7秒。
我们的实验分为4个部分。首先,通过与最先进的基于回归的方法进行对比评估,我们证明了使用生成式模型对歧义性进行建模对于少视图重建至关重要。其次,我们表明我们对歧义性进行建模的方法优于最近从少量输入图像进行前馈3D生成的方法。第三,我们评估了最先进的基于优化的方法和我们的方法之间的速度-质量权衡。最后,我们分析了几何变分自编码器(GeometryVAE),并展示了它在我们方法性能中的关键作用。关于几何变分自编码器(GeometryVAE)和高斯解码器的消融实验,请参考补充材料。
在与先前的工作进行比较时,我们在其他方法所设计的视图数量上评估我们的方法。除非另有说明,我们在分辨率的中心裁剪区域评估性能。
指标。我们使用用于新视图合成的标准指标来量化3D重建质量:峰值信噪比(PSNR)、结构相似性指数(SSIM)和学习感知图像块相似度(LPIPS)[76],分别用于测量像素级、块级和感知相似度。
我们将我们的方法与最先进的前馈高斯飞溅(GaussianSplat)回归方法进行比较:Flash3D[50](单视图)和DepthSplat[63](少视图)。
协议。我们使用单视角RE10K(1-viewRE10K)与Flash3D进行对比,采用文献[12,61]中的划分方式,并将每个视频的第一帧作为条件帧,目标帧按照划分中指定的选取。这种划分包含的相机运动范围(90帧)比原始Flash3D论文中使用的更大,因此可以评估在相机运动范围超出小范围(帧)时重建场景的能力。此外,我们还对CO3D进行了评估,同样按照文献的方式从文献中进行调整,以评估两种方法在强自遮挡情况下的性能,这在单视角重建中是很典型的情况。为了与Depth-Splat[63]进行对比,我们使用了DL3DV,它具有较大的相机运动范围,并且我们在双视角和四视角设置下评估这两种方法,使用文献[63]中的源视角和目标视角。我们使用测试集的重叠部分对场景进行评估。
结果。如表1所示,我们发现Bolt3D的性能优于这两种方法。与前馈重建相比,我们的方法表现出色,这表明对歧义进行建模很重要,如图4所示。这一观察结果与以下事实一致:在歧义最大的单视角设置中,性能提升最为显著。
表1.与基于回归的方法的定量比较。我们的生成式方法在多个数据集和不同数量的输入视图上都提高了性能。在单视图设置中,模糊性最大,此时性能提升最为显著。
图4.对模糊性进行建模在单视图和少视图重建中均具有优势。仅给定一张输入图像时,我们的生成式框架就能在观测视场之外(a)和遮挡区域(b)合成逼真的未观测部分。在给定多张重叠区域较小的输入图像(c)或特征匹配困难的情况下(d),Bolt3D在具有挑战性的场景中也表现出色。
我们将我们的方法与两种近期能够重建真实场景的前馈三维生成方法进行比较:LatentSplat[60]和Wonderland[27]。
实验方案。与LatentSplat比较时,我们在他们提出的数据集上以分辨率进行评估:RealEstate以及CO3D数据集中的消防栓和泰迪熊类别,并使用他们的外推分割。与Wonderland比较时,我们遵循他们在RealEstate上的定量评估方案,即随机采样1000个测试场景,将视频的第一帧作为源帧,并在给定一个输入视图的情况下测量源视图之后14个视图的渲染质量。
图5.我们的潜在扩散框架比LatentSplat提出的VAE-GAN模型生成的细节更逼真。
表2.与3D生成方法的定量比较。我们基于扩散且具有显式3D监督的框架取得了最佳性能。*表示文献[27]中报告的结果
结果。我们观察到,我们的方法在定性(图5)和定量(表2)方面都优于LatentSplat。图5表明,我们的扩散模型比LatentSplat的VAE-GAN生成的细节质量更高。我们还在表2中证明了我们的方法优于Wonderland。我们推测这是由于自编码器和扩散模型中对几何结构进行了显式建模。还值得注意的是,Wonderland使用视频模型,生成一个场景需要5分钟,而我们的方法大约6秒就能生成16张飞溅图像。
接下来,我们探索与最先进的基于优化的方法CAT3D[12]在速度-质量方面的权衡。我们还包括与Realm-Dreamer[46]的定性比较。
实验方案。我们报告了CAT3D在3-cond设置下对中心裁剪图像的评估性能。我们使用与原论文相同的数据集和划分。我们以端到端重建过程中在GPU上花费的分钟数来衡量推理成本。此外,我们收集了ReamDreamer和CAT3D官方项目网站上分享的定性结果。
推理成本。我们的方法在单个英伟达H100GPU上重建一个场景需要6.25秒,在A100上需要15秒。(为了与CAT3D进行比较,我们在表3中报告了A100的时间)。CAT3D在16个GPU上生成80张图像需要5秒,每个场景需要640-800张生成的图像,随后进行4分钟的重建,总共约5分钟,具体时间取决于数据集。
表3.与基于优化的方法的比较。我们的方法与最先进的基于优化的方法相比具有竞争力,同时降低了推理成本。
结果。在表3中我们观察到,我们的方法表现出色,并且在推理时所需的计算量减少了。从定性角度看,我们的方法为一系列场景生成了非常高质量的重建结果。在图6中,我们展示了我们的方法比RealmDreamer生成的结果更好,有时比CAT3D的结果更清晰,特别是在3DGS变体以及背景或细节方面。这是因为CAT3D的优化过程在生成结果不一致的情况下会趋向于平均值,尤其是在不太稳定的3DGS优化过程中。虽然我们的方法没有超过CAT3D,但它仍然能够从各种不同的输入中生成高质量的3D场景(如补充材料所示),并且我们认为推理成本降低足以弥补质量上的小幅下降。
图6.与基于优化的方法的定性比较。我们的方法的重建质量与基于优化的方法相比具有优势,有时甚至能展现出更清晰的细节,同时所需的计算量减少了。
通常情况下,变分自编码器(VAE)会在RGB图像上进行预训练,用于生成图像的潜在扩散模型[42]。我们发现这些变分自编码器(VAE)在处理无界几何形状时效果不佳。
指标。我们使用常用于深度估计的指标[39,58]——点图目标z分量与预测值之间的相对误差(AbsRel)、相对以及预测阈值准确率,其中。此外,我们还测量重投影误差:将点重投影回源相机时在图像平面上的平均欧几里得距离,其中和分别是图像上以像素为单位的和坐标。我们分别测量合成数据和真实数据在分辨率下的性能。
缩放。我们的几何数据不是度量数据,因此场景的尺度是任意的。在将数据输入变分自编码器之前对其进行适当归一化会显著影响性能。我们考虑了3种缩放数据的方法。我们进行了以下实验:(1)缩放场景,使场景的平均深度为1;(2)缩放场景,使任何方向上的最大坐标值为1;(3)在将数据输入编码器之前应用非线性收缩函数(Sigmoid函数),并在解码后应用该函数的反函数。我们的自编码器采用了方法(1)。
表4.针对图像训练的变分自编码器(图像自编码器,ImAE)与针对几何形状训练的变分自编码器(几何自编码器,GeoAE)在点图上的比较。我们专门为几何任务训练的自编码器,无论点如何缩放,其性能都远优于预训练的图像自编码器。在真实数据上,我们基于Transformer的解码器性能优于基于卷积的解码器。
结果。在表4中,我们发现预训练的图像自编码器对于合成的、有界的数据表现相当不错。这一结论与之前的研究结果一致,即基于RGB图像预训练的变分自编码器可以有效地应用于有界相对深度[22]。然而,我们发现,无论采用何种缩放方法,基于图像训练的自编码器在对点图进行自编码时都存在困难。同时,我们基于几何形状训练的自编码器在合成数据和真实数据上都能保持较高的精度(80%的点与真实值的误差在1%以内)。我们在图7中可视化了点图和点云渲染结果,观察到图像自编码器在室外场景中严重失败,在对室内场景进行自编码时也存在明显的不准确。虽然卷积解码器在定量上与Transformer解码器表现相当,但我们在图7中通过实验观察到,它会引入明显的伪影,例如弯曲的线条。这一分析表明,我们的几何自编码器及其架构对于我们的方法在无界场景中获得高质量结果至关重要,也有助于解释为什么之前使用潜在扩散模型(LDMs)的研究仅专注于物体。
图7.给定输入几何形状(a),我们的自编码器(b)能准确重建输入几何形状。使用卷积解码器(c)会导致几何形状重建不准确,而使用预训练的图像自编码器(d)在室内和大规模室外场景中都会出现严重失败。
我们提出了Bolt3D,这是一种快速前馈方法,能够在不到7秒的时间内生成详细的场景。为实现这一能力,我们提出了一种3D场景表示方法,允许使用强大的2D潜在扩散架构对高分辨率3D场景进行去噪。我们创建了一个大规模的3D场景数据集来训练Bolt3D,并证明它能够准确建模模糊性,从而在基于回归的方法失败的情况下实现高质量的单视图重建。我们提出的前馈方法能够重建各种场景,与现有的基于优化的方法相比,将生成成本降低了,为大规模3D内容创作开辟了新的机会。
感谢你看到这里,也欢迎点击关注下方公众号并添加公众号小助手加入官方读者交流群,一个有趣有AI的AIGC公众号:关注AI、深度学习、计算机视觉、AIGC、StableDiffusion、Sora等相关技术,欢迎一起交流学习💗~


文章作者: ZejunCao
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 ZejunCao !
  目录