Nodes/ComfyUI Essentials/🔧 Image Enhance Difference
ComfyUI Node Runs on cloud

🔧 Image Enhance Difference

Making the delta between two images actually visible

By cubiq·Created 3 years ago·Updated about a year ago· 1,152
🔧 Image Enhance Difference
  • image1
  • image2
  • IMAGE
â—„exponent0.75â–º

A raw pixel-difference between two similar images is usually near-black - technically correct, useless to actually look at. Image Enhance Difference takes that same difference and boosts it into something you can read at a glance, which is handy for a quick sanity check: did that upscale pass actually change anything? Are two seeds of "the same" prompt closer than they look? Did a face-restore node touch more of the image than it should have?

It earns its keep in QA loops more than in creative pipelines. Comparing frame N against frame N+1 in a video batch is a fast way to eyeball where motion or flicker is actually happening without watching the whole clip. Comparing an image before and after a node you're not sure is doing anything (a subtle color-correction step, a low-strength inpaint) turns "I think this changed something" into "here's exactly what changed and how much." It's the visual equivalent of a diff command, tuned for images instead of text.

How it works

It computes the pixel-wise absolute difference between image1 and image2, then reshapes that difference curve with exponent (0–1, default 0.75). Lower values push more of the mid-range differences up toward visible brightness - think of it as a gamma boost aimed specifically at making small differences legible instead of leaving them buried near zero. It's a diagnostic tool, not something you'd composite forward into a generation - the output is for your eyes and your QA loop.

Inputs and outputs

image1, image2, exponent. Output: a single IMAGE.

Installing it

Via ComfyUI Manager, search "ComfyUI Essentials". Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/cubiq/ComfyUI_essentials

Restart. The pack's been maintenance-only since April 2025 - stable, not actively developed.

Common issues & troubleshooting

Shape/size mismatch error. image1 and image2 need to be the same resolution - this node doesn't resize one to match the other for you. If your two images came from different steps in a pipeline with different output sizes, resize one to match before wiring it in.

Output is basically solid gray or solid black. That's the honest answer, not a bug - your two images are genuinely near-identical at the pixel level. Try lowering exponent further to exaggerate whatever small difference does exist, or double-check you're actually feeding it two different images and not the same one twice.

Trying to use the output as an actual mask or next-step input. This node isn't built for that - it's meant to be looked at, not fed forward. If you need an actual difference mask to drive masking or compositing, you'll want a thresholding step after this, not this node alone.

Comparing two images that are supposed to be similar but aren't aligned. If one image is shifted, rotated, or cropped slightly differently than the other - a common issue comparing two separate generations rather than two steps of the same pipeline - the difference will read as noisy everywhere instead of localized where content actually changed. This node compares pixels at matching coordinates; it has no concept of "the same subject moved," so misalignment shows up as difference even where nothing meaningful changed.

Categoryessentials/image analysis

Inputs (3)

NameTypeDefaultDescription
image1IMAGE—
image2IMAGE—
exponentFLOAT0.750–1—

Outputs (1)

NameTypeDescription
IMAGEIMAGE—