Load Images from Folder Pixaroma
Point it at a folder, get one result per image
- image
- mask
- width
- height
- filename
- index
- total
Batch processing is where ComfyUI gets tedious. You've got a folder of a hundred images and you want each one run through the same workflow - upscale, face fix, background removal, whatever - and the native way to do that is assembling a loop out of nodes that don't really want to be a loop. Load Images from Folder Pixaroma cuts through it: pick a folder on disk, choose which images you want (all, the first N, or hand-picked from a thumbnail gallery), hit Run once, and it feeds each selected image through your graph on its own, giving you one finished result per image. Mixed sizes are fine, which most batch solutions quietly hate.
How it works
You set the folder with the real OS dialog (the Browse button works on Windows, Mac and Linux) or paste a path. Then a thumbnail gallery lets you select what actually gets processed - useful when a folder has forty images and you only care about the last six. Each image flows through the workflow as its own item, carrying the same inline resize options as the full Load Image node (max megapixels, longest side, scale by, fit inside, crop to fill, match aspect ratio), applied per image as it loads.
The outputs are lists, one entry per image:
imageandmask- each loaded image and its alpha mask.width/height- per-image dimensions after resize. Wire these into an Empty Latent Image and each latent matches its own image, which is the trick that makes mixed-size batches work at all.filename- without the extension. Wire it into a save node so every result keeps its original name instead of00001_....index(1-based position) andtotal(how many images are in the batch).
Keep the queue batch count at 1 and let the node do the looping.
The parts that matter
The filename plumbing is the difference between a usable batch and a mess. If you don't wire filename into your save node, you'll get a pile of outputs you can't map back to inputs. Do wire it, and render_cat_001 comes out named after the file it came from. Same logic as Load Image's filename output, but per item - the tooltip calls it out, and it's the whole reason the output exists.
Install
Part of the Pixaroma pack:
cd ComfyUI/custom_nodes
git clone https://github.com/pixaroma/ComfyUI-Pixaroma
or ComfyUI Manager → Pixaroma → install, then restart. No required dependencies; works in both the classic and the new node interface. It's worth noting this node reads from any folder, not just ComfyUI's input/ directory - that's the feature that makes it a batch tool rather than another loader. And per house style: if a node looks wrong after a pack update, hard-refresh the browser before troubleshooting anything else.
Inputs (0)
No inputs
Outputs (7)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | Each selected image, one per list item (after any resize). |
| mask | MASK | Each image's mask from its alpha channel (blank if it has none). |
| width | INT | Each image's width in pixels (after any resize) - wire into an empty latent so it matches. |
| height | INT | Each image's height in pixels (after any resize). |
| filename | STRING | Each image's filename without the extension - wire into Save so results keep their original names. With subfolders included this is normally flattened (sub/cat becomes sub_cat) so two same-named files cannot collide; turn on 'Keep the folder structure in the name' to pass the real path instead and rebuild the same folders when saving. |
| index | INT | 1-based position of each image in this batch (1, 2, 3 ...). |
| total | INT | How many images are in this batch - i.e. how many loaded (same for every item). |