Nodes/GraftingRayman/ImageLoaderUltimate
ComfyUI Node

ImageLoaderUltimate

Point it at a file path on disk instead of uploading through the browser

By GraftingRayman·Created 2 years ago·Updated about a month ago· 76
ImageLoaderUltimate
    • image
    • mask
    image_path

    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.

    Categoryimage

    Inputs (1)

    NameTypeDefaultDescription
    image_pathSTRING

    Outputs (2)

    NameTypeDescription
    imageIMAGE
    maskMASK