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 保存网格图像 将其组合。
安装
下载工作流
安装或更新以下自定义节点
-
- 用于 Text Load Line From File 节点
-
- 用于 CR XY 节点
-
首次使用
从上方列表中选择一个模板
在 ComfyUI/output 中创建一个用于图像序列的输出文件夹,例如 'XY test'
在 ComfyUI/output 中创建一个用于网格图像的输出文件夹,例如 'XY grids'
选择一个检查点模型和 LoRA(如适用)
进行一次测试运行
保存一份副本作为你的工作流
已知问题
CR XY Save Grid Image 节点有时会遗漏网格中的最后一张图像。这可能是由于节点处理顺序所致。一个简单的解决方法是重新运行最后一次迭代。例如,在 25 张图像的网格中,如果最后一张图像缺失,将原始节点重置为 25,并设置批次计数为 1。
CR XY Save Grid Image 节点在预览模式下会查找 ComfyUI/temp 文件夹。如果找不到,当前会抛出错误。此问题将在下一个补丁中修复。临时解决方法是手动添加 temp 文件夹。

列表索引超出范围
当原始节点上的索引高于你最后一张图像的索引(结束索引)时,可能会出现此错误。此情况将添加错误提示信息。
按下 Ctrl+Enter 运行队列可能导致无任何迭代。你需要直接点击队列按钮。
故障排除
请参阅我们的 CivitAI 文章
致谢
Grockster、King Lord 和 THM — 协助确定需求并测试节点的 Beta 版本
LEv145 — 原始代码作者




















