Nodes/ComfyUI-ZhiHui/🎨 智绘_高级颜色调整
ComfyUI Node

🎨 智绘_高级颜色调整

The colorist's node

By zhuyungen·Created 8 months ago·Updated 4 months ago· 0
🎨 智绘_高级颜色调整
  • images
  • 调整后图像
◄temperature0►
◄tint0►
◄exposure0.0►
◄highlights0►
◄shadows0►

ZH_ColorAdjust gives you the four lazy sliders. This one, ZH_ColorAdjustAdvanced (🎨 智绘_高级颜色调整), is where you go when the image is technically fine but the mood is wrong: the whites aren't white, the darks are muddy, the whole frame sits too hot. It's the camera-raw-style corrections - white balance (temperature + tint), exposure, highlights and shadows - wrapped as a single IMAGE-in/IMAGE-out node. Think of it as the node that does what you'd otherwise open the image in another tool for.

How it works

Same shape as its little sibling: tensor in, Pillow math in the middle, tensor out. But the operations are the ones that actually read like a colorist's toolkit rather than a photocopier's:

  • temperature (-100 to 100) shifts white balance: negative pushes blue/cool, positive pushes warm/yellow. That's your "my render looks clinical" fix - bump it to +5 or +10 and the whole frame relaxes.
  • tint (-100 to 100) shifts the green↔magenta axis: negative goes green, positive goes magenta. White balance is never only one axis, and this is the axis that fixes skin tones when temperature alone made everyone look jaundiced or corpse-like.
  • exposure (-2 to +2 EV) is a true exposure adjustment in stops, not a brightness multiply. This is the one that behaves like a camera's exposure compensation rather than a wash.
  • highlights and shadows (-100 to 100 each) are the local recovery controls: pull highlights down to rescue blown-out sky detail, push shadows up to lift detail out of crushed blacks. This is the pair that makes a flat, muddy render read as "graded."

The inputs that matter

For most images you'll touch exactly two. temperature is the single highest-leverage control - a render that came out blue-cold or yellow-warm is a white balance problem, not a brightness problem, and this fixes it in one slider. Then shadows to lift the dark end back out. Everything else is context-dependent polish. The only other required input is images; the output is 调整后图像 (IMAGE), straight into your save or composite.

Install

Part of the 智绘灵箱 (ComfyUI-ZhiHui) pack - install the pack, not the node:

cd ComfyUI/custom_nodes
git clone https://github.com/zhuyungen/ComfyUI-ZhiHui.git

Restart ComfyUI, or use ComfyUI Manager and search "智绘灵箱" / "ComfyUI-ZhiHui". Pillow-only at runtime; the pack's other nodes drag in the heavier deps via requirements.txt.

Where people get burned

  • Temperature and tint interact, and both are ±100 scales. If skin tones look off after a big temperature swing, you almost always need a small counter-move on tint, not more temperature. That's the classic white-balance feedback loop.
  • Highlights/shadow recovery can't restore data that isn't there. If the render clipped highlights to pure white, pulling highlights down gives you grey, not sky. The node reshapes tone, it doesn't hallucinate detail - that's an img2img pass, not a slider.
  • Don't stack it with the basic node on the same image. ZH_ColorAdjust and this node both live in the same pack and both touch the same pixels; applying both double-round-trips through Pillow and makes it nearly impossible to tell which control did what. Pick one per stage.

This is the node I'd actually reach for on every second image, honestly - the basic four-slider node handles the day-to-day punch-up, but "my whites aren't white" is such a common failure mode in diffusion output that a proper temperature slider earns its place. One node, one wire, and the image suddenly looks shot, not generated.

Category智绘灵箱/工具箱

Inputs (6)

NameTypeDefaultDescription
imagesIMAGE—
temperatureFLOAT0-100–100色温:负值偏冷(蓝色),正值偏暖(黄色)
tintFLOAT0-100–100色调:负值偏绿,正值偏品红
exposureFLOAT0.0-2–2曝光:调整整体亮度(EV值)
highlightsFLOAT0-100–100高光:调整亮部细节
shadowsFLOAT0-100–100阴影:调整暗部细节

Outputs (1)

NameTypeDescription
调整后图像IMAGE—