【AI绘画教程】Stable Diffusion 1.5 vs 2

时间:2024-07-20 07:16:33

在本文中,我们将总结稳定扩散 1 与稳定扩散 2 辩论中的所有要点。我们将在第一部分中查看这些差异存在的实际原因,但如果您想直接了解实际差异,您可以跳下否定提示部分。让我们开始吧!

在这里插入图片描述

Stable Diffusion 2.1 发布与1.5相比,2.1旨在解决2.0的许多相对缺点。本文的内容与理解 Stable Diffusion 1 与 2 仍然相关,但读者应确保额外阅读附加的 Stable Diffusion 2.1 部分以了解全貌。

OpenCLIP

Stable Diffusion 2 所做的最重要的转变是替换了文本编码器。Stable Diffusion 1 使用 OpenAI 的 CLIP,这是一个开源模型,可以学习标题描述图像的程度。虽然模型本身是开源的,但训练 CLIP 的数据集很重要,它不是公开的

Stable Diffusion 2 改用 OpenCLIP,这是 CLIP 的开源版本,它是使用已知数据集训练的——LAION-5B 的一个美学子集,可以过滤掉 NSFW 图像。Stability AI表示,OpenCLIP“大大提高了生成图像的质量”,事实上,在指标上优于未发布的CLIP版本。

为什么这很重要

撇开这些模型的相对性能不谈,从 CLIP 到 OpenCLIP 的转变是 Stable Diffusion 1 和 Stable Diffusion 2 之间许多差异的根源

特别是,许多 Stable Diffusion 2 的用户声称它不能像 Stable Diffusion 1 那样代表名人或艺术风格,尽管 Stable Diffusion 2 的训练数据没有被故意过滤以删除艺术家。这种差异源于这样一个事实,即CLIP的训练数据比LAION数据集有更多的名人和艺术家。由于CLIP的数据集不向公众开放,因此无法仅使用LAION数据集恢复相同的功能。换言之,Stable Diffusion 1 的许多规范提示方法对于 Stable Diffusion 2 来说几乎已经过时了。

这意味着什么

这种向完全开源、开放数据模型的改变标志着 Stable Diffusion 故事的重要转变。对 Stable Diffusion 2 进行微调并构建人们希望看到的功能将落在开源社区的肩上,但这实际上是 Stable Diffusion ab initio 的意图——一个由社区驱动的、完全开放的项目。虽然一些用户目前可能对 Stable Diffusion 2 的相对性能感到失望,但 StabilityAI 团队已经花费了超过 100 万 A100 小时来构建一个坚实的基础。

此外,虽然创建者没有明确提及,但这种从使用 CLIP 的转变可能会为项目贡献者提供一些保护,防止潜在的责任问题,考虑到即将到来的知识产权诉讼浪潮,这很重要。

考虑到这个背景,现在是时候讨论 Stable Diffusion 1 和 2 之间的实际区别了。

Negative Prompts

我们首先检查负面提示,与 SD 1 相比,它似乎对 Stable Diffusion(SD) 2 的强劲性能更重要,如下所示:

在这里插入图片描述
现在让我们更详细地看一下负面提示。

Simple Prompt

首先,我们将提示“无边池”提供给 Stable Diffusion 1.5 和 Stable Diffusion 2,没有负面提示。显示了每个模型的三张图像,其中每列对应于不同的随机种子。

在这里插入图片描述

prompt: "infinity pool"
size: 512x512
guidance scale: 12
steps: 50
sampler: DDIM

正如我们所看到的,Stable Diffusion 1.5 总体上似乎比 Stable Diffusion 2 表现更好。在SD 2中,最左边的图像有一个贴片,与图像不匹配,而最右边的图像几乎是不连贯的。

现在,我们以相同的方式从相同的起始噪声生成图像,这次使用负提示。我们添加了否定提示“丑陋、平铺、画得不好的手、画得不好的脚、画得不好的脸、出框、突变、突变、额外的四肢、额外的腿、额外的手臂、毁容、变形、斗鸡眼、身体出框、模糊、糟糕的艺术、糟糕的解剖学、模糊、文本、水印、颗粒状”(ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy),这是 Emad Mostaque 使用的否定提示。

添加否定提示后,SD 1.5 通常表现更好,尽管中间图像的标题对齐方式可能较差。对于 SD 2,改进更为剧烈,尽管整体性能仍然不如 SD 1.5

在这里插入图片描述

prompt: "infinity pool"
size: 512x512
guidance scale: 12
steps: 50
sampler: DDIM
negative prompt: "ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy"

我们直接比较有和没有负面提示的 SD 2 性能。检查揭示了否定提示对可持续发展 2 至关重要这一命题的支持。

在这里插入图片描述
下面我们可以看到 SD 1.5 和 2 生成的最终图像的比较,无论有没有否定提示,从同一个随机种子开始。

在这里插入图片描述

Complicated Prompt

我们运行与上面相同的实验,这次使用更复杂(积极)的提示。这一次,我们使用的不是“无边泳池”,而是“无边泳池,背景是热带森林,分辨率高,细节,8 k,数码单反相机,良好的照明,光线追踪,逼真”(infinity pool with a tropical forest in the background, high resolution, detail, 8 k, dslr, good lighting, ray tracing, realistic)。虽然我们可以省略“背景中有热带森林”部分,以隔离纯粹的美学添加,但我们包括它是为了更好地探索更复杂提示的语义拟合度。

同样,我们在没有负面提示的情况下显示结果。图像看起来不再逼真,标题对齐可以说更好。SD 1.5 的水质地也要好得多。

在这里插入图片描述

prompt: "infinity pool with a tropical forest in the background, high resolution, detail, 8 k, dslr, good lighting, ray tracing, realistic"
size: 512x512
guidance scale: 12
steps: 50
sampler: DDIM

一旦我们添加了与上一个示例相同的否定提示,我们就会看到一些有趣的结果。特别是,否定提示似乎实际上可能会对 SD 1 产生不利影响,但对 SD 2 有普遍帮助。SD 2 中的每张图像在否定提示下都更好,而 SD 1 的标题对齐方式似乎普遍下降。有趣的是,添加否定提示似乎将生成的图像推向了照片级真实感。

在这里插入图片描述

prompt: "infinity pool with a tropical forest in the background, high resolution, detail, 8 k, dslr, good lighting, ray tracing, realistic"
size: 512x512
guidance scale: 12
steps: 50
sampler: DDIM
negative prompt: "ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy"

我们再次直接比较从各种随机种子生成的图像,有和没有 SD 2 的负面提示。

在这里插入图片描述
最后,我们再次显示 SD 1.5/SD2 与带/不带负提示矩阵的比较:

在这里插入图片描述

Textual Inversion(文本反转)

除了普通的否定提示,Stable Diffusion 还支持文本反转。文本反转是一种方法,其中可以使用少量参考图像来生成表示图像的新“单词”。一旦学会了“单词”,就可以像往常一样在提示中使用,使我们能够生成忠实地映射到参考图像的图像。在下面的示例中,一个小图形的 4 个图像被反转为“S_*”。然后像往常一样在各种提示中使用这个“词”,将参考图像与其他语义概念忠实地结合在一起:

在这里插入图片描述
在下面的示例中,我们使用 Stable Diffusion 2.0 从基本提示“美味的汉堡包”创建了几张图像。然后,此提示将使用正提示或文本反转标记和/或负提示或文本反转标记进行扩充。例如,第二行最右边的图像使用引用 Midjourney 的文本倒置标记和正常的否定提示“丑陋、无聊、糟糕的解剖学”来增强基本提示。

在这里插入图片描述
正如我们所看到的,文本反转的使用显着提高了 Stable Diffusion 2.0 的性能。

名人

鉴于 LAION 包含的名人图像比 CLIP 的训练数据少,因此知道许多 SD 2 用户观察到生成名人图像的能力比 SD 1.5 更差也就不足为奇了。

下面我们展示了从 3 个随机种子(列)生成的图像,有和没有 SD 1.5 和 SD 2 的负面提示。提示是“基努·里维斯”,此图像的全分辨率版本也可用。

在这里插入图片描述

prompt: "keanu reeves"
size: 512x512
guidance scale: 7
steps: 50
seed: 119
sampler: DDIM
negative prompt: "ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy"

总体而言,SD 2 在此特定提示方面的性能可与 SD 1.5 相媲美。话虽如此,Stable Diffusion 2 描绘名人的能力在与语义概念相结合时似乎会崩溃。我们在下面对两个这样的提示进行比较,其中图像中的每一列再次对应于给定的随机种子。这一次,我们在每种情况下都使用否定提示。

在这里插入图片描述

prompt: "a white marble bust of Robert Downey Jr. in a museum, cinematic lighting, hyperdetailed, 8 k realistic, global illumination, radiant light, frostbite 3 engine, cryengine, trending on artstation, digital art, fantasy background"
size: 512x512
guidance scale: 12
steps: 50
seed: 120-122
sampler: DPM-Solver++
negative prompt: "ugly, tiling, out of frame, deformed, blurry, bad art, blurred, watermark, grainy"

在这里插入图片描述

prompt: "a studio photograph of Robert Downey Jr., cinematic lighting, hyperdetailed, 8 k realistic, global illumination, radiant light, frostbite 3 engine, cryengine, trending on artstation, digital art"
size: 512x512
guidance scale: 7
steps: 50
seed: 119-121
sampler: DPM-Solver++
negative prompt: "ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy"

正如我们所看到的,Stable Diffusion 1.5 在这方面往往优于 Stable Diffusion 2(它甚至一度似乎描绘了史蒂夫·卡雷尔而不是小罗伯特·唐尼)。虽然这种差异是意料之中的,但考虑到基努·里维斯的例子的结果,其程度可能比预期的要大。

艺术图像

如 OpenCLIP 部分所述,除了包含的名人图像比 CLIP 训练数据少之外,LAION 数据集还包含更少的艺术图像。这意味着生成程式化图像变得更加困难,并且“以_____风格_____”的规范方法不再像在 Stable Diffusion 1 中那样起作用。下面我们比较了 Stable Diffusion 1.5 和 Stable Diffusion 2 的 4 个随机种子的图像,我们尝试以 Greg Rutkowski 的风格生成图像。

在这里插入图片描述

prompt: "A monster fighting a hero by greg rutkowski, romanticism, cinematic lighting, hyperdetailed, 8 k realistic, global illumination, radiant light, trending on artstation, digital art"
size: 512x512
guidance scale: 9
steps: 50
seed: 119-122
sampler: DPM-Solver++
negative prompt: "ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy"

结果是激烈的 - Stable Diffusion 1.5 再次成为 Stable Diffusion 2 的明显赢家(开箱即用)。虽然使用其他未明确引用艺术家的描述符来增强提示,但仍然可以使用 SD 2 生成风格化图像,但性能仍然不如 SD 1.5,如下所示:

在这里插入图片描述
另一方面,一些用户发现 SD 2 在生成逼真的图像方面具有很强的能力:

在这里插入图片描述

文本连贯性

与 Stable Diffusion 1 相比,Stable Diffusion 2 可能具有开箱即用的优势,其中一个地方是文本连贯性。大多数文本到图像模型在表示文本方面都很差。这完全不足为奇——虽然我们人类很容易解析文本,但我们必须记住,单词是极其复杂的语言系统的一部分,根据特殊规则排列以传达含义。此外,这些单词本身以明显近乎随机的方式由字母组成;而且,更进一步,这些字母的实际视觉表现可能会有很大差异(例如,比较 Jokerman 和 Consolas 字体)。这些考虑因素(以及其他因素)为这些模型无法正确传达文本提供了一些解释,尤其是在简单单词之外。

话虽如此,Stable Diffusion 2 在传达文本方面似乎比 Stable Diffusion 1 略好一些。下面我们提供几张图片进行比较:

在这里插入图片描述
正如我们所看到的,这两种情况的结果都不是很好,负面提示似乎在这方面影响不大。虽然很难对这些模型生成文本的效果提出客观的衡量标准,但可以说普通人会认为 Stable Diffusion 2 稍微好一点。

其他型号

除了从 CLIP 到 OpenCLIP 的转变之外,Stable Diffusion 2 还发布了一些其他强大的功能,我们在下面总结了这些功能。

深度模型

深度模型与SD 2一起发布。此模型采用 2D 图像并返回该图像的预测深度图。然后,除了文本之外,这些信息还可用于条件图像生成,从而允许用户生成忠实于参考图像几何形状的新图像。

在这里插入图片描述

下面我们可以看到一连串这样的图像,它们都保留了相同的基本几何结构。

在这里插入图片描述

升级模型

Stable Diffusion 2 还发布了一个升级模型,可以将图像放大到原始边长的 4 倍。这意味着放大图像的面积是原始图像的 16 倍!

下面我们可以看到放大我们之前生成的图像之一的结果:

在这里插入图片描述
如果我们放大每张图像中兔子的眼睛,差异会立即显现出来,并且非常令人印象深刻。

在这里插入图片描述

修复模型

Stable Diffusion 2 还附带了更新的修复模型,可让您修改图像的子部分,使补丁在美学上符合

768 x 768 Model

最后,Stable Diffusion 2 现在支持 768 x 768 图像 - 是 Stable Diffusion 1 的 512 x 512 图像面积的两倍多。

Stable Diffusion 2.1

Stable Diffusion 2.1 是在 Stable Diffusion 2.0 发布后不久发布的。SD 2.1 旨在解决 2.0 相对于 1.5 的许多相对缺点。让我们来看看 2.1 是如何做到这一点的。

NSFW过滤器

相对于 2.0,2.1 的最大变化是修改了 NSFW 滤波器。回想一下,2.0 是在 LAION 数据集的一个子集上训练的,该子集使用 NSFW 过滤器过滤了不适当的内容,这反过来又导致描绘人类的能力相对降低。

Stable Diffusion 2.1 也使用这样的过滤器进行训练,尽管过滤器本身被修改为限制较少。特别是,过滤器抛出的误报更少,这大大增加了能够通过过滤器并训练模型的图像数量。训练数据的增加导致了描绘人物的能力的提高。我们再次展示了小罗伯特·唐尼(Robert Downey Jr.)使用相同设置创建的几张图像,除了用于生成它们的模型版本,这次包括Stable Diffusion 2.1。

在这里插入图片描述

prompt: "a studio photograph of Robert Downey Jr., cinematic lighting, hyperdetailed, 8 k realistic, global illumination, radiant light, frostbite 3 engine, cryengine, trending on artstation, digital art"
size: 512x512
guidance scale: 7
steps: 50
seed: 119
sampler: DPM-Solver++
negative prompt: "ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy"

正如我们所看到的,Stable Diffusion 2.1 比 Stable Diffusion 2 有了显着的改进,能够实际描绘小罗伯特·唐尼。 此外,SD 2.1 的皮肤纹理甚至比 SD 1.5 更好。

艺术风格

不幸的是,SD 2.1 描绘特定艺术家风格的能力显然仍然达不到 SD 1.5。下面我们再次看到使用相同设置创建的图像,除了用于创建它们的模型。这些图像旨在捕捉格雷格·鲁特科夫斯基(Greg Rutkowski)的风格。

在这里插入图片描述

prompt: "A monster fighting a hero by greg rutkowski, romanticism, cinematic lighting, hyperdetailed, 8 k realistic, global illumination, radiant light, trending on artstation, digital art"
size: 512x512
guidance scale: 9
steps: 50
seed: 158
sampler: DPM-Solver++
negative prompt: "ugly, tiling, poorly drawn hands, poorly drawn feet, poorly drawn face, out of frame, mutation, mutated, extra limbs, extra legs, extra arms, disfigured, deformed, cross-eye, body out of frame, blurry, bad art, bad anatomy, blurred, text, watermark, grainy"

正如我们所看到的,Stable Diffusion 1.5 在这方面仍然占据着至高无上的地位。

常规图像

我们重复上一节中关于普通提示与“增强”提示的实验,再次仅更改模型版本。

在这里插入图片描述

"Original" prompt: "a cute rabbit"
"Augmented" prompt: "a cute rabbit, cinematic lighting, hyperdetailed, 8 k realistic, global illumination, radiant light, frostbite 3 engine, cryengine, trending on artstation, digital art, fantasy background"
size: 512x512
guidance scale: 9
steps: 50
seed: 119
sampler: DPM-Solver++
negative prompt: "ugly, tiling, out of frame, deformed, blurry, bad art, blurred, watermark, grainy"

正如我们所看到的,2.1 的“原始”纹理比 2.0 有所改进。2.1 的“增强”图像比 2.0 的更具风格化,但总体上非常相似。

结论

虽然这些实验肯定不是严格或详尽的,但它们提供了一些关于 SD 1 和 SD 2 的相对性能的见解。