Learning Images Across Scales Using Adversarial Training
Max Planck Institute for Informatics; Inria; Université Côte d'Azur; Nanyang Technological University
一句话总结
给定一批「无配准、只知大致尺度」的普通分辨率图像,本文把它们看作某个连续尺度空间(scale space)的切片分布,用对抗训练学习出一个多尺度生成器,能在单一模型中连续、相干地表示跨越多个数量级的尺度,实现最高 256 倍的高质量放大,并支持约 20 fps 的交互式漫游。
问题背景
真实世界的结构跨越极大范围的尺度,但普通图像只能捕捉尺度谱中很窄的一片,原因是它同时受限于「有限视场」和「有限分辨率」。已有的多尺度表示方法可归为三类,但都无法处理本文设定的输入:
- Level-of-detail(细节层次):从一张完整的最高分辨率图像出发,用低通滤波构造更粗尺度。需要拿到最精细尺度的整幅图,当尺度跨度巨大时(吉像素级)根本不可行。
- 超分辨率:从粗尺度图像推断更精细尺度、幻想出高频内容,但放大倍率一般只到 10 倍量级。
- 结构化聚合(structured aggregation):把多张图像拼合成多尺度表示,但要求图像密集采集且跨尺度精确配准。
本文针对的是一种更宽松、更贴近现实的采集场景:一组分辨率相同(256×256)、但拍摄尺度各异的图像块,且不知道每个块在 2D 平面中的位置,只有一个粗略的尺度估计(例如从卫星元数据或焦距推断)。典型例子是同一地理区域被卫星、飞机、无人机在不同高度拍下的遥感图像。这类数据前述三种方法都处理不了:没有最精细全图(排除 LOD)、尺度跨度远超超分能力、缺少位置线索(排除结构化聚合)。
核心方法
作者的关键洞察是:一批跨尺度的图像块构成了一个数据分布,因此可以用对抗训练(GAN)来学习。整个框架把多尺度图像块视为一个底层连续尺度空间 \(\bar{I}\) 的切片,并强制生成结果在空间与尺度两个维度上都相干。这带来两个互补的训练目标:(i)生成尺度空间的 2D 切片要匹配训练数据的分布;(ii)生成的尺度空间要在所有维度上保持一致。
尺度空间被形式化为一个关于空间坐标 \(\mathbf{x}=(x,y)^T\) 和带宽 \(\omega\) 的连续函数:
\[\bar{I}(\mathbf{x},\omega)=\mathbf{c}\]
其中 \(\mathbf{c}\in\mathbb{R}^3\) 是 RGB 颜色。\(\omega\) 越大,暴露出的高频细节越多。为处理巨大动态范围,作者在对数域定义尺度 \(s\):
\[s=s(\omega)=\log_2\!\left(\frac{\omega}{\omega_{min}}\right)\in\mathbb{R}_{\ge 0}\]
典型动态范围 \(s_{max}=8\),即最精细图像的频率是最粗图像的 256 倍。由采样定理(Nyquist),带宽为 \(\omega\) 的信号需要相应的空间分辨率,随尺度指数增长:
\[N=N(s)=\left\lceil \sqrt{2}\,\omega_{min}2^{s+1}\right\rceil\]
其中 \(\sqrt{2}\) 因子补偿了图像对角线方向较低的有效采样率。这意味着最精细尺度动辄需要吉像素级图像——直接制造这样的图像极其困难,正是本文用生成模型绕开的地方。
整体系统(图 5):生成器 \(G\) 接收随机向量 \(\mathbf{z}\)、连续的图像块位置 \(\mathbf{x}_p\) 和尺度 \(s_p\),每次输出一张 \(N_p\times N_p\)(256×256)的图像;判别器 \(D\) 比较生成块与数据块的分布;再加一项跨尺度一致性损失。训练时 \(\mathbf{z}\)、\(\mathbf{x}_p\)、\(s_p\) 都随机采样。
该框架支持两种工作模式:
- 伪重建(pseudo-reconstruction):输入来自单个尺度空间(同一场景的多尺度观测),\(G\) 收敛到对 \(\bar{I}\) 的一个相干近似。此时 \(G\) 会忽略 \(\mathbf{z}\)(输出几乎无变化)。它隐式完成了图像块的对齐,且是一个极其紧凑的表示——参数量比等价吉像素图像的像素数少最多 885 倍。缺失区域会被跨尺度无缝、一致地「幻想」填补。
- 生成模型:输入来自不同场景(同一窄类别),\(G\) 收敛到一个尺度空间的分布 \(p(\bar{I}_G)\),不同 \(\mathbf{z}\) 给出不同但各自一致的尺度空间样本。
技术细节
方法的两大核心组件是「多尺度生成器」和「稳定的训练流程」。
多尺度生成器
生成器建立在 alias-free StyleGAN(StyleGAN3) 之上,因为它天然是连续函数、支持无混叠平移,并已被证明支持一定程度的缩放。作者采用逐点操作的 R-configuration 变体(旋转等变,且更适合多尺度,因为空间卷积的固定邻域含义会随尺度变化)。StyleGAN3 用傅里叶特征(方向性 2D 正弦)作为输入:
\[f_j(\mathbf{x}_i)=\sin\!\left(2\pi\boldsymbol{\omega}_j^T\mathbf{x}_i\right)\]
为引入缩放,先对网格坐标做平移与缩放变换:
\[g(\mathbf{x}_i;\mathbf{x}_p,s_p)=2^{-s_p}\left(\mathbf{x}_i-\mathbf{x}_p\right)\]
但直接这么做有个致命问题:\(s_p\) 很大时会把傅里叶特征拉伸成几乎常数的平坦图,合成网络 \(S\) 无法从中生成有意义的图像。简单提高频率又会突破第一层的 Nyquist 限制。作者的最终设计基于两个观察:
- 傅里叶特征分箱(binning)+ 按箱同时混入:把尺度区间切成宽度 \(\Delta s\) 的不重叠箱,共 \(N=\lceil s_{max}/\Delta s\rceil\) 个频率箱 \(F_k\)。每个箱随机采样 512 个频率,最大幅度为 \(2^{s_{base}+\Delta s\cdot k}\)。实验中 \(\Delta s=3\)、\(s_{base}=6\)。按箱混入的权重函数为:
\[w_k(s_p)=\min\!\Big(1,\ \max\!\big(0,\ s_p-\Delta s\cdot k+1\big)\Big)\]
这样整箱特征在规则、狭窄的区间内一次性混入,大幅减少了缩放过程中的重加权(否则单个特征被持续重新缩放会导致漂移和撕裂)。
- 把分箱特征注入到 \(S\) 的不同层:除第一层外,在每个上采样层之后把傅里叶特征拼接到神经特征上。分配依据是各层的 Nyquist 限制——频率越高,注入得越晚(图 7)。中间经过的非线性层越少,位置畸变越小,因此高频特征注入到更靠后的层。
训练流程
训练大体沿用官方 StyleGAN3 的设置(R1 正则化、自适应判别器增强 ADA),但多尺度设定带来两个挑战,分别用两个手段解决:
渐进式图像块采样(Progressive Patch Sampling):跨所有尺度的均匀随机采样无法收敛到满意结果。作者让采样在训练早期偏向粗尺度,逐步转向精细尺度——采样分布从负指数分布,过渡到均匀分布,再到线性增长分布(图 8a)。为避免依赖精确尺度标签,操作在宽度为 1 的尺度箱上进行。这显著提升了训练稳定性。
尺度一致性损失(Scale Consistency Loss):比较相隔一个尺度偏移 \(\Delta s_p\) 的两张生成块:
\[\mathcal{L}_s=\mathbb{E}_{\mathbf{z},\mathbf{x}_p,s_p,\Delta s_p}\Big[d\big(R_{\Delta s_p}(G(\mathbf{z},\mathbf{x}_p,s_p)),\ G(\mathbf{z},\mathbf{x}_p,s_p-\Delta s_p)\big)\Big]\]
其中 \(R_{\Delta s_p}\) 把图像下采样 \(2^{\Delta s_p}\) 倍,\(d\) 是图像距离度量(\(\ell_1\) 范数与 LPIPS 的线性组合),只在两块重叠的像素上计算。作者发现每次迭代只让两个生成器实例之一接收梯度更稳定。
\(\Delta s_p\) 的采样分布对大 \(s_{max}\) 下的尺度一致性影响很大:太小则两块几乎相同、浪费算力,太大则被比较的图像分辨率差异过大、监督信号弱。作者用 Beta 分布来兼顾全区间覆盖与合理集中:
\[p(\Delta s_p\mid s_p)=\frac{B\!\left(\frac{\Delta s_p}{s_p};\alpha,\beta\right)}{s_p}\]
其中 \(\alpha=\sqrt[4]{\max(1,s_p)}\),\(\beta=(\alpha-1)\max(1,s_p)-\alpha+2\),使分布的众数落在 \(\Delta s_p=1\) 并向两侧平滑衰减,同时覆盖整个可用尺度区间(图 8b)。
实验结果
作者在七个数据集上评估:卫星数据 Himalayas 与 Spain(\(s_{max}=8\));从吉像素图像切块的 Milkyway、Moon(\(s_{max}=6\))和 Rembrandt(\(s_{max}=8\),提供真值用于定量分析);以及来自 Flickr 的 Sunflowers 与 Bricks(\(s_{max}=4\))。模型在 8 块 A100 上训练 52–75 小时,占用 38–62MB 磁盘、推理约需 2.8–3.1GB 显存,运行在约 20 fps。
尺度一致性用两套流程量化:(1)生成逐步放大的序列,用光流估计逐像素运动轨迹——理想解是从中心径向线性扩张,据此算整体偏置(Bias)、与真值轨迹的角度差(Angle)和 earth mover’s distance(EMD);(2)在各整数尺度生成全分辨率切片(从 256×256 到 65k×65k),计算切片对之间及对真值的 PSNR。
伪重建(表 1):在所有数据集上成功学到跨数量级尺度空间,支持在任意位置相干放大。重建精度随尺度升高而下降——因为模型有自由在保持整体结构相干的前提下幻想高频细节,本质上是一种生成式压缩。作者甚至故意剔除覆盖某空间区域的训练块,验证模型能合成「不精确但高度可信」的内容(图 13)。
| Dataset | \(s_{max}\) | FID ↓ | Bias ↓ | Angle ↓ | EMD ↓ | PSNRinter ↑ |
|---|---|---|---|---|---|---|
| Himalayas | 8 | 19.1 | 0.06 | 1.2 | 1.08 | 19.5 |
| Spain | 8 | 8.4 | 0.07 | 1.0 | 0.98 | 23.3 |
| Milkyway | 6 | 8.6 | 0.21 | 1.5 | 1.83 | 25.9 |
| Moon | 6 | 9.0 | 0.38 | 1.1 | 1.28 | 28.9 |
| Rembrandt | 8 | 14.6 | 0.20 | 1.2 | 1.91 | 28.9 |
多尺度生成(表 2):与 AnyresGAN 和 PULSE 对比,本方法在 FID 与尺度一致性上都显著更优。例如在 MoonGen 上 FID 6.3(AnyresGAN 18.4),Angle 2.2(AnyresGAN 11.8)。光流轨迹(图 12)显示本方法最接近理想径向轨迹,而 AnyresGAN 缺乏尺度一致性、PULSE 丢失细节。
| Dataset | Method | FID ↓ | Bias ↓ | Angle ↓ | EMD ↓ |
|---|---|---|---|---|---|
| MilkywayGen | AnyresGAN | 30.6 | 0.81 | 11.3 | 12.22 |
| MilkywayGen | PULSE | - | 0.43 | 6.9 | 8.69 |
| MilkywayGen | Ours | 28.3 | 0.11 | 1.2 | 1.55 |
| MoonGen | AnyresGAN | 18.4 | 0.95 | 11.8 | 12.8 |
| MoonGen | PULSE | - | 0.41 | 19.7 | 17.75 |
| MoonGen | Ours | 6.3 | 0.23 | 2.2 | 2.73 |
压缩:模型仅 14M 参数(AnyresGAN 32M、PULSE 18M),而 65k×65k 的 RGB 吉像素图需存 13B 个标量,故参数量压缩达 885 倍。把 Milkyway 吉像素图 JPEG 压到与模型同等大小(质量 32)后,最精细尺度的 patch-based FID 为 114,而本模型为 44,说明连续生成式表示优于直接存像素。
消融(表 3,Milkyway 伪重建):Beta 采样在各项指标上优于均匀采样与两尺度采样;数据集从 96k 缩到极少时仍能收敛(250 张仍可训,但质量严重下降;100 张发散),有趣的是数据越稀疏尺度一致性反而略升;给尺度标签加两个尺度区间的均匀噪声,FID 仅小幅下降、一致性几乎不受影响,说明方法对精确尺度标签不敏感。
贡献与局限
贡献:
- 提出一种基于对抗训练的新范式,从无结构的普通图像中得到紧凑、连续的多尺度图像表示;
- 设计了能稳定、尺度一致地生成大动态范围尺度空间的生成器架构与训练方法(分箱傅里叶特征 + 多层注入、渐进采样、Beta 采样一致性损失);
- 将方法应用于无结构多尺度图像聚合与多尺度生成模型两种场景;
- 提供约 20 fps 的交互式渲染应用,展示推理速度与压缩性能,放大倍率高达 256 倍。
局限:
- 傅里叶特征跨层分布减少了网络把程序化频率内容转成最终图像的容量,偶尔在最精细尺度出现平行线纹理等规律性伪影,以及饱和的彩色斑块(均源于傅里叶特征的晚注入);
- 与多数生成方法一样训练时间可观(数十小时、8 块 A100)——采集端省下的人力代价被转移到了处理时间上;
- 需要每块图像的粗略尺度估计(虽不敏感但不能完全没有);伪重建下细节与真值不逐像素对齐,PSNR 不是合适的度量。
延伸思考
这项工作把「多尺度图像」从确定性的滤波/拼接问题重新表述为一个分布学习问题,核心贡献在于揭示并解决了在 StyleGAN3 的连续傅里叶特征框架里做大动态范围缩放时「缩放 f 与平移 x 不可区分」的歧义——通过分箱、按 Nyquist 限制的多层注入把频率内容有序地喂给不同深度的层。这一思路对任何需要在连续坐标网络里编码跨数量级尺度的任务(神经辐射场的 LOD、材质、几何隐式表示)都有借鉴价值。另一方面,方法目前依赖 GAN 的分布匹配,与并发的基于扩散模型的极端多尺度合成工作相比各有取舍:扩散方法需要为每个尺度精心设计文本提示且只能放大到中心,而本方法能生成完整尺度空间但受限于 GAN 的训练成本与伪影。把这种「切片分布 + 跨尺度一致性」的监督迁移到扩散或前馈架构、乃至 3D/视频尺度空间,是自然的下一步。