ImageLoaderUltimate
Point it at a file path on disk instead of uploading through the browser
- image
- mask
The pack's README frames this as the all-in-one loader - load an image, rotate it, flip it, crop it, and it keeps track of your crop region even as you keep rotating and flipping on top of it, all inside one node. That's genuinely useful, and worth calling out: those rotate/flip/crop controls live on the node's own canvas widget in the app, not as separate backend sockets - the node's actual wired-up input is deliberately narrow, a single file path. So treat this article as what actually connects to the rest of your graph, and go play with the crop handles directly on the node body in the app itself.
How it works
The one required input is image_path - a plain string pointing at a file already sitting on disk, not a browser upload widget. That's the real distinction from ComfyUI's standard Load Image node: this one is built for local, path-driven, automation-style workflows where the file already exists somewhere ComfyUI can read it, rather than "drag a photo into the browser." If you're just uploading an image through the web UI, the stock loader is simpler and more portable; reach for this one specifically when you're scripting against files already on disk, or you want the in-node rotate/crop/flip convenience the README describes.
The README also calls this one out for video prep specifically - stripping extra content around the frame edges before it feeds into a video workflow, where letterboxing or off-canvas content that made it into a still can otherwise make the final output look sloppy.
The inputs and outputs that matter
image_path- the only required input, a file path on the machine running ComfyUI.
Two outputs: image (IMAGE) and mask (MASK) - the mask is worth keeping around if a crop or rotation leaves out-of-bounds or transparent regions you'll want to track for later inpainting or compositing.
How to install it
ComfyUI Manager, search GraftingRayman. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/GraftingRayman/ComfyUI_GraftingRayman
Restart afterward. The whole pack fails to import without OpenAI's CLIP installed separately, even though this node has nothing to do with CLIP - portable ComfyUI: .\python_embeded\python.exe -m pip install git+https://github.com/openai/CLIP.git; system Python: pip install git+https://github.com/openai/CLIP.git.
Common issues & troubleshooting
Pack fails to load. Check your startup console for the CLIP import error and run the pip install above.
File-not-found or path errors. image_path has to actually resolve on whichever machine is running the job - a path that made sense on your desktop won't exist on a different machine, and definitely won't exist on a cloud or serverless executor unless the file was placed there first. Check the path is valid on the machine actually executing the workflow, not just the one where you built it.
Expected rotate/flip/crop controls and don't see obvious inputs for them. Those live as an interactive widget on the node itself in the app canvas, not as backend parameters - this is one of the cases where the node's UI does more than its wired sockets show.
Just want to upload a photo through the browser. Use the standard Load Image node instead - this one is built for path-based, automation-style loading, not browser uploads.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| image_path | STRING | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| mask | MASK | — |