Load Images For Loop
节点功能:从指定目录循环加载图像。该节点需要和For Loop Start和For Loop End节点搭配。
输入参数
参数名称 | 说明 |
---|---|
initial_value1 | 任意初始值,将随图像一起输出。 |
initial_value2 | 第二个初始值,与 initial_value1 同用途。 |
输出参数
参数名称 | 说明 |
---|---|
flow | 控制流信号,用于连接 whileLoopStart 等流程控制节点。 |
index | 当前处理图像的索引编号。 |
image | 当前读取到的图像,已转换为 tensor 格式。 |
mask | 如果图像带 alpha 通道,则为其透明度反转值;否则输出 64×64 的黑图。 |
name | 图像文件的名称(不含扩展名)。 |
value1 | 与输入 initial_value1 一致,原样传递。 |
value2 | 与输入 initial_value2 一致,原样传递。 |
控件参数
参数名称 | 说明 |
---|---|
directory | 要加载图像的文件夹路径。 |
start_index | 从第几张图像开始加载,默认从第 0 张开始。 |
limit | 限制最多加载多少张图像,为 -1 时不限制。 |
循环操作的关键在于合理搭配 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节点则把每次循环的单张图片拼接起来。