稳定扩散:ControlNet模型完全教程

目录

  • 表格后的几句话 (Introduction)
  • 安装 ControlNet
  • 使用 Canny 模型
  • 使用 OpenPose 模型
  • 使用 Depth 模型
  • 使用 Line Art 模型
  • 使用 Soft Edge 模型
  • 使用 Scribble 模型
  • 使用 Segmentation 模型
  • 使用 Shuffle 模型
  • 使用 P2P 模型
  • 使用 Reference 模型
  • 使用 Multi-ControlNet 模型
  • 结论
  • FAQ

引言

今天,我将向您展示如何使用 ControlNet 进行稳定扩散,以创建令人惊叹的图像。让我们开始吧。转到您的扩展选项卡,点击“加载”。搜索并安装 ControlNet。然后,前往 Huggingface 链接下载所需的模型。将它们移动到 models 文件夹中的 ControlNet 文件夹内。完成后重新启动用户界面。进入您的网络界面,您将看到 ControlNet 的存在。

安装 ControlNet

首先要做的是点击此处找到您要上传的图像。现在让我们来看看这里的所有选项。点击“启用”和“允许预览”。让我们从第一个模型 Canny 开始。Canny 可以检测图像中物体的边缘。点击预览图标,可以看到 Canny 预处理的效果。此外,启用“像素完美”选项可自动调整 ControlNet 的分辨率。我使用一个逼真的模型,将游戏角色变为逼真的人物。生成的图像是 ControlNet 和您的提示的结合。现在我们尝试一个不同的控制类型。OpenPose 是更实用的模型之一。它可以检测人体上的关键点,使您能够在图像中重现人物姿势。如果查看预处理器,您将看到五个不同的选项。我们从 OpenPose 开始。它试图检测输入图像中的所有主要点。现在让我们基于我的参考图像生成一张图像。我要粘贴我的提示并生成。如果我还想重新创建参考图像中的手的位置,我会使用 OpenPose Hands。它是手部检测和 OpenPose 的组合。您可以轻松复制参考图像中显示的手和手指的确切位置。OpenPose Face 包括脸部和身体,而 OpenPose Face Only 只包括脸部。这些在肖像和特写照片中效果很好。最后一个模型是 OpenPose Full,它结合了之前的所有模型-脸部、身体和手。如您所见,OpenPose 也适用于多人。接下来,我们有深度预处理器。它适用于物体定位,但会丢失细节。目前,深度有四个不同的预处理器,略有差异。较浅的颜色表示近距离物体,而较深的颜色表示较远的物体。Normal 生成基于输入图像的法线图。法线图是用于呈现平坦表面纹理的图像。总体而言,Normal_Bae 对前景和背景都更好。MLSD 是一种直线检测器,对重建建筑和室内场景很有用。所有曲线和细节都被忽略。线条艺术是为您的数字或手绘作品上色的非常有用的工具。有多个带有细小差异的预处理器可供选择。在这次生成中,我使用的是 Lineart Realistic 预处理器。这是生成的图像,这里还有两张图片。

使用 Canny 模型

接下来,让我们谈谈 Soft Edge。它是像 Canny 一样的已知检测算法,但边缘更加柔和。但是,它仍然可以保留细节,并生成接近参考图像的图像。当您不希望轮廓过于严格时,最好使用它。Scribble 预处理器将您的图像转换为粗糙的涂鸦。Hed 和 Pidinet 可以给您提供粗糙的轮廓,而 XDoG 则可以给您提供细致的轮廓。分割将为图像中的每个识别对象分配唯一的颜色。您可以在电子表格上查找颜色代码。在编辑应用程序中更改或添加颜色,可以向图像中引入新对象。在这个新图像中,我将放置带有绘画的窗户,并添加一个新人物。洗牌会扭曲和重排输入图像的颜色。洗牌后的图像为我们生成图像提供了一个起点。这对于复制颜色方案和主题非常有用。这里还有更多具有不同主题的图片。

使用 OpenPose 模型

P2P 或 Pix2Pix 可根据您的指令更改图像。它没有预处理器,只需要下载模型。我觉得它不太有用,因为生成的图像质量不太好。接下来,我们有 Reference。您会注意到它不需要一个模型,只需要预处理器。Style Fidelity 滑块没有太多作用,所以我建议保持默认值。现在让我们来谈谈预处理器。Reference Only 擅长创建参考图像的微小变化。我发现 reference_only 是最好的,因为它既遵循提示,又遵循参考图像。adain+attn 的结果与 Reference_only 相似。您可以尝试两种预处理器,看哪种更适合您的图像。Reference_aiden 忽略颜色和细节,只保留整体构图。它也受提示的影响较大。最后,我们有 Multi-ControlNet,它允许您同时使用多个 ControlNet。要启用此功能,请转到设置> ControlNet> Multi-ControlNet。我将选择 2 并重新启动用户界面。现在您可以访问多个 ControlNet 标签。对于我的第一个 ControlNet,我使用的是 OpenPose。如果您已经有了经过预处理的图像,就像我在这里一样,您必须将预处理器设置为“none”。对于我的第二个 ControlNet,我使用的是 MLSD,并且我又有了一个经过预处理的图像。我们还将更改另一个选项,即 Control Weight。它决定了 ControlNet 对生成的图像的影响程度。我将其设为 0.5,这样它就不会太大地影响我的主题。正如您所见,生成的图像是两个 ControlNet 的混合。

结论

订阅以获取更多关于稳定扩散的视频。

FAQ

Q: ControlNet 是否可以应用于所有类型的图像? A: 是的,ControlNet 可以应用于各种类型的图像。

Q: ControlNet 是否可以用于视频? A: 不,ControlNet 目前只适用于静态图像。

Q: 如何选择最合适的 ControlNet 模型? A: 这取决于您的具体需求和图像的特点。您可以尝试不同的模型,并根据效果选择最合适的模型。