正文
Stable Diffusion是一种深度学习文本到图像的模型,于2022年发布。它主要用于根据文本描述生成详细图像,尽管它也可以应用于其他任务,如修补,外绘,和由文本提示指导的生成图像到图像的翻译。它由初创公司Stability AI与许多学术研究人员和非营利组织合作开发。Stable Diffusion是一种潜在扩散模型,这是一种深度生成神经网络。其代码和模型权重已公开发布,可以再配备至少8 GB VRAM的适度GPU的大多数消费者硬件上运行。
与DALL-E和Midjourney不同,Stable Diffusion使用一种叫做潜在扩散模型(LDM)的扩散模型(DM)。它能够逐步移除训练图像上高斯噪声。Stable Diffusion由3部分组成:
变分子编码器(VAE)
U-Net
可选的文本编码器
VAE编码器将图像从像素空间压缩到更小维度的潜在空间,捕获图像更基本的语义含义。在前向扩散过程中,高斯噪声在压缩的潜在表示上迭代应用。由ResNet组成的U-Net块将前向扩散的输出反向去噪以得到潜在表示。最后,VAE解码器通过将表示转换回像素空间生成最终图像。去噪步骤可以灵活地根据一串文本、图像或另一种模态进行条件设定。编码的条件数据通过交叉注意机制暴露给去噪的U-Nets。Stable Diffusion在LAION-5B上进行训练,这是一个公开可用的数据集,由从网页上抓取的Common Crawl数据派生而来,其中5亿个图像-文本对根据语言和分辨率被分类并过滤到单独的数据集中,预测的水印可能性和预测的“审美”分数(例如,主观视觉质量)。
对于img2img的转换,Stable Diffusion的工作原理是:
(1)变分自编码器(VAE)将图像从像素空间压缩到一个更小维度的潜在空间,捕获图像的更基本的语义含义。
(2)在正向扩散过程中,迭代地将高斯噪声应用到压缩的潜在表示上。接着,由ResNet主干构成的U-Net块将从正向扩散中得到的噪声输出反向去噪,以获得潜在表示。
(3)VAE解码器通过将表示转换回像素空间来生成最终图像。
对于img2img的转换,这种方法的一个优点是它可以灵活地根据一段文本、一幅图像或其他模态进行条件化。被编码的条件数据通过交叉注意力机制暴露给去噪的U-Nets。对于文本条件,使用固定的、预训练的CLIP ViT-L/14文本编码器将文本提示转换为嵌入空间。
例如,我们首先在stable diffusion中生成一个图片(本文图片均为高分辨率图片,可以下载当壁纸):
领取专属 10元无门槛券
私享最新 技术干货