聊到AI绘画,基本上就会聊到SD这个概念,毕竟作为开源可以本地部署的AI绘画软件,SD可能是目前的唯一选择,不管是webUI或者ComfyUI,还有国内的很多套壳绘画AI,都是sd作为基础进行二次优化的。那么SD到底是个啥,这篇文章就结合我个人的理解简单跟大家聊聊。
基础介绍
SD全称是Stable Diffusion,稳定扩散模型,可以理解为一种技术,而大家常说的WebUI或者Comfyui都是这个技术的界面层,所以这一点首先要了解。
Stable Diffusion模型是一种基于扩散过程的生成模型,它用于生成高质量的图像。这种模型是在传统的扩散模型(Denoising Diffusion Probabilistic Models, DDPMs)的基础上发展而来的。
那么,SD的架构长什么样子呢?接下来要放出这张已经被很多人发过的图片了:
Stable Diffusion的改进
Stable Diffusion模型的主要改进在于它在潜在空间(latent space)中进行扩散过程,而不是在原始图像空间。这使得模型在生成图像时速度更快,同时保持了高质量的输出。
-
潜在空间(Latent Space):首先,模型训练一个自编码器(autoencoder),将原始图像压缩到一个低维的潜在空间表示。这个表示包含了图像的压缩信息,但尺寸远小于原始图像。
-
在潜在空间中的扩散:在潜在空间中进行正向和反向扩散过程。由于潜在数据的尺寸较小,这大大加快了去噪过程。
-
条件生成:Stable Diffusion模型可以接收文本提示作为条件输入,这使得模型能够根据文本描述生成相应的图像。这是通过将文本提示转换为嵌入向量,并通过注意力机制(如Transformer)与潜在数据结合来实现的。
核心组件构成
没错,stable diffusion其实是由三部分组成的,而每一个都可以理解为一个较为独立的模块,每次使用的时候,不管是文生图还是图生图,都是他们三个相互配合才能生成一张图片,
-
VAE(变分自编码器,Variational Auto-Encoder):VAE负责将原始图像压缩到一个低维的潜在空间(latent space)表示,这个表示被称为潜在数据。VAE由编码器(Encoder)和解码器(Decoder)两部分组成&#x