什么是Stable Diffusion
Stable Diffusion是一种在潜在空间扩散(latent diffusion)的模型。它不是在高维图像空间中操作,而是首先将图像压缩到潜空间(latent space)中。然后,通过在潜空间中应用扩散过程来生成新的图像。
Stable Diffusion能够从文本描述中生成详细的图像,它还可以用于图像修复、图像绘制、文本到图像和图像到图像等任务。简单地说,我们只要给出想要的图片的文字描述,Stable Diffusion就能生成符合你要求的逼真的图像!
Stable Diffusion将“图像生成”过程转换为逐渐去除噪声的“扩散”过程,整个过程从随机高斯噪声开始,经过训练逐步去除噪声,直到不再有噪声,最终输出更贴近文本描述的图像。然而,这个过程的缺点是去噪过程的时间和内存消耗都非常大,尤其是在生成高分辨率图像时。为了解决这个问题,Stable Diffusion引入了潜在扩散,潜在扩散通过在较低维度的潜在空间上应用扩散过程而不是使用实际像素空间来减少内存和计算成本。
Stable Diffusion是stability.ai开源的图像生成模型,可以说Stable Diffusion的发布将AI图像生成提高到了全新高度,其效果和影响不亚于Open AI发布的ChatGPT。
Stable Diffusion的核心概念
Stable Diffusion的核心概念包括:自动编码器、U-Net、文本编码器等。
1、自动编码器
自动编码器(VAE)由两个主要部分组成:编码器和解码器。编码器将图像转换为低维潜在表示,该表示将作为输入传递给 U_Net。解码器则相反,它将潜在表示转换回图像。
2、U-Net
U-Net是一种全卷积网络,用于语义分割,它由两个分支组成:编码器和解码器。编码器将输入图像分成大小相等的补丁,然后将这些补丁传递到下一级处理,解码器将这些补丁重新组合成输出图像。U-Net的优点是它可以在不同的尺度上进行预测,并且可以使用较少的训练数据来训练模型 。
3、文本编码器
文本编码器会将输入提示转换为 U-Net 可以理解的嵌入空间,一般是一个简单的基于Transformer的编码器,它将标记序列映射到潜在文本嵌入序列。