在这里插入图片描述

1. Stable Diffusion(SD)原理概述

  1. 整体结构:SD不是单一模型,而是由三个模型组成,包括文本编码器(Clip)、2. 生成模型(unit)、变分自编码器(VAE)。
    输入输出:最基础的输入为文本和随机变量(Latent Vector),输出为图片。

2. 各部件详解

  1. 文本编码器(Clip)

专门为SD设计的,采用transformer结构。
训练步骤包括:
限制性预训练:使用图片和文本描述数据集,训练文本编码器和图片编码器,使输出向量尽可能接近。
进一步训练:使用物体名称和描述,训练文本编码器解码出图片含义。

  1. 生成模型(unit)

加噪降噪过程:通过VAE的encoder将图片转换成与Latent Vector相同大小的格式,然后逐步加噪并降噪,生成中间结果。

  1. 变分自编码器(VAE)

包括编码器和解码器,将图片编码成较小格式,再解码回原大小,训练目标是最小化原始图片与解码结果的差异。
利用VAE可以从噪声中生成图片,即输入随机噪声至解码器,生成图片。

3. SD的工作流程

文本通过文本编码器转换为向量。
向量与随机变量结合,控制生成内容的随机性。
使用unit进行加噪降噪,生成中间结果。
中间结果通过VAE解码器还原成最终图片。

4. ComfyUI与SD的结合

ComfyUI用于低显存生成图片,但具体如何结合SD的原理和ComfyUI的操作未在文本中详述。

5. 总结

SD通过三个模型的协同工作,实现了文本到图片的生成。
Clip作为文本编码器,负责将文本转换为向量。
Unit负责生成过程的加噪和降噪,VAE则用于图片的编码和解码,最终还原成清晰图片。
整个流程涉及文本处理、随机性控制、图片生成和还原,是一个复杂但高效的生成系统。

GitHub 加速计划 / co / ComfyUI
28
5
下载
最强大且模块化的具有图形/节点界面的稳定扩散GUI。
最近提交(Master分支:2 个月前 )
1c08bf35 - 4 个月前
2a02546e * add type hints to folder_paths.py * replace deprecated standard collections type hints * fix type error when using Python 3.8 4 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐