已开源!无限场景生成和高效数据迁移:3D金字塔扩散模型斩获ECCV24 Oral

news2024/11/15 2:15:08

作者主页:
https://yuheng.ink/
论文标题:
Pyramid Diffusion for Fine 3D Large Scene Generation

导读:

本文通过设计一种新颖的金字塔扩散模型,为三维室外场景生成提供了一种从粗到细的策略。本文对金字塔扩散模型进行了大量实验,证明它能以与现有方法相当的计算资源生成更高质量的三维场景。此外,本文的金字塔扩散方法还可以扩展到无限场景的创建。©️【深蓝AI】编译

图1|金字塔离散扩散模型示意图©️【深蓝AI】编译

1. 摘要

扩散模型在生成二维图像和小尺度三维物体方面表现出了显著的效果。然而,它们在合成大规模三维场景中的应用却很少被探索。这主要是因为三维场景数据(尤其是户外场景)固有的复杂性和庞大的规模,以及综合真实世界数据集的有限性,使得训练一个稳定的场景扩散模型是比较困难的。在本工作中,作者探索了如何使用由粗到细的范式有效地生成大规模三维场景,他引入了一个框架,即金字塔离散扩散模型(PDD),该模型采用尺度变化的扩散模型来逐步生成高质量的户外场景。在对PDD进行一系列实验验证后,其结果证明了作者在无条件和有条件生成三维场景方面的成功探索。此外,研究者展还示了PDD模型的数据兼容性:在一个数据集上训练的PDD模型可以轻松地在另一个数据集上进行微调。

本研究目前已开源,地址为:
https://github.com/yuhengliu02/pyramid-discrete-diffusion

2. 引文

三维场景生成的任务是创建模拟现实世界三维复杂环境的数字表象,从而让人们对周围的有形环境有更细致入微的了解。这项技术在自动驾驶、虚拟现实和机器人操控等基础计算机视觉任务中起着至关重要的作用。然而,由于高质量的大型三维场景固有的庞大尺寸、缺乏大规模三维场景数据集,因此是极难合成的。

另一方面,扩散模型在生成二维图像或小规模三维物体方面的研究取得了令人瞩目的成果。然而,在三维场景生成中使用扩散模型并非易事。一方面,最先进的扩散模型会占用大量内存,并且需要相当长的训练时间,这在生成具有大规模和复杂细节的三维场景时尤其具有挑战性。另一方面,扩散模型需要大量的训练数据,而捕捉大规模三维场景本身就是一个具有挑战性且正在进行的研究课题。因此,只有少数尝试将扩散模型直接应用于三维户外场景,这导致生成效果不稳定,从而导致性能不佳。

为了解决这些挑战,现有的研究主要集中在条件生成上,并借助场景图或二维地图等附加信号来提供指导。尽管如此,这种条件指导并不总是可行的,从而限制了这些方法的通用性。受广泛应用于图像超分辨率的从粗到细理念的启发,作者引入了金字塔离散扩散模型 (PDD),这是一个无需依赖额外指导即可逐步生成大型三维场景的框架。

本文提出的算法首先生成小规模的三维场景,然后逐步增加规模。在每个尺度级别,本文提出的算法学习一个单独的扩散模型。该模型将前一个尺度生成的场景作为条件(第一个扩散模型除外,它将噪声作为输入),并合成更大规模的三维场景。直观地说,这种多尺度生成过程将具有挑战性的无条件生成任务(即高质量三维场景生成)分解为几个更易于管理的条件生成任务。这种分离允许每个扩散模型专门生成粗糙结构(较小尺度)或复杂细节(较大尺度)。在最高尺度上,作者采用了一种称为场景细分的技术,该技术涉及将大场景划分为多个较小的片段,然后使用共享扩散模型进行合成。

这种方法缓解了由于三维场景体积过大而导致的模型过大的问题。而多尺度设计的一个重要功能是能够促进跨数据迁移应用,从而大大节省训练资源。作者最后提出了PDD框架的扩展功能,通过场景细分来实现无限的三维场景生成,从而证明了该方法的可扩展性。

图2|所提出的金字塔离散扩散模型的框架结构©️【深蓝AI】编译

3. 相关工作

3.1 二维图像的扩散模型

随着生成模型的不断发展,扩散模型的地位日益突出,尤其是在二维图像创建中的应用。为了通过扩散模型生成高保真图像,本文提出了一种多阶段扩散过程。此过程首先使用初始扩散模型生成粗分辨率图像,随后,第二个扩散模型将此初始输出作为输入,将其细化为更高分辨率的图像。这些级联扩散可以迭代应用以实现所需的图像分辨率。作者注意到,由于增加了一个额外的维度,生成细粒度的三维数据比二维数据更具挑战性。因此,本文工作受到上述多阶段二维方法的启发,以探索它们在三维环境中的适用性,他还希望利用这种结构的优势来解决三维场景中数据集的稀缺问题。

3.2 用于三维生成的扩散模型

作为一种稀疏且内存高效的表示,三维点云已广泛应用于各种计算机视觉应用,如数字人、自动驾驶和三维场景重建。点云生成旨在从随机噪声或扫描的激光雷达点中合成三维点云。即便点云的内存效率是一项宝贵的属性,但它给点云生成任务带来了不小的困难。现有的研究主要集中于使用生成对抗网络(GAN)、变分自编码器(VAE)或矢量量化变分自编码器(VQ-VAE)作为此任务的主干。然而,这些模型的高保真生成能力有限,并且以训练不稳定而闻名。作为上述生成模型的替代方案,扩散模型在生成二维图像方面表现出色,为计算机视觉领域带来了革命性的变化。但迄今为止,尚未有研究可以彻底将扩散模型应用于三维点云生成。点体素扩散建议通过扩散过程生成原始点云,而LION和DPM在去噪过程中使用点云的潜在表示。然而,所有这些方法都侧重于对象级点云,不能简单地扩展到场景级点云。与本文最相似的工作,其方法中扩散模型在场景级点云数据集上进行训练以用于合成任务。然而,由于扩散模型的容量限制,使用单一扩散模型生成场景级点云的结果并不令人满意,例如不理想的整体或缺乏细粒度的对象。基于此前种种,作者于本文中提出一种金字塔离散扩散模型,降低了金字塔每个级别的难度,从而生成具有更真实、更细粒度细节的场景点云。

3.3 三维大规模场景生成

对于自动驾驶等复杂动态场景任务,生成大规模三维场景是一项重要且极具挑战性的任务。三维场景上的生成模型可能为场景分割、自动驾驶等任务提供无限的训练数据。现有工作首先生成二维场景然后将其“提升”到三维来简化此任务。虽然这种设计对于填充有规则几何形状(例如建筑物)的城市场景很有效,但它不容易推广到具有更细粒度物体(例如行人、汽车、树木等)的场景。在本文中,作者使用扩散模型直接生成三维户外场景,其中包括大量具有语义的小物体。

4. 方法

本文所提出的金字塔离散扩散(PDD)模型包含多尺度模型,能够从较小的尺度逐步生成高质量的三维场景。PDD首先扩展了三维数据的标准离散扩散(详情阅读4.2节),然后提出了一种场景细分方法以进一步降低内存需求(详情阅读4.3节)。作者还展示了PDD 在特定场景中的两个实际应用(详情阅读第4.4节)。

4.1 离散扩散

本文专注于学习基于三维语义场景的数据分布。具体来说,语义场景以独热格式表示,即 i.e., X ∈ { 0 , 1 } h × w × d × c \textit{i.e.,} \mathbf{X}\in \{0,1\}^{h \times w \times d \times c} i.e.,X{0,1}h×w×d×c,其中 h h h w w w d d d分别表示场景的尺寸, c c c表示独热标签的大小。

离散扩散已被提出用于生成包括语义场景在内的离散数据。它涉及将马尔可夫转移矩阵应用于离散状态以进行噪声扩散。在前向过程中,原始场景 X 0 \mathbf{X}_0 X0逐渐被破坏为 t t t步噪声映射 X t \mathbf{X}_t Xt,其中 t = 1 , ⋯   , T t =1,\cdots,T t=1,,T。每个前向步骤都可以由马尔可夫均匀转移矩阵 Q t \mathbf{Q}_t Qt定义为 X t = X t − 1 Q t \mathbf{X}_t=\mathbf{X}_{t-1} \mathbf{Q}_t Xt=Xt1Qt。基于马尔可夫特性,作者可以直接从 X 0 \mathbf{X}_0 X0导出 t t t步场景 X t \mathbf{X}_t Xt,其累积转移矩阵 Q ˉ t = Q 1 Q 2 ⋯ Q t \bar{\mathbf{Q}}_t=\mathbf{Q}_1 \mathbf{Q}_2 \cdots \mathbf{Q}_t Qˉt=Q1Q2Qt

q ( X t ∣ X 0 ) = Cat ⁡ ( X t ; P = X 0 Q ˉ t ) q\left(\mathbf{X}_t \mid \mathbf{X}_0\right)=\operatorname{Cat}\left(\mathbf{X}_t ; \mathbf{P}=\mathbf{X}_0 \bar{\mathbf{Q}}_t\right) q(XtX0)=Cat(Xt;P=X0Qˉt)

其中 Cat ⁡ ( X ; P ) \operatorname{Cat}(\mathbf{X}; \mathbf{P}) Cat(X;P)是独热语义标签 X \mathbf{X} X的多元分类分布,概率由 P \mathbf{P} P给出。最后,最后一步 T T T处的语义场景 X T \mathbf{X}_T XT应该为均匀离散噪声的形式。在逆过程中,使用由 θ \theta θ参数化的可学习模型通过 p ~ θ ( X ~ 0 ∣ X t ) \tilde{p}_\theta\left(\tilde{\mathbf{X}}_{0} \mid \mathbf{X}_t\right) p~θ(X~0Xt)预测去噪语义标签。随后应用重新参数化技巧来获得逆过程 p θ ( X t − 1 ∣ X t ) p_\theta\left(\mathbf{X}_{t-1} \mid \mathbf{X}_t\right) pθ(Xt1Xt)

p θ ( X t − 1 ∣ X t ) = E p ~ θ ( X ~ 0 ∣ X t ) q ( X t − 1 ∣ X t , X ~ 0 ) p_\theta\left(\mathbf{X}_{t-1} \mid \mathbf{X}_t\right) = \mathbb{E}_{\tilde{p}_\theta\left(\tilde{\mathbf{X}}_0 \mid \mathbf{X}_t\right)} q\left(\mathbf{X}_{t-1} \mid \mathbf{X}_t, \tilde{\mathbf{X}}_0\right) pθ(Xt1Xt)=Ep~θ(X~0Xt)q(Xt1Xt,X~0)

为了使模型更好地学习重建能力,提出了由两个KL散度组成的损失,如下所示:

L θ = d KL ( q ( X t − 1 ∣ X t , X 0 ) ∥ p θ ( X t − 1 ∣ X t ) ) + λ d KL ( q ( X 0 ) ∥ p ~ θ ( X ~ 0 ∣ X t ) ) \mathcal{L_{\theta}}=d_{\text{KL}}\left(q\left(\mathbf{X}_{t-1} \mid \mathbf{X}_t, \mathbf{X}_0\right) \| p_\theta\left(\mathbf{X}_{t-1} \mid \mathbf{X}_t\right)\right) \\ \notag + \lambda d_{\text{KL}}\left(q\left(\mathbf{X}_0\right) \| \tilde{p}_\theta\left(\tilde{\mathbf{X}}_0 \mid \mathbf{X}_t\right)\right) Lθ=dKL(q(Xt1Xt,X0)pθ(Xt1Xt))+λdKL(q(X0)p~θ(X~0Xt))

其中 λ \lambda λ是辅助损失权重, d K L d_{KL} dKL代表KL散度。接下来,作者重点介绍如何将离散扩散扩展到所提出的PDD中。

4.2 金字塔离散扩散

作者提出了PDD,它可以在多个尺度(或分辨率)上操作各种扩散过程,如图2所示。给定一个三维场景数据 Z ∈ { 0 , 1 } h × w × d × c \mathbf{Z}\in \{0,1\}^{h\times w \times d \times c} Z{0,1}h×w×d×c,作者定义一个包含不同尺度 Z Z Z的三维金字塔,即 Z , i.e., { Z ( 1 ) , ⋯   , Z ( l ) , ⋯   , Z ( L ) } \mathbf{Z}, \textit{i.e.,} \{\mathbf{Z}^{(1)}, \cdots, \mathbf{Z}^{(l)},\cdots, \mathbf{Z}^{(L)}\} Z,i.e.,{Z(1),,Z(l),,Z(L)},其中 l l l越大表示场景尺度越大。正式地,让 h l × w l × d l × c h_l\times w_l \times d_l \times c hl×wl×dl×c表示 Z ( l ) \mathbf{Z}^{(l)} Z(l)的维度, h l + 1 ≥ h l , w l + 1 ≥ w l h_{l+1}\geq h_{l}, w_{l+1}\geq w_{l} hl+1hl,wl+1wl d l + 1 ≥ d l d_{l+1}\geq d_{l} dl+1dl l = 1 , ⋯   , L − 1 l=1,\cdots, L-1 l=1,,L1时保持不变。作者注意到,可以通过在 Z \mathbf{Z} Z上应用不同的下采样运算符(例如池化函数)来获得这样的金字塔。对于金字塔中的每个尺度,作者构建一个由 θ l \theta_l θl参数化的条件离散扩散模型。当 l ≠ 1 l\neq 1 l=1时,第 l l l个模型如下:

p ~ θ l ( X ~ 0 ( l ) X t ( l ) , Z ( l − 1 ) ) = p ~ θ l ( X ~ 0 ( l ) ∣ Concat ( X t ( l ) , ϕ ( l ) ( Z ( l − 1 ) ) \tilde{p}_{\theta_{l}} (\tilde{\mathbf{X}}_0^{(l)} \mathbf{X}_t^{(l)}, \mathbf{Z}^{(l-1)} ) = \tilde{p}_{\theta_{l}}(\tilde{\mathbf{X}}_0^{(l)} | \text{Concat}(\mathbf{X}_t^{(l)}, \phi^{(l)}(\mathbf{Z}^{(l-1)}) p~θl(X~0(l)Xt(l),Z(l1))=p~θl(X~0(l)Concat(Xt(l),ϕ(l)(Z(l1))

其中 X t ( l ) \mathbf{X}_t^{(l)} Xt(l) X 0 ( l ) \mathbf{X}_0^{(l)} X0(l) Z ( l ) \mathbf{Z}^{(l)} Z(l)的大小相同, 是尺度自适应函数 (SAF),用于将 Z ( l − 1 ) \mathbf{Z}^{(l-1)} Z(l1)上采样到 Z ( l ) \mathbf{Z}^{(l)} Z(l)的大小。例如,SAF 可以是取决于数据的三线性插值函数。此外,作者将第一个模型 p ~ θ 1 \tilde{p}_{\theta_{1}} p~θ1保留为原始非条件模型。在训练过程中,PDD 在给定数据集中以不同尺度的场景金字塔分别学习 L L L个去噪模型。鉴于 Z ( l − 1 ) \mathbf{Z}^{(l-1)} Z(l1)本质上是 Z ( l ) \mathbf{Z}^{(l)} Z(l)的有损压缩版本,模型训练可以看作是学习恢复粗糙场景的细节。在推理过程中,首先根据公式(2)执行去噪模型 p θ 1 p_{\theta_1} pθ1,然后通过采样从 l = 2 l=2 l=2 L L L按顺序执行其余的PDD模型,

X t − 1 ( l ) ∼ p θ l ( X t − 1 ( l ) ∣ X t ( l ) , X 0 ( l − 1 ) ) \mathbf{X}_{t-1}^{(l)} \sim p_{\theta_l}(\mathbf{X}_{t-1}^{(l)} \mid \mathbf{X}_{t}^{(l)}, \mathbf{X}_{0}^{(l-1)}) Xt1(l)pθl(Xt1(l)Xt(l),X0(l1))

其中 X 0 ( l − 1 ) \mathbf{X}_{0}^{(l-1)} X0(l1) p ~ θ l − 1 \tilde{p}_{\theta_{l-1}} p~θl1的去噪结果。

除了高质量的生成之外,所提出的PDD还有两个优点:

1)PDD中的扩散模型由于独立性而可以并行训练,这允许在训练期间灵活地重新分配计算。

2)由于其多阶段生成过程,PDD适合从中间过程开始恢复任意粗粒度的场景,从而扩展了该方法的多功能性。

4.3 场景细分

为了克服生成大型三维场景的内存限制,作者提出了场景细分方法。作者将三维场景 Z ( l ) \mathbf{Z}^{(l)} Z(l)沿 z z z轴划分为 I I I个重叠的子组件,即 { Z i ( l ) } i = 1 I \{ \mathbf{Z}_{i}^{(l)} \}_{i=1}^{I} {Zi(l)}i=1I。对于四个子场景的情况,令 Z i ( l ) ∈ { 0 , 1 } ( 1 + δ l ) h l \ 2 × ( 1 + δ l ) w l \ 2 × d l × c \mathbf{Z}_{i}^{(l)}\in \{0,1\}^{ (1+\delta_l)h_l\backslash 2 \times (1+\delta_l)w_l\backslash 2 \times d_l \times c } Zi(l){0,1}(1+δl)hl\2×(1+δl)wl\2×dl×c表示一个子场景, δ l \delta_l δl表示重叠率,PDD中的共享 l l l阶扩散模型经过训练,可重构 Z i ( l ) \mathbf{Z}_{i}^{(l)} Zi(l),其中 i = 1 , ⋯   , 4 i=1,\cdots, 4 i=1,,4。随后,通过融合算法将子场景合并为一个整体,即对重叠部分进行投票,以确保三维场景的连续性。

在训练过程中,为了确保在生成子场景时能够感知整个场景的上下文,作者通过添加与其他子场景重叠的区域作为条件来训练模型。在推理过程中,整个场景以自回归的方式生成。除了第一个没有上下文生成的子场景外,所有其他子场景都利用已经生成的重叠区域作为条件,即:

X t − 1 , i ( l ) ∼ p θ ( X t − 1 , i ( l ) ∣ X t , i ( l ) , X 0 , i ( l + 1 ) , ∑ j ≠ i Δ i j ⊙ X 0 , j ( l + 1 ) ) \mathbf{X}_{t-1, i}^{(l)} \sim p_{\theta} ( \mathbf{X}_{ t-1, i}^{(l)} \mid \mathbf{X}_{t, i}^{(l)}, \mathbf{X}_{0, i}^{(l+1)} , \sum_{j\neq i}\Delta_{ij}\odot \mathbf{X}_{ 0, j}^{(l+1)}) Xt1,i(l)pθ(Xt1,i(l)Xt,i(l),X0,i(l+1),j=iΔijX0,j(l+1))

其中 j j j是第 i i i个场景之前生成的子场景的索引, Δ i j \Delta_{ij} Δij X 0 , i ( l + 1 ) \mathbf{X}_{0, i}^{(l+1)} X0,i(l+1) X 0 , j ( l + 1 ) \mathbf{X}_{0, j}^{(l+1)} X0,j(l+1)之间的二进制掩码,表示 X 0 , j ( l + 1 ) \mathbf{X}_{0, j}^{(l+1)} X0,j(l+1)上的重叠区域为1,分离区域为0。场景细分模块可以减少模型参数,因为扩散模型可以由四个子场景共享。在实践中,作者只在最大规模上实现场景细分方法,这需要最大的内存。

4.4 应用

除了作为生成模型的主要功能之外,作者还介绍了PDD的两个新应用。首先,跨数据集迁移旨在将在源数据集上训练的模型调整到目标数据集。由于输入规模的灵活性,PDD可以通过在新数据集中重新训练或微调较小规模的模型,同时保留较大规模的模型来实现这一目标。利用PDD的策略提高了在不同数据集之间迁移三维场景生成模型的效率。其次,无限场景生成在自动驾驶和城市建模等领域引起了极大兴趣,这些领域需要大规模的三维场景。PDD可以扩展其场景细分技术,通过使用先前生成的场景的边缘作为条件,它可以迭代地创建更大的场景,并且可能不受大小限制。

5. 实验分析

5.1 评估指标

由于二维生成中使用的指标(例如FID)不直接适用于三维场景,因此作者引入并实施了三个指标来评估生成的三维场景的质量。

生成的场景上的语义分割结果用于评估模型在创建语义连贯场景方面的有效性。具体来说,本文采用了两种架构,即基于体素的 SparseUNet和基于点的PointNet++,以执行分割任务。作者采用了平均交并比(mIoU)和平均准确度(MA)以供评估。

F3D是二维Fréchet Inception Distance(FID)的三维改编版,它基于具有3D CNN架构的预训练自动编码器。作者计算并报告特征域中生成的场景和真实场景之间的Fréchet距离(按 1 0 − 3 10^{-3} 103比率)。

最大平均差异(MMD)是一种统计测量,用于量化生成的场景和真实场景的分布之间的差异。与本文提出的F3D方法类似,作者通过相同的预训练自动编码器提取特征并呈现三维场景之间的MMD。

表1|各种扩散模型在CarlaSC的三维语义场景生成中的比较©️【深蓝AI】编译

5.2 实验设定

数据集:

作者使用CarlaSC和SemanticKITTI进行实验。具体来说,由于数据量大且语义对象多样,作者在综合数据集CarlaSC上进行主要实验和消融研究。本文提出的模型是在CarlaSC的训练集上训练的,该训练集有10个类别和32,400次扫描。SemanticKITTI是一个真实世界收集的数据集,用于本文的跨数据集迁移实验。这两个数据集都经过调整,以确保语义类别的一致性,补充材料中有更多详细信息。

模型架构:

主要提出的PDD在三维场景金字塔的三个尺度上执行,即表2中的 s 1 s_1 s1 s 2 s_2 s2 s 4 s_4 s4。作者根据这些尺度在PDD中为三个扩散模型实现了3D-UNets。值得注意的是,由于使用了场景细分,在 s 4 s_4 s4尺度上应用的模型的输入/输出大小为 s 3 ′ s_3' s3,而其他模型的这种大小遵循工作尺度大小。在消融研究中,作者还在实验中引入了 s 3 ′ s_3' s3尺度。此外,作者仅在尺度 s 4 s_4 s4上实现了两种基线方法,即原始离散扩散 和带有 VQ-VAE 解码器的潜在扩散模型。

训练设置:

作者使用相同的训练设置训练每个PDD模型,除了批量大小之外。具体来说,作者为AdamW优化器设置学习率为 1 0 − 3 10^{-3} 103,为扩散过程设置时间步长 T = 100 T = 100 T=100,epoch设置为800。对于在 s 1 s_1 s1 s 2 s_2 s2 s 4 s_4 s4尺度上工作的模型,批量大小设置为128、32和16。但是,对于基于 尺度的基线方法,由于内存限制,作者使用的批量大小为 8。作者注意到,所有扩散模型都是在四个 NVIDIA A100 GPU 上训练的。此外,作者对场景融合算法应用三线性插值,并将场景细分中的重叠率 δ l \delta_l δl设置为0.0625。

表2-4|算法中不同模块性能对比©️【深蓝AI】编译

5.3 主要结果

生成质量:

作者将本文提出的方法与两个基线进行了比较,即原始离散扩散 和潜在扩散。表1中报告的结果证明了本文提出的方法在和现有方法具备相同计算资源时,在无条件和条件设置的所有指标上都表现出色。作者提出的方法在分割任务中表现出显著的优势,尤其是当它在SparseUNet中达到70%左右的mIoU时,这反映了它能够生成具有准确语义连贯性的场景。在图3中我们可以看到,作者提供了不同模型结果的可视化,其中涉及的方法在随机三维场景生成的细节生成和场景多样性方面均表现出更好的性能。

图3|CarlaSC上无条件生成结果的可视化©️【深蓝AI】编译

作者还对条件三维场景生成进行了比较:他利用输入尺度的灵活性,在 s 1 s_1 s1尺度的粗略结构场景条件下,通过 s 2 s_2 s2 s 4 s_4 s4尺度的模型进行生成。作者将本文提出的方法与以未标记点云和相同粗略场景为条件的离散扩散进行基准测试。表1和图5中的结果显示了金字塔扩散模型条件所生成的令人印象深刻的结果。我们还可以观察到,基于点云的模型可以在F3D和MMD上实现不错的性能,这可能是由于三维点条件比粗略场景提供了更多关于场景的结构信息。尽管点云的信息条件丰富,但金字塔扩散模型在大多数指标上仍然可以胜过它。

图4|数据检索可视化©️【深蓝AI】编译

无过度拟合验证:

MMD和F3D指标以数字方式说明了生成的场景与训练集之间的统计特征距离。如表1所示,本文提出的方法在所有基线方法中实现了最低的MMD和F3D。但是,作者认为这并不表示对数据集过度拟合,原因如下。首先,本文所提出的MMD和F3D大于全局真值的MMD和F3D。此外,作者利用结构相似性(SSIM)来搜索并显示生成的场景与数据集中其最近邻居的不同。具体来说,本文方法生成1k个场景并使用SSIM指标在训练集中识别它们最接近的匹配。计算这1k个场景的平均SSIM并在表3中显示。此外,作者将相同的方法应用于验证集以建立基线。表3显示作者生成的场景与基线相当,验证了本文提出的方法不会过度拟合训练集。为了进一步支持这一点,作者使用分布图(如图4所示)来验证作者生成的场景与训练集之间的相似性。作者还在该图中显示了不同百分位数的三对,表明SSIM分数较低的场景与训练集中最接近的匹配场景差异更大。这一视觉证据进一步证明PDD可以有效地捕捉训练集的分布,而不仅仅是记住它。

5.4 消融分析

图5|CarlaSC上条件生成结果的可视化(PC代表点云条件)©️【深蓝AI】编译

金字塔扩散:

本节实验探索了不同的细化尺度对生成场景质量的影响。根据表4,条件和非条件场景生成质量都随着尺度的增加而逐渐提高。平衡训练开销和生成质量,具有 s 4 s_4 s4级数的三尺度模型在性能和计算成本之间提供了最佳平衡。作者发现,随着尺度数量的增加,性能确实有所提高,尤其是在增加第二个尺度时。然而,从三尺度金字塔到四尺度金字塔的进展却很小。考虑到四尺度金字塔的训练开销比三尺度金字塔更大,作者选择后者作为主要模型结构。

场景细分:

作者探索了场景细分的最佳掩模比,并在图6中报告,该图显示了掩模比与F3D和MMD指标的有效性之间的反比关系;较高的掩模比可能会由于过度拟合而导致结果减少,从而降低生成结果的随机性。最低掩模比测试0.0625在所有指标中均获得了最佳结果,并保留了细节。因此,作者将0.0625的掩模比设置为场景细分模块的标准。进一步分析表明,场景细分中较高的重叠率会导致质量下降,主要是因为使用场景融合算法合并子场景时不连续性增加。

表5|在扩散金字塔上以不同尺度在CarlaSC上生成结果©️【深蓝AI】编译

不同尺度上的表现:

为了全面理解作者由粗到细的方法所取得的逐步改进,作者评估了在不同尺度上生成的场景的质量,并在表5中展示了结果。即使在较小的尺度 s 1 s_1 s1下,作者也观察到较高的F3D和MMD分数,表明其能够合成具有合理和多样化布局的场景。随着作者向更大的尺度(即 s 2 s_2 s2 s 4 s_4 s4)前进,mIoU和MA分数持续增加,表明本文提出的模型专注于在后期学习复杂的细节。同时,F3D和MMD指标显示稳定性而没有显着下降,表明场景复杂性和保真度得到了均衡的增强。

图6&7|掩模比对无条件生成结果的影响和无限场景生成示意图©️【深蓝AI】编译

5.5 应用

跨数据集:

图8和图9展示了本文提出的模型在从CarlaSC迁移到SemanticKITTI的数据集上进行无条件和条件场景生成的性能。使用SemanticKITTI数据进行微调后,PDD显示出增强的场景质量,如表6中改进的结果所示。这种微调有效地使模型适应数据集的复杂对象分布和场景动态。值得注意的是,尽管离散扩散(DD)方法的训练工作量较大,但本文提出的方法即使没有微调,仅使用来自SemanticKITTI的粗略场景,也优于DD。这证明了作者方法强大的跨数据迁移能力。

图8&9|无条件和有条件生成示意图©️【深蓝AI】编译

无限场景生成:

图7可视化了使用本文提出的PDD模型生成大规模无限场景的过程。如第3.4节所述,作者首先使用小规模模型快速生成粗略无限三维场景(图7中的底层)。然后,作者利用更大规模的模型逐步添加复杂的细节(图7中的中间和顶层),增强真实感。这种方法使本文提出的模型无需额外输入即可生成高质量、连续的城市景观,克服了传统数据集在有限场景方面的局限性,并支持三维场景分割等下游任务。

表6|在SemanticKITTI上的生成结果:Finetuned Scales设置为None表示从头开始训练,其他表示对相应的预训练CarlaSC模型进行微调©️【深蓝AI】编译

6. 总结

在本研究中,作者引入了金字塔离散扩散模型(PDD)来解决与三维大场景生成相关的重大挑战,特别是在规模有限和可用数据集有限的情况下。PDD展示了一种生成高质量三维户外场景的渐进方法,无缝地从粗糙细节过渡到精细细节。与其他方法相比,PDD可以在有限的资源约束内生成高质量场景,并且不需要额外的数据源。本文的实验结果表明,PDD在无条件和条件生成任务中始终表现良好,成为创建逼真和复杂场景的可靠且强大的解决方案。此外,所提出的PDD方法在有效地将基于合成数据训练的模型适应现实世界数据集方面具有巨大潜力,并为当前有限的现实世界数据挑战提出了一个有希望的解决方案。
©️【深蓝AI】

Ref:
https://arxiv.org/pdf/2311.12085
https://github.com/yuhengliu02/pyramid-discrete-diffusion

编译|匡吉
审核|Los

深蓝学院在9月开启了机械臂主题的系列讲座,欢迎查看详情预约⬇️
移步官网观看讲座

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2131855.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

云平台虚机卡顿问题分析

电信云中宿主机分配的虚机运行时出现卡顿问题,可能由多种因素导致。为了准确分析并定位原因,可以从以下几个方面进行排查: 1. 资源使用情况 检查CPU、内存和磁盘使用情况: 使用工具检查虚拟机的CPU、内存和磁盘使用情况,确认是否存在资源瓶颈。如果发现资源使用率较高,特…

4052A/4052B/4052C/4052D/4052E/4052F/4052G /4052H信号/频谱分析仪

4052A/4052B/4052C/4052D/4052E/4052F/4052G /4052H信号/频谱分析仪 苏州新利通 Ceyear 4052具备出色的测试动态范围、相位噪声、幅度精度和测试速度,具备频谱分析、I/Q分析、实时频谱分析、瞬态分析、矢量信号分析、脉冲分析、音频分析等丰富的测试功能。 Ceyear…

C++ | Leetcode C++题解之第400题第N位数字

题目: 题解: class Solution { public:int findNthDigit(int n) {int d 1, count 9;while (n > (long) d * count) {n - d * count;d;count * 10;}int index n - 1;int start (int) pow(10, d - 1);int num start index / d;int digitIndex i…

【Elasticsearch】-7.17.24版本接入

官网 https://www.elastic.co/cn/downloads/elasticsearch 本项目基于windows环境下,其他环境操作类似 1、初始化配置 打开config/elasticsearch.yaml 添加如下配置 cluster.name: dams_clusternetwork.host: 127.0.0.1 http.port: 9200# 不开启geo数据库 inge…

【软件设计师真题】下午题第五大题---面向对象程序设计

系列文章目录 1.【软考之软件设计师】PPT课件 2.【软考之软件设计师】学习笔记 3.【软考之软件设计师】上午题—信管网(每天更新) 4.【软考之软件设计师】上午题—希赛网(每天更新) 5.【软件设计师真题】下午题第一大题—数据流图设计 6.【软件设计师真题】下午题第二大题…

小众语言ruby在苹果中的初步应用

前言 感觉Ruby在苹果系统中充当一种脚本语言来使用。 1、直接输入ruby没有反应 2、可显示结果的命令 ruby -e "puts Goodbye, cruel world!" 效果如下图: 说明苹果系统中ruby已经安装完毕,或者就是自带的。 3、编辑运行第一个ruby程序 输入…

手把手教你用护核纪元地心护核者用服务器开服联机

1、购买后登录服务器面板(百度莱卡云面板) 登录面板的信息在绿色的登陆面板按键下方,不是你的莱卡云账号 进入控制面板后会出现正在安装的界面,安装大约3分钟(如长时间处于安装中请联系我们的客服人员) 2、…

代码随想录算法训练营第13天|二叉树基础知识、递归遍历、迭代遍历、层序遍历、116. 填充每个节点的下一个右侧节点指针

目录 二叉树基础深度和高度满二叉树和完全二叉树二叉搜索树和平衡二叉搜索树二叉树节点定义前中后序遍历 递归遍历前序递归遍历—144. 二叉树的前序遍历 迭代遍历层序遍历116. 填充每个节点的下一个右侧节点指针1、题目描述2、思路3、code 二叉树基础 深度和高度 满二叉树和完…

有JavaScript动态加载的内容如何抓取

引言 JavaScript动态加载的内容常见于现代Web应用中,用于增强用户体验和减少初始页面加载时间。然而,这些动态加载的内容对于传统的网页抓取工具来说往往是不可见的,因为它们不包含在初始的HTML响应中。为了抓取这些内容,我们需要…

Java项目: 基于SpringBoot+mybatis+maven星之语明星周边产品销售网站(含源码+数据库+毕业论文)

一、项目简介 本项目是一套基于SpringBootmybatismaven星之语明星周边产品销售网站 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美…

计算机中的浮点数(二)

IEEE 754-2008 标准(二进制) 计算机中的浮点数(一)-CSDN博客文章浏览阅读188次,点赞12次,收藏12次。这篇文章介绍了计算机系统中浮点数的正式定义,关于浮点数的介绍总共分两篇文章,这是第一篇。https://blog.csdn.net/daduzimama/…

动手学深度学习(pytorch)学习记录30-含并行连接的网络(GoogLeNet)[学习记录]

目录 GoogLeNetInception块GoogLeNet模型训练模型 GoogLeNet GoogLeNet,也称为Inception v1,是由Google团队在2014年提出的深度学习模型,它在当年的ImageNet竞赛中取得了显著的成绩。GoogLeNet的设计引入了多个创新点,包括Incept…

Spring Boot实战-文章管理系统(1.用户相关接口)

一、用户相关接口 1.注解 RestController:是一个组合注解,它结合了 Controller 和 ResponseBody 注解的功能(就相当于把两个注解组合在一起)。 在使用 RestController 注解标记的类中,每个方法的返回值都会以 JSON 或…

【数据结构】带你初步了解排序算法

文章目录 1. 排序的概念及运用1.1 概念1.2 运用 2. 常见的排序算法2.1 插入排序2.1.1 直接插入排序(简单插入排序)2.1.2 希尔排序 2.2 选择排序2.2.1 直接选择排序(简单选择排序)2.2.2 堆排序 2.3 交换排序2.3.1 冒泡排序2.3.2 快…

python | 2行命令解决pip模块不存在问题

一、报错情况 有时,在执行 pip 更新命令后,会提示更新失败或错误警告。 报错提示如下: 然后,再次使用 pip 安装命令时,会提示 pip 模块找不到或不存在: ModuleNotFoundError: No module named pip 导致…

在线IP代理检测:保护您的网络安全

在互联网飞速发展的今天,越来越多的人开始意识到网络安全和隐私保护的重要性。在线IP代理检测工具作为一种有效的网络安全手段,能够帮助用户识别和检测IP代理的使用情况,从而更好地保护个人隐私和数据安全。本文将详细介绍在线IP代理检测的相…

SQL数据库(MySQL)

一、在Ubuntu系统下安装MySQL数据库 1、更新软件源,在确保ubuntu系统能正常上网的情况下执行以下命令 sudo apt-get update 2、安装MySQL数据库及相关软件包 # 安装过程中设置root用户的密码 123456 sudo apt-get install mysql-server ​ # 安装访问数据库的客…

Rsync——远程同步

目录 一、rsync远程同步概述 1、rsync 简介 2、rsync的同步方式 3、rsync的备份方式 4、rsync与cp、scp对比 二、常用rsync命令 1、基本格式 2、配置源的两种表达方法 三、搭建rsync下行同步 1、搭建环境 2、配置rsync源服务器(172.16.88.44)…

出版学术专著需要具备哪些条件?

出版学术专著通常需要具备以下条件: 一、学术价值 1. 创新性 - 你的专著应在研究主题、方法、观点等方面具有一定的创新性。这可以是提出新的理论框架、发现新的现象、采用新的研究方法或对已有理论进行新的阐释和拓展。 - 例如,在某一特定学科领域中&…

【北京迅为】《STM32MP157开发板使用手册》- 第二十七章Cortex-M4按键实验

iTOP-STM32MP157开发板采用ST推出的双核cortex-A7单核cortex-M4异构处理器,既可用Linux、又可以用于STM32单片机开发。开发板采用核心板底板结构,主频650M、1G内存、8G存储,核心板采用工业级板对板连接器,高可靠,牢固耐…