ComfyUI - XY Grid Demos - XY anything

详情

下载文件

模型描述

这些工作流可作为独立工具使用,或作为现有工作流的附加组件

XY 网格 - 演示工作流

XY 网格节点和模板由 Comfyroll 团队基于 AI Revolution Discord 服务器上多位用户的需求设计。

代码基于 LEv145 的节点。

这些节点可用于对任何工作流中的任意一对参数进行 XY 对比。

模板的使用场景包括:

  • 评估不同模型和 LoRA 组合

  • 评估不同采样器设置

  • 评估工作流中的任意一对参数

  • 微调遮罩和细节设置

  • 生成批量噪声图案

XY 节点可与 SDXL 或 SD1.5 一起使用。

模板列表

  • Demo 1a - XY 列表 - 半色调

  • Demo 1b - XY 从文件夹 - 半色调

  • Demo 2a - XY 插值 - Ksampler

  • Demo 2b - XY 从文件夹 - Ksampler

  • Demo 3a - XY 列表 - 模型和 LoRA

  • Demo 3b - XY 列表 - 模型和 LoRA

  • Demo 4a - XY 插值 - Freeu

  • Demo 4b - XY 从文件夹 - FreeU

  • Demo 5a - XY 索引 - 模型和提示

  • Demo 5b - XY 索引 - 模型和提示

  • Demo 5c - XY 索引 - 模型和提示

  • Demo 5d - XY 索引 - 模型和提示

  • Demo 6a - XY 列表 - 模型和提示

您可以从上述模板中复制 XY 网格节点,并粘贴到您的现有工作流中。

XY 网格方法

共有三种基本方法:

XY 列表

  • 可用于对任意一对控件进行 XY 对比

  • 支持以下数据类型的控件:

    • 整数(使用 CR 字符串转数字 节点)

    • 浮点数(使用 CR 字符串转数字 节点)

    • 文本/字符串

    • 下拉选择(使用 CR 字符串转下拉 节点)

XY 插值

  • 可用于对任意一对整数或浮点数控件进行 XY 对比

  • 节点根据起始值和步长自动计算数值

XY 索引

  • 适用于多种特殊场景,包括:

    • 为从文件提取数据到行列生成 XY 索引

理解索引

这些 CR XY 节点专为迭代工作流设计。上述三种方法均需一个原始节点在每次迭代中生成递增索引。

使用 XY 节点时,请始终将索引设为从 1 开始(而非 0),这将使网格计算更简单。

索引提供一个计数器,用于在每次迭代中计算 X 和 Y 坐标。

配置 XY 网格时,首先确定所需的列数和行数。

将二者相乘得出最终索引值。

例如:3 列 × 4 行 = 12 张图片,因此最终索引为 12。

要开始生成图像,需在 Comfy 菜单中配置批处理数量。

首先勾选“额外选项”和“查看队列”,然后在批处理数量中输入最终索引。这将确保生成 12 张图像,每张使用唯一的 X 和 Y 组合。

在“保存图像”节点中的文件名前缀应包含子文件夹。例如:'TestImages/CR' 将把图像保存至 ComfyUI\output\TestImages,且每张图像以 CR 为前缀。

生成 XY 网格图像

生成 XY 网格图像有两种方法:

  • 使用独立的工作流生成(参考演示 1b 和 2b)

  • 或在同一工作流中生成(参考演示 3b、4a 或 5d)

建议初学者和中级用户使用独立工作流方法。

对于两种方法,您都需要配置以下内容:

  • 包含将被编译成 XY 网格图像的图片的文件夹

    • 该文件夹应位于 ComfyUI\output 的子文件夹中(例如:ComfyUI\output\TestImages)

    • 若使用单工作流方法,此文件夹必须与主工作流中“保存图像”节点的子文件夹一致

  • 图像的起始索引和结束索引

    • 起始索引通常为 0

    • 结束索引通常为 列数 × 行数

  • 您希望在每列和每行上显示的注释

  • 网格图像的输出文件夹(例如:ComfyUI\output\XY grids)

    • 此文件夹应与图像文件夹不同
  • 输出图像格式(例如:webp、jpg、png、tif)

注意:PNG 图像比 JPG 和 WebP 图像大得多,生成时间也更长。推荐使用 WebP 格式。

如果您只想从一组图像中间输出几行,可以仅配置所需的起始和结束索引。例如,如果您有 50 张图像按 5 列排列,通常基于起始索引 0 和结束索引 50 得到 10 行图像。但若将起始索引设为 21、结束索引设为 40,则输出的网格将仅包含第 5、6、7、8 行。

配置注释

当前注释可通过两种方式配置:

  • XY 列表XY 插值 节点中

  • 或在 XY 从文件夹 节点中

使用双工作流方法时,您需在 XY 从文件夹 节点中手动输入注释。

使用单工作流方法时,XY 列表XY 插值 节点可自动生成注释,并自动传递至输出节点。两个节点均允许在注释前或后添加文本(x-prepend-annotation 和 y_prepend_annotation)。例如,若值为 10,可前置 'cfg ',得到 'cfg 10'。

未来计划添加一个可以从文件加载注释的节点。

单工作流如何工作?

单工作流方法会在索引等于结束索引时生成网格图像。例如,若批处理数量为 25 并生成 25 张图像,则当索引达到 25 时,XY 网格图像将自动生成。这可通过 XY 列表(见演示 3a)或 XY 插值(见演示 4a)自动触发,或通过 CR 触发器 节点(见演示 5d)触发。

演示工作流

演示 1 - 半色调

  • 此演示使用 XY 列表方法

  • 创建一个 5 × 7 的半色调图像网格

  • XY 网格通过第二个工作流输出

演示 2 - Ksampler

  • 此演示使用 XY 列表方法

  • 基于 Ksampler 的 cfg 和步数创建一个 5 × 5 网格

  • XY 网格通过第二个工作流输出

演示 3 - 模型和 LoRA

  • 此演示使用 XY 列表方法

  • 基于选定的模型和 LoRA 创建一个 5 × 4 网格

  • XY 网格的输出节点包含在同一工作流中

演示 4 - FreeU

  • 此演示使用 XY 插值方法

  • 基于 FreeU 的 b1 和 b2 参数创建一个 4 × 4 网格

  • XY 网格的输出节点包含在同一工作流中

您也可以随时直接从图像文件夹生成 XY 网格:

演示 5 - 模型和提示

  • 此演示使用 XY 索引方法

  • 索引用于交叉连接来自两个文件的模型和提示数据

  • 基于文件中的模型和提示输入创建一个 4 × 4 网格

    • 下载中包含三个示例文件:

      • SDXL Models.txt

      • SDXL Prompts.txt

      • SDXL Model config.txt(用于演示 5c)

    • 您可编辑这些示例文件,使用您已有的模型,或更改模型子文件夹,或修改提示内容

  • XY 网格的输出节点包含在演示 5d 中

演示 5b

演示 5c - 从文件中拆分行以更新多个控件的示例

演示 5d - 包含 XY 网格的输出节点

这是演示 5d 的输出结果

演示 6 - 模型和提示

  • 此演示使用 XY 列表方法

  • 交叉连接模型和提示数据

  • 生成大量图像,可组合成 XY 网格

节点

  • CR XY 列表

    • 将索引转换为输入并连接原始节点

    • 列表值应以逗号分隔

      • 例如:0.4, 0.5, 0.6, 0.7,
  • CR XY 插值

    • 将索引转换为输入并连接原始节点

    • 列表值应以逗号分隔

      • 例如:0.4, 0.5, 0.6, 0.7,

  • CR XY 索引

    • 将索引转换为输入并连接原始节点

  • CR XY 从文件夹

    • 可使用多种配置

    • 可选择将触发器、x_注释、y_注释转为输入

    • 若未将触发器作为输入使用,则别忘了激活它(设为 true),否则节点将无任何操作

    • 注释列表值应以分号分隔

      • 例如:prompt 1; prompt 2; prompt 3; prompt 4

  • CR XY 保存网格图像

    • 触发器可转为输入或作为控件使用

    • 若未将触发器作为输入使用,则别忘了激活它(设为 true),否则节点将无任何操作

提示

  • 始终将原始节点的索引设为 1(而非 0),这便于根据行列计算索引。

  • 可通过文件输入并拆分行来控制每个轴上的多个值(参见演示 5C)

  • 可创建单列或单行网格,用于一维图像比较

  • X 和 Y 可连接至不同节点

  • 可从上述模板复制 XY 网格节点并粘贴到您的现有工作流中

  • 可从文件夹中的现有图像构建 XY 网格图像。例如,若您已通过其他工作流以适当顺序生成图像,可使用 CR XY 从文件夹CR XY 保存网格图像 将其组合。

安装

首次使用

  • 从上方列表中选择一个模板

  • 在 ComfyUI/output 中创建一个用于图像序列的输出文件夹,例如 'XY test'

  • 在 ComfyUI/output 中创建一个用于网格图像的输出文件夹,例如 'XY grids'

  • 选择一个检查点模型和 LoRA(如适用)

  • 进行一次测试运行

  • 保存一份副本作为你的工作流

已知问题

  1. CR XY Save Grid Image 节点有时会遗漏网格中的最后一张图像。这可能是由于节点处理顺序所致。一个简单的解决方法是重新运行最后一次迭代。例如,在 25 张图像的网格中,如果最后一张图像缺失,将原始节点重置为 25,并设置批次计数为 1。

  2. CR XY Save Grid Image 节点在预览模式下会查找 ComfyUI/temp 文件夹。如果找不到,当前会抛出错误。此问题将在下一个补丁中修复。临时解决方法是手动添加 temp 文件夹。

  3. 列表索引超出范围

    当原始节点上的索引高于你最后一张图像的索引(结束索引)时,可能会出现此错误。此情况将添加错误提示信息。

  4. 按下 Ctrl+Enter 运行队列可能导致无任何迭代。你需要直接点击队列按钮。

故障排除

请参阅我们的 CivitAI 文章

故障排除指南

致谢

Grockster、King Lord 和 THM — 协助确定需求并测试节点的 Beta 版本

LEv145 — 原始代码作者

此模型生成的图像

未找到图像。