什么是stable diffusion?

🌟 Stable Diffusion:一种深度学习文本到图像生成模型 🌟

Stable Diffusion是2022年发布的深度学习文本到图像生成模型,主要用于根据文本的描述产生详细图像。它还可以应用于其他任务,如内补绘制、外补绘制,以及在提示词指导下产生图生图的转变。

💻 Stable Diffusion的开发和支持 💻

Stable Diffusion是一种潜在扩散模型,由慕尼黑大学的CompVis研究团体开发的各种生成性人工神经网络之一。它是由初创公司StabilityAI、CompVis与Runway合作开发,并得到EleutherAI和LAION的支持。 截至2022年10月,StabilityAI筹集了1.01亿美元的资金。

📥 Stable Diffusion的源代码和模型权重 📥

Stable Diffusion的源代码和模型权重已分别公开发布在GitHub和Hugging Face,可以在大多数配备有适度GPU的电脑硬件上运行。而以前的专有文生图模型(如DALL-E和Midjourney)只能通过云计算服务访问。

🔍 Stable Diffusion的工作原理 🔍

Stable Diffusion是一种扩散模型的变体,叫做"潜在扩散模型"(latent diffusion model; LDM)。扩散模型是在2015年推出的,其目的是消除对训练图像的连续应用高斯噪声。Stable Diffusion由3个部分组成:变分自编码器(VAE)、U-Net和一个文本编码器。与其学习去噪图像数据(在"像素空间"中),而是训练VAE将图像转换为低维潜在空间。添加和去除高斯噪声的过程被应用于这个潜在表示,然后将最终的去噪输出解码到像素空间中。在前向扩散过程中,高斯噪声被迭代地应用于压缩的潜在表征。每个去噪步骤都由一个包含ResNet骨干的U-Net架构完成,通过从前向扩散往反方向去噪而获得潜在表征。最后,VAE解码器通过将表征转换回像素空间来生成输出图像。研究人员指出,降低训练和生成的计算要求是LDM的一个优势。

📝 调节数据的编码 📝

去噪步骤可以以文本串、图像或一些其他数据为条件。调节数据的编码通过交叉注意机制(cross-attention mechanism)暴露给去噪U-Net的架构。为了对文本进行调节,一个预训练的固定CLIP ViT-L/14文本编码器被用来将提示词​转化为嵌入空间。

📝stable diffusion使用方法📝

Stable Diffusion模型支持通过使用提示词来产生新的图像,描述要包含或省略的元素,以及重新绘制现有的图像,其中包含提示词中描述的新元素(该过程通常被称为"指导性图像合成"(guided image synthesis)[11])通过使用模型的扩散去噪机制(diffusion-denoising mechanism)。 此外,该模型还允许通过提示词在现有的图中进内联补绘制和外补绘制来部分更改,当与支持这种功能的用户界面使用时,其中存在许多不同的开源软件。

Stable Diffusion建议在10GB以上的显存(GDDR或HBM)下运行, 但是显存较少的用户可以选择以float16的精度加载权重,而不是默认的float32,以降低显存使用率。

📝stable diffusion①文生图📊

Stable Diffusion中的文生成图采样脚本被称为"txt2img",它接受一个提示词以及各种选项参数,包括采样器类型、图像尺寸和随机种子。根据模型对提示的解释,txt2img会生成一个带有不可见数字水印标签的图像文件。这个水印标签允许用户识别由Stable Diffusion生成的图像,尽管调整大小或旋转图像会使水印失去有效性。Stable Diffusion模型是在由512×512分辨率图像组成的数据集上训练的,因此txt2img生成图像的最佳配置也是以512×512的分辨率生成的。后来的Stable Diffusion 2.0版本引入了生成768×768分辨率图像的能力。

每次txt2img的生成过程都会使用一个影响生成图像的随机种子。用户可以选择随机化种子以探索不同的生成结果,或者使用相同的种子以获得与之前生成的图像相同的结果。用户还可以调整采样迭代步数。较高的值需要更长的运行时间,但较小的值可能会导致视觉缺陷。另一个可配置的选项是无分类指导比例值,允许用户调整提示词的相关性。对于更具实验性或创造性的用例,用户可以选择较低的值,而对于旨在获得更具体输出的用例,用户可以使用较高的值。

反向提示词是Stable Diffusion一些用户界面软件中的一个功能,例如StabilityAI自己的"Dreamstudio"云端软件即服务模式订阅制服务。它允许用户指定模型在图像生成过程中应该避免的提示。这对于由于用户提供的提示词或模型初始训练而导致图像输出中出现不良特征(例如畸形手脚)的情况非常适用。与使用强调符相比,使用反向提示词在降低生成不良图像的频率方面具有高度统计显著的效果。强调符是另一种方法,用于为提示的某些部分增加权重,在关键词中使用括号以增加或减少强调。

📊stable diffusion②图生图📊

Stable Diffusion提供了另一个取样脚本,名为"img2img"。它接受一个提示词、现有图像的文件路径和一个从0.0到1.0之间的去噪强度参数。使用这些参数,img2img可以在基于原始图像的基础上生成一个新的图像,该图像也包含了提示词中提供的元素。去噪强度表示添加到输出图像的噪声量,值越大,图像的变化越多,但可能与提供的提示在语义上不一致。图像升频是img2img的一个潜在用例。

在2022年11月24日发布的Stable Diffusion 2.0版本中,引入了一个深度引导模型,称为"depth2img"。该模型能够推断所提供输入图像的深度,并结合提示词和深度信息生成新图像,以保持新图像中原始图像的连贯性和深度。

Stable Diffusion模型的许多不同用户界面软件提供了通过img2img进行图生成图的其他用例。其中,内补绘制(inpainting)是一个常见的用例,用户可以提供一个蒙版,描述现有图像的一部分,然后根据提示词用新生成的内容填充蒙版的空间。随着Stable Diffusion 2.0版本的发布,StabilityAI还创建了一个专门针对内补绘制用例的专用模型。另一个用例是外补绘制(outpainting),它将图像扩展到其原始尺寸之外,并使用根据提供的提示词生成的内容来填充以前的空白空间。

🌟结论🌟

Stable Diffusion是一个包含多个脚本和模型的工具集,用于生成图像并对图像进行处理。这个工具集提供了多种功能,包括从文本提示生成图像、在现有图像上应用图像处理操作、以及根据图像的深度信息生成新的图像等。Stable Diffusion的目的似乎是通过这些脚本和模型来实现图像生成、图像处理和图像增强等任务,并且可以调整噪声强度等参数来控制生成的图像质量。

相关推荐
web1508509664116 小时前
Stable Diffusion WebUI Two Shot 项目常见问题解决方案
stable diffusion
Jeremy_lf1 天前
【生成模型之三】ControlNet & Latent Diffusion Models论文详解
人工智能·深度学习·stable diffusion·aigc·扩散模型
minos.cpp3 天前
Mac上Stable Diffusion的环境搭建(还算比较简单)
macos·ai作画·stable diffusion·aigc
不当菜鸡的程序媛4 天前
Stable Diffusion模型微调LORA及其变种介绍
stable diffusion
AIGC安琪4 天前
只需3步,使用Stable Diffusion无限生成AI数字人视频
人工智能·stable diffusion·数字人·sd·sd教程
AI绘画咪酱5 天前
【AIGC】ComfyUI 入门教程(4):ComfyUI 管理器|AI 生成图片
人工智能·stable diffusion·aigc
我算是程序猿5 天前
Stable Diffusion4.9.0(Ai绘画)安装教程
人工智能·ai作画·stable diffusion·aigc
AI绘画君5 天前
Stable Diffusion【二次元模型】:最受欢迎的通用二次元大模型AWPainting
linux·服务器·人工智能·ai作画·stable diffusion
不秃头de程序猿5 天前
AI绘画Stable Diffusion ,3种方法精确控制人物姿势,总有一种适合你!
大数据·人工智能·ai作画·stable diffusion·aigc·sd
AI码上来5 天前
【保姆级教程】Linux上部署Stable Diffusion WebUI和LoRA训练,拥有你的专属图片生成模型
linux·人工智能·python·stable diffusion