欢迎光临散文网 会员登陆 & 注册

InvokeAI官方视频 - AI创造图像的底层逻辑

2023-08-20 00:19 作者:但丁jr  | 我要投稿

InvokeAI官方视频 - AI创造图像的底层逻辑

InvokeAI官方视频 - AI创造图像的底层逻辑

要理解diffusion以及如何用它创造新内容,我们首先要明白机器是如何在训练集上学习图像的。在训练过程中,机器会获得一个带有描述的图像,例如“红色椅子前的帽子”。然后,它们会观察图像如何通过添加噪声而转变,直到图像完全变得不可理解。接着,机器会从噪声开始,反向生成图像,尽量接近原始图像。通过反复这样做,机器变得非常擅长根据文本描述从噪声中生成图像。我们称这个过程为去噪,即从噪声输入转化为图像。

当模型在训练时,一个图像和一个文本描述被传入,机器观察潜在的图像变成噪声,然后模型的任务是从产生的噪声中重新创建那个图像。通过在广泛的训练数据上这样做,模型开始像字典一样理解每张图片中的每个词,并开始为图像中的每个词定义含义。

当我们考虑如何使用这些模型开发新图片时,我们传入一个文本提示,模型根据对这些词的理解,将噪声转化为结果图像。去噪过程不是一次性完成的,而是通过一系列称为去噪步骤的步骤完成的。这些步骤是由一个调度器组织和指导的,它决定如何执行这些步骤,如何在去噪时间线上安排这些步骤,以及如何将噪声解释为结果图像。

使用diffusion模型时,重要的是要理解提示和模型是如何互动的。许多流行的图像生成服务,如Dolly和mid-journey,会为你修改提示,帮助你得到一个美观的结果图像。但这实际上限制了你控制提示模型的能力。Invoke和许多其他稳定的diffusion界面不会在传递给模型之前修改你的提示,所以真正理解如何从系统中获得你想要的主题和风格是很重要的。

这是一个有用的框架,可以帮助你开发一个强大的提示。但我建议你查看社区内容,学习特定的术语和提示结构,以获得你想要的结果图像。在这种情况下,我创建了一个由类别、质量修饰符和一般美学或组成术语组成的主题和风格的提示。我们可以看到这个提示生成的几个图像。重要的是要理解,如果你使用相同的设置和相同的噪声,你通常会得到相同的图片。这意味着,如果我们想通过添加新的术语或向系统添加负提示(告诉模型我们不想看到什么)来实验,我们可以更好地理解单个术语对我们图像的影响。

在这种情况下,我添加了“joyful”这个术语,并添加了一个负提示,说我们不想要任何阴郁或神秘的东西。结果,图像看起来更加明亮和欢庆。如果我们比较原始图像和新图像,如果我们追求一个更快乐的美学,新图像肯定更符合这一点。再次,我们生成的图像之间的结构相似性的原因是因为我们保持了相同的噪声。在diffusion中,这是由一个称为种子的数字控制的。如果你使用相同的种子,将生成相同的噪声,你将能够复制或实验你的图像。

当我们考虑去噪时间线时,我们可以考虑从1到0的倒计时。这是一个重要的概念,当我们谈论像图像到图像这样的事情时,它允许我们在去噪过程中传入一个额外的提示,但这个提示不是一个基于文本的提示,而是一个图像提示或一个初始图像。图像到图像的过程将我们的噪声和初始图像合并成一个噪声图像,然后在其上进行去噪过程。

如果你在时间线上查看这个,我们的原始提示照片,例如一辆车上的向日葵,将在一系列步骤中生成我们的原始图片。这没有任何类型的图像提示,它只是标准的去噪过程。但是,如果我们添加一个图像提示,我们将被提供一个新的选项,称为去噪强度。去噪强度

决定了在噪声损坏中留下多少噪声,以及在去噪过程中还剩下多少步骤来获得结果图像。换句话说,去噪强度决定了结果图像应该看起来多像你提供的原始图像提示。如果你有一个高的去噪强度,你将在去噪过程的早期提供它,机器学习模型将有更多的时间和更多的噪声来生成图像中的新内容。如果去噪强度低,这意味着在这个图表的右侧更多,我们将给模型更少的时间和更少的噪声来生成新的图像,这意味着它看起来更接近我们的图像提示。

举个例子,我使用相同的种子、提示和图像提示生成了下面的四个图像。当我们有一个非常高的去噪强度时,这意味着我们在过程的早期注入图像,有很多噪声,机器学习模型生成的东西看起来与我们的输入相当不同。然而,当我们在去噪强度上越来越低时,我们的图像提示看起来越来越接近我们的结果图像。

我不能强调理解这个概念有多重要,因为它在许多高级技术中都被使用,如in painting和out painting,以及控制适配器,我接下来会谈到。

随着控制适配器的发布,如control net,我们现在有能力用额外的信息,如结构、深度或风格,来调节去噪过程,这些都对去噪过程产生了巨大的影响。每个控制适配器都有一个设置,允许你定义去噪过程中调节开始和结束的时间点。

我马上就会跳到Invoke中来展示这是如何工作的,但重要的是要理解,早期应用到生成过程的控制适配器将对图像的整体结构和组成产生更大的影响,而在生成过程结束时应用的控制适配器将更多地影响图像的具体细节。

让我们看看当我们添加一个控制适配器到这个机器人生成时会发生什么。你会注意到,我已经创建了一个可爱的外星机器人提示,并使用相同的噪声生成这张图片。我已经关闭了随机设置,但我会保留其他所有的设置。我们在我的控制适配器部分要做的是启用我的control net,并使用soft Edge模型。我已经传入了一个我之前使用的生成,我使用它作为soft Edge的灵感。控制适配器正在做的是将这个转换成一个可以在去噪过程中作为调节信息使用的预处理图像。

当我生成这个图像时,它将根据我设置的开始和结束步骤百分比应用到去噪过程中。对于这个生成,我会让它在整个去噪过程中生成。这将传入这个控制适配器来调节去噪,并定义结果图像的结构和细节。让我们试试看,你会看到,它生成了一个新的图像,映射到预处理图像中识别的许多soft edges。你甚至会注意到,脸上的一些奇特的线条被解释为这个机器人盔甲上的裂缝。

所以,如果我们把InStep百分比降低到,比如说,60%,我们在去噪过程的最后步骤中使用了更少的控制适配器。让我们看看这会得到什么。我们看到,控制适配器的很多结构都在结果图像中,但一些奇怪的细节,如盔甲上的裂缝,实际上已经被重新解释成了一些更加连贯的东西。我们给了机器学习模型更多的灵活性来解释图像,并在没有应用调节信息的情况下完成图像。从去噪过程的最后一系列步骤中移除控制适配器可以给你更多的灵活性和自由,这是你可以玩的东西,看看如何获得你想要的图像。

现在,如果我们对开始步骤做同样的事情,比如说,移除前25%的步骤,我们实际上并没有为图像的初始组成提供控制适配器调节。通常,除非你知道你在做什么,否则这可能是不可取的,我们马上就会看到为什么。这将对图像的整体组成产生很大的影响,因为它在早期使用了原始的种子和原始的图像结构,然后在后面加入了这个控制适配器,这可能与它一直在生成的结构或组成不匹配。让我们看看会发生什么。你可以明显地看到,这有一些奇怪的问题。在生成周期的早期,你可以看到它开始生成我们原始图像的这种组成。所以,这种突然的变化现在意味着,我们在不真正与我们传入的控制适配器调节匹配的区域中得到

了高光和阴影,导致了一个比我们可能想要的更低质量的图像。

现在,你可以复制一个控制适配器,然后我们可以在生成的中间有更多的灵活性。我们将开始生成,并允许结构由我们的调节来定义,我们将在中间给予它很多的自由,然后我们将用一些调节来完成它,让我们看看这对我们有什么用。因为我们只控制了去噪过程的前25%,很多那些早期的结构步骤都没有被调节,结果图像与我们原始的控制适配器图像有很大的不同。它的质量比我们根本没有提供任何早期调节的时候高得多。所以,如果我们增加到可能是55%,我们在中间给予更多的自由,我们可能会发现一个更接近我们原始控制适配器图像的图像。

正如你所看到的,理解你的文本提示、图像提示和控制适配器是如何在去噪时间线上使用的,可以让你更好地理解如何结构你传入系统的内容,以获得与你的创意愿景和需求相一致的输出。

我希望这是一个有助于你了解diffusion基本原理的简介。我鼓励你给我反馈。这是太技术性了吗?还是不够技术性?还有更多你想学习但我们没有涉及的内容吗?无论是什么,都让我们知道。我们有更多的内容即将推出,帮助你更好地理解和利用所有正在被纳入Invoke的高级技术。在此之前,祝你去噪愉快!

InvokeAI官方视频 - AI创造图像的底层逻辑的评论 (共 条)

分享到微博请遵守国家法律