Nodes/KarmaNodes/Karma Kolors
ComfyUI Node

Karma Kolors

White balance, brightness, contrast and saturation in one node

By KarmaSwint·Created about a year ago·Updated 5 months ago· 1
Karma Kolors
  • image
  • image
white_balanceauto
brightness0.0
contrast0.0
saturation0.0

Core ComfyUI gives you a VAE decode and a Save Image and then waves goodbye. If you want to fix a cast, brighten a face, or punch up saturation, you're usually installing a whole image-processing suite or running a second generation pass. Karma Kolors is the basic color-correction node from this pack - white balance, brightness, contrast, and saturation, in one IMAGE-in / IMAGE-out node, with no models and no extra dependencies. It's the first node in the post-processing chain you'd build.

The reason to use this one over stacking random color nodes is the ordering. The node applies white balance first, then brightness, contrast, and saturation - and the order is deliberate. White balance shifts the whole color temperature of the image, so if you graded everything else first and then re-balanced, you'd be fighting yourself. Doing temperature first means the brightness/contrast/saturation adjustments land on a correctly-tinted base. That's a small thing that makes the results feel like a camera's white balance + picture style rather than a filter.

The inputs are the four adjustments, and here's the UI quirk you'll hit immediately: they're not sliders, they're dropdowns. white_balance is a dropdown of "auto" plus every temperature from 2000K to 10000K in 100K steps (that's the 82 options in the schema), and brightness, contrast, and saturation are each a dropdown from -20.0 to +20.0 in 0.5% steps. It works fine, it just means you can't type a custom value - you pick the closest option. If you ever find yourself wanting +3.2 instead of +3.0, you'll notice.

What each one does is what it says: white balance is color temperature (2000–3000K is warm candlelight, 5000–6500K is neutral daylight, 6500–10000K goes cool/blue), brightness and contrast are self-explanatory percentage shifts, and saturation is color intensity - all in the ±20% range. The output is a single image you can feed to the next step in the chain (or straight to Save Image).

Installing it

Search "KarmaNodes" in ComfyUI Manager, or:

cd ComfyUI/custom_nodes
git clone https://github.com/KarmaSwint/ComfyUI-KarmaNodes
cd ComfyUI-KarmaNodes
pip install -r requirements.txt

Restart ComfyUI. No model downloads - this node is pure PIL/NumPy under the hood.

Getting the most out of it

The README's guidance is sensible and easy to over-do: start with ±2–5% on any adjustment. For portraits, a slight brightness (+2–5%) with a touch of contrast (+3–8%) reads as natural; for landscapes, saturation +5–10% with a small contrast boost. A quick vintage look is warm white balance (3000–4000K) with saturation pulled down a few points. The ±20% range is deliberately conservative - this node is for correction and gentle grading, not aggressive looks. If you want heavy stylization, that's what Karma Tone Curves and Karma Film Emulation in the same pack are for. Its real job is making a generated image look properly developed before you add grain or lens character - the "color grading 101" step that sells the whole post-processing chain.

CategoryKarmaNodes/Post-Processing

Inputs (5)

NameTypeDefaultDescription
imageIMAGEInput image to apply color adjustments to
white_balanceCOMBOautoWhite balance temperature in Kelvin or auto
brightnessCOMBO0.0Brightness adjustment in percentage (-20% to +20%)
contrastCOMBO0.0Contrast adjustment in percentage (-20% to +20%)
saturationCOMBO0.0Saturation adjustment in percentage (-20% to +20%)

Outputs (1)

NameTypeDescription
imageIMAGE