ComfyUI Loop Image 是一个专注于图像循环处理的节点包,提供了两种主要的循环处理模式:批量图像处理 (Batch) 和 单图像重复处理 (Single)。此外,它还配备了配套的图像分割与合并功能,以满足不同场景下的需求。
1. 批量图像处理 (Batch)
适用场景
- 批量图像处理 适用于需要同时处理多个不同区域的场景。通过将图像分割成多个部分,分别对每个部分进行处理,最后再将处理结果合并回原始图像。这种模式适合需要对图像的不同部分应用差异化处理的任务。
主要节点
1.1 Mask Segmentation (遮罩分割)
- 功能说明:将一个包含多个独立区域的遮罩图自动分割成独立的遮罩序列,每个分割后的遮罩对应原图中的一个独立区域。
- 分割规则:
- 相互独立的区域会被识别为不同的部分。
- 包含孔洞的区域会被正确处理,保持孔洞结构。
- 顺序规则:
- 分割后的遮罩按照从左到右排列,若左右位置相等,再按照从上到下的顺序。
- 排序依据是每个区域最左边的像素点的位置,再按照最上边的像素点的位置。
- 这个顺序决定了后续循环处理的顺序。例如,如果遮罩中有三个区域,最左边的区域将是第0次迭代,中间的是第1次,最右边的是第2次。
1.2 Batch Image Loop Open (批量循环开始)
- 输入:
segmented_images
: 来自 Mask Segmentation 的图像序列。segmented_masks
: 来自 Mask Segmentation 的遮罩序列。
- 输出:
current_image
: 当前迭代处理的图像部分。current_mask
: 当前迭代的遮罩。max_iterations
: 总迭代次数(等于分割区域的数量)。iteration_count
: 当前迭代次数(从0开始)。
- 使用说明:
current_image
和current_mask
可以直接用于后续处理。iteration_count
可以连接到 Loop Index Switch 来选择不同的处理参数。max_iterations
用于循环控制,一般不需要手动使用。
1.3 Batch Image Loop Close (批量循环结束)
- 输入:
flow_control
: 来自 Loop Open 的控制信号。current_image
: 处理后的当前图像。current_mask
: 处理后的当前遮罩。max_iterations
: 来自 Loop Open 的总迭代次数。
- 输出:
result_images
: 所有处理完成的图像序列。result_masks
: 所有处理完成的遮罩序列。
1.4 Mask Merge (遮罩合并)
- 功能说明:将循环处理后的多个图像区域合并回原始图像,使用遮罩确保每个处理过的区域正确放回原位,保持未处理区域的原始内容不变。
- 使用技巧:
original_image
: 使用原始输入图像。processed_images
: 连接 Loop Close 的result_images
输出。masks
: 连接 Loop Close 的result_masks
输出。
2. 单图像重复处理 (Single)
适用场景
- 单图像重复处理 适用于需要对同一张图像进行多次处理的场景。每次迭代都使用上一次的处理结果作为输入,可以实现渐进式的图像修改。这种模式适合迭代优化类的任务,如图像渐进式增强、迭代式风格转换、多次降噪处理等。
主要节点
2.1 Single Image Loop Open (单图循环开始)
- 功能说明:对同一张图像进行多次迭代处理,每次迭代都使用上一次的处理结果作为输入。
- 输入参数:
- 必需输入:
image
: 需要处理的原始图像。max_iterations
: 最大迭代次数(1-100)。
- 可选输入:
mask
: 可选的处理区域遮罩。
- 必需输入:
- 输出参数:
current_image
: 当前迭代的图像(第一次是原始图像,之后是上一次处理的结果)。current_mask
: 当前使用的遮罩(如果提供了遮罩)。max_iterations
: 设定的最大迭代次数。iteration_count
: 当前迭代次数(从0开始)。
2.2 Single Image Loop Close (单图循环结束)
- 输入参数:
- 必需输入:
flow_control
: 来自 Loop Open 的控制信号。current_image
: 当前迭代处理后的图像。max_iterations
: 来自 Loop Open 的最大迭代次数。
- 可选输入:
current_mask
: 处理后的遮罩(如果使用了遮罩)。
- 必需输入:
- 输出参数:
final_image
: 所有迭代完成后的最终图像。final_mask
: 最终的遮罩(如果使用了遮罩)。
单图处理的特点和应用场景
- 渐进式处理:每次迭代都基于上一次的结果,可以实现累积效果,适合需要多次微调的场景。
- 使用场景示例:
- 图像渐进式增强。
- 迭代式风格转换。
- 多次降噪处理。
- 逐步细节优化。
3. 特殊功能节点
3.1 Loop Index Switch
- 功能:根据当前循环次数选择不同的输入。
- 使用方法:
- 右键点击节点选择 "Add Loop Input"。
- 输入想要添加的循环序号 (0-99)。
- 连接对应的输入。
- 可以通过 "Remove Loop Input" 删除不需要的输入。
- 注意:只有当前迭代次数对应的输入会被计算,其他输入会被跳过,提高效率。
- 使用建议:
- 批量处理适合需要在图像不同区域应用不同处理的场景。
- 单图处理适合需要多次迭代优化的场景。
- 合理使用 Loop Index Switch 节点可以实现在不同迭代次数使用不同参数。
- 注意控制循环次数,避免过度处理。
评论0