循环操作的关键在于合理搭配 For Loop Start 与 For Loop End 节点。
首先,For Loop Start 节点的 flow 输出必须连接到 For Loop End 节点的 flow 输入,确保整个循环逻辑闭环。在这两者之间,你可以插入任意想要重复执行的处理流程,例如循环加载图片、批量图像生成等操作。
其中,For Loop Start 的 index 是每次循环的当前序号。当 total=4 时,index 会从 0 递增至 3,这正好可以用作 Load Images For Loop 节点的图像索引,实现逐张加载。
需要注意的是,尽管 Load Images For Loop 中 limit=-1 表示“尝试加载全部图像”,但实际加载数量仍受到 index 和 total 的约束。举例来说:即便文件夹中有 10 张图像,如果设置 total=4,最终也只会处理前 4 张图像。
还有就是For Loop End一定得有输出,否则达不到循环的效果。
这里还必须用到Batch Any节点,因为它能将输出拼接起来。如下,Load Images For Loop 中的image只能输出当前图片,Batch Any节点则把每次循环的单张图片拼接起来。