跳到主要内容

图像生成

问题

Diffusion 模型的原理是什么?和 GAN 有什么区别?

答案

一、图像生成方法演进

二、Diffusion 模型原理

前向过程:逐步向图像添加噪声,直到变成纯噪声

反向过程:从纯噪声逐步去噪,恢复为图像

Stable Diffusion 架构

文本 → CLIP Text Encoder → 文本特征

噪声 → U-Net(反复去噪) → Latent → VAE Decoder → 图像

关键创新:在潜空间(Latent Space)而非像素空间做去噪,大幅降低计算量。

三、GAN vs Diffusion

对比维度GANDiffusion
训练方式生成器 vs 判别器对抗去噪(非对抗)
训练稳定性不稳定(模式坍塌)稳定
生成质量高(特定领域)更高(通用)
多样性有模式坍塌风险多样性好
生成速度快(一次前向)(需多步去噪)
可控性(文本控制)

四、主流图像生成模型

模型提供方特点
DALL-E 3OpenAI文本理解强、集成 ChatGPT
MidjourneyMidjourney艺术质量高
Stable DiffusionStability AI开源、可定制
FluxBlack Forest Labs开源、质量高

常见面试问题

Q1: Stable Diffusion 为什么在潜空间做去噪?

答案

  • 原始图像 512×512×3 = 786K 维度,直接去噪计算量巨大
  • VAE 将图像压缩到 64×64×4 的潜空间,维度降低 48 倍
  • 在低维潜空间去噪 → 解码回像素空间
  • 质量损失很小,但训练和推理速度大幅提升

Q2: 如何控制图像生成的结果?

答案

  • 文本 Prompt:通过自然语言描述控制内容
  • 负面 Prompt:描述不想出现的内容
  • ControlNet:用边缘图/姿态图/深度图精确控制构图
  • LoRA:针对特定风格/人物微调
  • Inpainting:指定区域重新生成

相关链接