写作 · 2025-02-27

SD专栏文章01:什么是Stable Diffusion?

大家好,我最近打算写一些关于stable diffusion的文章,给一些小白从零开始学习并理解ai生图的原理和过程。今天是第一篇文章,几乎是纯理论性的,其实很多文章比我说得明白,如果看不明白,可以略过,毕竟这仅仅是理论。

什么是Stable Diffusion

Stable Diffusion(SD) 是一种基于深度学习的生成式模型,专注于图像生成任务(如文生图、图生图、图像修复等)。其核心特点是结合了扩散模型(Diffusion Model)与潜在空间(Latent Space)技术,能够通过文本或图像输入生成高质量、多样化的视觉内容。
相较于传统生成对抗网络(GAN),Stable Diffusion以开源模式发布(代码、模型、数据集均公开),吸引了全球开发者和艺术家的广泛参与。其代表性的应用包括AI绘画、设计辅助、医学图像增强等。例如,用户输入“a cute cat”等文本,即可生成逼真的猫咪图像。

核心原理:扩散模型与潜在空间

首先介绍扩散模型。

假设你有一张清晰的猫照片,现在不断往照片上撒“噪声”(类似于给图片加马赛克)。每撒一次噪声,图片就变得更模糊,直到最后完全变成一团乱码(也就是纯粹的噪声图)。

就像把墨水滴进水里,墨水逐渐扩散到整杯水,完全看不出原本的形态。

以上的动作对一张图片来说显然是破坏性的,这个过程叫做前向扩散

既然有破坏,那自然也有重建,逆向扩散就是这个重建过程。stable diffusion逆向重建,也就是从这个纯粹的噪声图重新回到那只清晰的猫图片的过程。如何能够做到呢?这就是stable diffusion的关键了——噪声预测器(U-Net神经网络)。

模型可以通过大量练习(也就是大家说的模型训练),记住“猫的图片被噪声破坏的规律”,无数次把猫图破坏掉,由于猫图是固定不变的,所以噪声破坏会有规律,于是大量的破坏和逆向的推算,使得模型记住噪声图恢复猫形象的规律。

当然,事实上比这要稍微复杂一些,因为我们还需要让模型能识别文本提示,让模型根据文本提示决定保留哪些特征…

以上就是扩散模型的简介了。

下面介绍潜在空间。

一张512×512像素的图片,每次处理它需要处理262144个小色块(512×512=262144),这使得计算机需要的算力简直可怕,普通的显卡根本无能为力,何况普及和赚钱。于是,stable diffusion采取了VAE(变分自编码器)技术,将图片512×512压缩为略缩图64×64,这样,一次仅需要处理4096个色块,大幅度节省计算资源。

在扩散模型中撒噪声和去噪声,都是在压缩后的这个潜在空间(Latent Space)中进行的,去噪完毕后,再使用VAE解码器还原问高清图。

 ​类似用乐高积木搭模型:先拆解成小零件(压缩),在零件层面修改(扩散过程),最后再拼回成品。

以上是潜在空间。

开源社区生态:Automatic1111与ComfyUI

Stable Diffusion的成功离不开活跃的开源社区,其中两大工具链尤为突出,也是目前大家常用生图工具。以后我的专栏将主要围绕这两个工具来进行介绍。

1.Automatic1111的WebUI

    • 提供图形化界面,支持一键安装和参数调节(如采样步数、CFG值),大幅降低使用门槛。
    • 社区贡献了数百个插件(如LoRA、Textual Inversion),支持风格微调、超分辨率修复等功能。

    项目链接:GitHub – AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI

    2.ComfyUI的节点化工作流

      • 采用模块化设计,用户可自定义生成流程(如结合IPAdapter控制图像风格、HumanSeg实现换装)。
      • 适合开发者进行高阶优化,例如结合ControlNet实现姿势控制或背景替换,搭建属于自己的独特工作流。

      项目链接:GitHub – comfyanonymous/ComfyUI: The most powerful and modular diffusion model GUI, api and backend with a graph/nodes interface.

      3.社区资源

      • 模型共享平台:Hugging Face、Civitai(C站)提供数万种预训练模型,涵盖动漫、写实、3D等多种风格。
      • 商业化探索:部分社区通过微调模型实现定制化服务(如电商产品图生成),或通过AIGC内容付费获取收益。
      • 国内平台扩展,如:libulibu,魔搭社区。

      案例对比:扩散模型 vs 传统GAN

      指标 GAN(如Pix2Pix) Stable Diffusion
      生成质量 易出现模式崩溃,细节模糊 细节丰富,分辨率高(支持4K输出)
      训练稳定性需平衡生成器与判别器,易陷入局部最优 基于变分下界优化,训练更稳定
      可控性依赖手工设计条件(如类别标签)支持文本、图像、语义图多模态控制
      计算效率 显存占用高,仅支持小批量训练潜在空间压缩使计算效率提升64倍
      目录