Generative Powers of Ten
公和众和号:EDPJ(进 Q 交流群:922230617 或加 VX:CV_EDPJ 进 V 交流群)
目录
0. 摘要
2. 相关工作
4. 方法
4.1. 缩放堆叠表示
4.2. 多分辨率混合
4.3. 多尺度一致抽样
4.4. 基于照片的缩放
4.5. 实现细节
5. 实验
6. 讨论与限制
0. 摘要
我们提出了一种使用文本到图像模型的方法, 在多个图像尺度上生成一致的内容, 实现对场景的极致语义放大,例如,从森林的广角景观到树枝上一只昆虫的微距镜头。 我们通过联合多尺度扩散抽样(joint multi-scale diffusion sampling)方法实现了这一点, 该方法鼓励在不同尺度上保持一致性, 同时保留每个个体抽样过程的完整性。由于每个生成的尺度都由不同的文本提示引导, 我们的方法使得比传统的超分辨率方法更深的放大级别成为可能,这些方法可能难以在极其不同的尺度上创建新的上下文结构。 我们在图像超分辨率和外部绘制(outpainting)中以定性方式将我们的方法与替代技术进行了比较, 并展示了我们的方法在生成一致的多尺度内容方面最有效。
项目页面:https://powers-of-10.github.io/
2. 相关工作
永久视图(Perpetual view)生成。从单个视图的 RGB 图像开始,像无限自然(Infinite
Nature) [11] 和 InfiniteNature-Zero [12] 这样的永久视图生成方法学会生成自然场景的无限飞越(unbounded flythrough)视频。这些方法与我们的生成缩放方法在两个关键方面有所不同:(1) 它们在三维空间中移动相机,产生 “飞越” 效果,带有透视效果,而不是我们的方法产生的 “缩放”,(2) 它们通过渐进地修复新视图的未知部分,从单个图像合成飞越,而我们则同时生成并使得在不同尺度上整个缩放序列保持一致,并采用文本引导的语义控制。
一致性生成的扩散联合抽样。最近的研究 [2, 10, 28, 30] 利用预训练的扩散模型,使用联合扩散过程从较小的部分生成任意大小的图像或全景图。这些过程涉及通过在抽样过程中合并它们的中间结果来同时生成这些多个图像。具体来说,DiffCollage [30] 引入了一个因子图形式来表达这些图像之间的空间约束,将每个图像表示为一个节点,并使用额外的节点重叠区域。每个抽样步骤涉及根据因子图聚合个体预测。为了实现这一点,给定的扩散模型需要针对不同的因子节点进行微调。其他作品如 MultiDiffusion [2] 通过求解最小二乘最优解来调解不同的去噪步骤:即,在重叠区域对扩散模型预测进行平均。然而,这些方法都无法应用于我们的问题,因为我们的联合抽样图像在极其不同的空间尺度上具有空间对应关系。
4. 方法
让 y0,...,y_(N−1) 表示一系列描述单个场景的提示,这些提示对应不同的缩放级别 p_0,...,p_(N−1) 形成几何级数,即,p_i = p^i(我们通常将 p 设置为 2 或 4)。我们的目标是从现有的、预先训练好的文本到图像扩散模型中生成一系列相应的 H × W × C 图像 x0,...,x_(N−1)。我们的目标是以一种一致的缩放方式共同生成整个图像集。这意味着在任何特定的缩放级别 p_i 处,图像 xi 应与缩小图像 x_(i−1) 的中心 H/p × W/p 裁剪保持一致。
我们提出了一种多尺度联合抽样(multi-scale joint sampling)方法和相应的缩放堆叠表示(zoom stack representation),在基于扩散的抽样过程中进行更新。
- 在 4.1 节中,我们介绍了我们的缩放堆叠表示以及允许我们将其渲染为任何给定缩放级别的图像的过程。
- 在 4.2 节中,我们提出了一种将多个扩散估计一致地整合到这个表示中的方法。
- 在 4.3 节中,我们展示了这些组件如何在完整的抽样过程中使用。
4.1. 缩放堆叠表示
我们的缩放堆叠表示(zoom stack representation),用 L = (L0, ...,L_(N−1)) 表示,旨在允许在任何缩放级别 p0,..., p_(N−1) 渲染图像。如图 3 所示的表示包含形状为 H × W 的 N 个图像,每个缩放级别一个,其中第 i 个图像 Li 存储与第 i 个缩放级别 pi 相对应的像素。
图像渲染(rendering)。渲染运算符 Π_image (L; i) 接受一个缩放堆叠 L 并返回第 i 个缩放级别 p_i = p^i 的图像。我们用 D_i(x) 表示将图像 x 按比例 p_i 缩小,并将图像零填充回尺寸 H × W 的操作符;我们用 Mi 表示相应的 H × W 二值图像,其中在中心 H/pi × W/pi 补丁处的值为 1,在填充像素处的值为 0。操作符 Di 通过使用尺寸为 pi × pi 的截断高斯核对图像进行预过滤,并以步幅 pi 进行重新采样。如算法 1 中所述,第 i 个缩放级别的图像 xi 通过从 Li 开始,并迭代地用 D_(j−i) (Lj) 替换其中心的 H/pj × W/pj 裁剪来渲染,其中 j = i + 1,...,N − 1。(在算法 1 中,我们用 ⊙ 表示二进制掩码 M 与图像的逐元素乘法。)该过程确保了在不同缩放级别渲染的图像在重叠的中心区域上保持一致。(按从小到大的比例迭代缩小,然后进行中心对齐堆叠)
噪声渲染。在 DDPM [8] 的每次去噪迭代中,每个像素都被全局缩放的独立同分布的高斯噪声 ϵ ∼ N(0, I) 损坏。由于我们希望在不同缩放级别渲染的图像保持一致,因此必须确保添加的噪声也是一致的,跨不同缩放级别的重叠区域共享相同的噪声结构。因此,我们使用类似于 Π_image 的渲染运算符将一组独立噪声图像 E = (E0, ...,E_(N−1)) 转换为单一的缩放一致噪声 ϵi = Π_noise (E; i)。然而,由于降采样涉及预过滤,这会修改结果噪声的统计特性,因此我们将第 j 个降采样噪声分量通过 pj/pi 放大以保持方差,确保噪声满足标准高斯分布假设,即,对所有级别 i,ϵi = Π_noise (E; i) ∼ N(0, I)。
4.2. 多分辨率混合
通过一种在任意给定缩放级别渲染缩放堆叠并采样噪声的方法,我们现在描述将同一场景的多个观测 x0,...,x_(N−1)(在不同缩放级别 p0,...,p_(N−1) 下)整合到一致的缩放堆叠 L 的机制。这个过程是一致抽样过程的必要组成部分,因为在各个缩放级别应用扩散模型会在重叠区域产生不一致的内容。具体来说,第 j 个缩放堆叠层级 Lj 在所有缩放级别 i ≤ j 上用于渲染多个图像,因此其值应与多个图像观察(或扩散模型样本),即 {xi:i ≤ j} 保持一致。最简单的解决方案是简单地对所有观察结果的重叠区域进行平均。然而,这种方法会导致模糊的缩放堆叠图像,因为对于重叠区域的粗略观察包含的像素较少,因此只有较低频率的信息。
为了解决这个问题,我们提出了一种称为多分辨率混合(multi-resolution blending)的方法,它使用拉普拉斯金字塔来选择性地混合每个观测级别的适当频率带,这可以防止混叠和过度模糊。我们在图 5 中概述了这个过程。更具体地说,为了更新缩放堆叠中的第 i 层,我们首先将所有 j ≥ i 的样本裁剪以与第 i 级的内容匹配,并将它们缩放回 H×W。然后,我们将这 N−i−1 个图像中的每一个分析成拉普拉斯金字塔,并在相应的频率带上进行平均(见图 5),得到一个平均的拉普拉斯金字塔,可以重新组合成图像并分配给缩放堆叠的第 i 层。这个过程对缩放堆叠的每一层 Li 都应用,Li 从所有更进一步缩小的级别 j ≥ i 收集。
4.3. 多尺度一致抽样
我们完整的多尺度联合抽样过程如算法 2 所示。图 4 说明了单个抽样步骤 t:在每个缩放级别中的噪声图像 z_(i,t) 以及相应的提示 yi 被并行地输入到预训练的扩散模型中以预测噪声
从而计算出估计的干净图像 ˆx_(i,t)。利用我们的多分辨率融合技术,干净图像被整合成一个缩放堆叠,然后在所有缩放级别上进行渲染,产生一致的图像 Π_image (Lt; i)。然后,这些图像与输入 zt一起用于 DDPM 更新步骤,计算出下一个 z_(t−1)。
4.4. 基于照片的缩放
除了使用文本提示从头开始生成整个缩放堆叠外,我们的方法还可以生成一个序列,将焦点放大到现有照片中。给定最缩小的(most zoomed-out)输入图像 ξ,我们仍然使用算法 2,但在每次混合操作之前,我们额外更新去噪图像以最小化以下损失函数:
其中,正如我们在第 4.1 节中定义的那样,Di(x) 将图像 x 按比例 pi 缩小,并将结果填充回 H × W,而 Mi 是一个二进制掩码,在中心 H/pi ×W/pi 的正方形处为 1,其他位置为 0。在每次混合操作之前,我们以学习率 0.1 应用 5 个 Adam [9] 步。这种简单的基于优化的策略鼓励估计的干净图像
以一种与 ξ 提供的内容相一致的缩放方式匹配。我们在图 6 中展示了我们生成的基于照片的缩放序列。
4.5. 实现细节
对于底层的文本到图像扩散模型,我们使用了一个在内部数据源上训练的 Imagen [21] 的版本,它是一个级联扩散模型,包括 (1) 一个基础模型,以文本提示嵌入为条件,以及 (2) 一个超分辨模型,另外以基础模型的低分辨率输出为条件。我们使用其默认的 DDPM 抽样过程,具有 256 个抽样步骤,并且我们仅对基础模型使用我们的多尺度联合抽样。我们使用超分辨模型独立地对每个生成的图像进行上采样。
5. 实验
6. 讨论与限制
我们工作中的一个重要挑战是发现一组适当的文本提示,这些提示在一组固定尺度上相互一致,并且可以由给定的文本到图像模型有效地一致生成。一个可能的改进途径是在抽样过程中,优化连续缩放级别之间适当的几何变换(suitable geometric transformations)。这些变换可以包括平移、旋转,甚至缩放,以找到更好的缩放级别与提示之间的对齐方式。
另外,可以优化文本嵌入,找到与后续缩放级别相对应的更好的描述。或者,可以使用语言生成模型进行闭环生成,即通过将生成的图像内容提供给语言生成模型,并要求其优化文本提示以产生在给定一组预定义尺度下更接近的图像。