Load Image List
Load a batch of images from dropdowns, straight into a list
- images
Core ComfyUI's Load Image handles exactly one image. The moment you need to feed a pipeline a set - five reference frames, a stack of poses, a sequence of inpainting sources - you're either chaining a dozen Load Images or hunting for a pack that does batches. UtilLoadImageList is the batch loader: pick images from dropdown menus populated from your input/ folder, up to twenty of them, and get them out as one ordered IMAGE list. It's the natural bookend to this pack's UtilImageToList (which collects images already in your graph) - this one starts from disk.
How it works
The node scans ComfyUI/input/ at graph-load time and builds dropdowns from whatever image files it finds there (png, jpg, webp, gif, bmp, tiff). A count field controls how many dropdown slots show - 1 to 20 - and each dropdown includes a [none] entry for skipping that slot. The selected files are loaded, converted to RGB, normalized to 0-1 tensors, and stacked in slot order into the output list. Skip a slot with [none] and it's simply omitted - so you can build a "up to N references" workflow that tolerates having fewer than N images.
The defensive default is worth knowing: if every slot ends up [none] and nothing loads, it returns a single 64x64 black placeholder instead of an empty list. That's a "keep the graph alive" choice, not a feature - if you see a black frame, check that your files actually matched the dropdowns.
The inputs and output
- count (INT, default 1, max 20) - how many image slots to show.
- image_1 (dropdown) - required; picks from your input folder.
- image_2 through image_20 (dropdowns, optional) - additional slots;
[none]skips. - images (IMAGE list) - the loaded batch, in slot order.
That's it - no rotation, no masks, no alpha handling. It's deliberately narrow.
Where it fits
Drop your reference set into ComfyUI/input/, set count to match, and feed the list into a batch-aware sampler, a ControlNet preprocessing pass, or a per-image loop. It's the least fiddly way in this pack to turn a folder of frames into a batch without hand-naming anything. Two small notes: the dropdown list only refreshes when the node reloads, so files you add while ComfyUI is running need a node refresh to appear, and like other JS-driven nodes here, the dynamic slots are a web-UI feature - save workflows from the UI.
Install
Part of the IXIWORKS pack - ComfyUI Manager → search ComfyUI-VideoDescription → Install, restart, or clone the repo into custom_nodes/. No extra dependencies; it uses PIL, numpy, and torch, all ComfyUI staples.
Inputs (21)
| Name | Type | Default | Description |
|---|---|---|---|
| count | INT | 11–20 | — |
| image_1 | COMBO | 2 options: [none], example.png | |
| image_2opt | COMBO | 2 options: [none], example.png | |
| image_3opt | COMBO | 2 options: [none], example.png | |
| image_4opt | COMBO | 2 options: [none], example.png | |
| image_5opt | COMBO | 2 options: [none], example.png | |
| image_6opt | COMBO | 2 options: [none], example.png | |
| image_7opt | COMBO | 2 options: [none], example.png | |
| image_8opt | COMBO | 2 options: [none], example.png | |
| image_9opt | COMBO | 2 options: [none], example.png | |
| image_10opt | COMBO | 2 options: [none], example.png | |
| image_11opt | COMBO | 2 options: [none], example.png | |
| image_12opt | COMBO | 2 options: [none], example.png | |
| image_13opt | COMBO | 2 options: [none], example.png | |
| image_14opt | COMBO | 2 options: [none], example.png | |
| image_15opt | COMBO | 2 options: [none], example.png | |
| image_16opt | COMBO | 2 options: [none], example.png | |
| image_17opt | COMBO | 2 options: [none], example.png | |
| image_18opt | COMBO | 2 options: [none], example.png | |
| image_19opt | COMBO | 2 options: [none], example.png | |
| image_20opt | COMBO | 2 options: [none], example.png |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |