IAMCCS WAN Load Image From Path PURE
A no-frills image loader that respects your 16-pixel rule
- image
- width
- height
- report
You'd think loading an image from a path would be the most boring node imaginable, and it mostly is - until you remember WAN video wants specific dimensions, and cropping by hand to hit them is a chore. IAMCCS_WanLoadImageFromPath ("IAMCCS WAN Load Image From Path PURE") is a path-based loader with the resize logic built in: you give it a file path, target width/height, a resize_method, and a multiple_of, and you get back an IMAGE tensor plus the actual width and height it landed on.
The defaults tell you what it's for: 832×480, crop, 16-pixel multiple. That's a classic WAN video canvas, and the 16-multiple guarantee matters because WAN's latent space needs spatial dimensions divisible by 16 (some setups want stricter alignment). The node silently snaps your target to a multiple before resizing, so you can't accidentally feed the sampler an off-alignment frame.
The resize methods
none(default) - load as-is, no resizing. Useful when the source is already right.crop- resize to cover the target box and crop the overflow. The one you'll use most; keeps the whole frame filled.pad- fit inside the target and letterbox the rest.stretch- squash to fit, which distorts aspect ratio. Only when you really don't care.
Outputs are image, width, height, and a report string with the resolved path and final dimensions. The path input is marked forceInput, so you can wire it from another node - that's what makes it loop-friendly: a planner spits out paths, this node loads them one iteration at a time, and every chunk gets identically-sized frames.
Install
Standard IAMCCS-nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/IAMCCS/IAMCCS-nodes.git
or ComfyUI Manager → search "IAMCCS" → restart. No models, no dependencies. ComfyUI ≥ 0.3.0, Python ≥ 3.12, Torch ≥ 2.8.
The honest caveats
It takes an absolute path, not a filename from the ComfyUI input folder - if the file moved, you get an open error, so check report for the resolved path. Also, resize_method = none ignores your width/height entirely, which trips people who set a target and wonder why the output isn't that size. And the actual output dimensions may be snapped up to your multiple_of, so if you need exactly 832×480, make sure the target is already a multiple of 16 (832 and 480 both are). For a utility node, that's a surprisingly complete feature set.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| image_path | STRING | — | |
| width | INT | 83216–8192 | — |
| height | INT | 48016–8192 | — |
| resize_method | COMBO | none | 4 options: none, crop, pad, stretch |
| multiple_of | INT | 161–128 | — |
| debug_verbose | BOOLEAN | false | — |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| width | INT | — |
| height | INT | — |
| report | STRING | — |