BMAB Load Image
Load Image, but it also tells you the size
- image
- mask
- width
- height
There's nothing exotic here, and that's the appeal. This is BMAB's drop-in replacement for ComfyUI core's Load Image node, with one genuinely useful addition: it hands you the image's width and height directly, without a separate Get Image Size node cluttering up the graph. If you're building anything that needs to react to the loaded image's dimensions - sizing a canvas for BMAB Reframe, computing a target for Resize By Ratio, or just wiring width/height into a Empty Latent Image to match - this saves you a node and a wire every single time.
How it works
Mechanically it's the same as core's loader: pick a file from your ComfyUI input/ folder (or one you've uploaded through the node's own widget), and it reads the image off disk. No model, no processing, no dependency on anything else in BMAB - this is pure convenience plumbing, and it works with or without the rest of the pack wired up.
The inputs and outputs that matter
image(enum, required) - a dropdown populated from files in your ComfyUIinput/directory, exactly like core'sLoad Image. Drag-and-drop uploads onto the node work the same way too.- Outputs:
image(IMAGE),mask(MASK - pulled from the alpha channel if the file has one, otherwise a blank mask, same convention as core),width(INT),height(INT).
That's the entire node. No settings to fight, no gotchas in the schema.
How to install it
ComfyUI Manager: search comfyui_bmab. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/portu-sim/comfyui_bmab.git
cd comfyui_bmab
pip install -r requirements.txt
The README also lists Fannovel16/comfyui_controlnet_aux and cubiq/ComfyUI_IPAdapter_plus as required companions for the rest of the pack's node types to resolve on load - both are already part of ComfyICU's shared image, so this is mainly a self-hosting concern. This particular node doesn't need either of them to function; it has no dependency on BMAB's detection or ControlNet machinery.
Common issues & troubleshooting
The dropdown is empty or doesn't show a file you just added. Same behavior as core's loader: files need to be in ComfyUI's input/ folder, and the dropdown is populated at node-add time - if you dropped a file into the folder after the node was already on the canvas, you may need to refresh the browser or re-add the node for it to appear. Uploading through the node's own file picker sidesteps this entirely.
You expected a mask and got a blank one. The mask output only carries real data if your source file has an alpha channel (a PNG with transparency, typically). A plain JPEG or a flattened PNG will give you an all-white or all-black blank mask depending on the convention - not an error, just nothing to work with unless you generate a mask separately.
Width/height come out swapped from what you expect. This is a recurring point of confusion across every tool in the ecosystem, not specific to BMAB - always double-check whether a given node reports width-then-height or height-then-width before wiring it into something order-sensitive like an Empty Latent Image.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| image | COMBO | 1 options: example.png |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| mask | MASK | — |
| width | INT | — |
| height | INT | — |