Nodes/RC Image Compositor/RC Hue/Saturation
ComfyUI Node

RC Hue/Saturation

Fix one color without dragging a mask

By kj863257·Created 11 months ago·Updated 10 months ago· 16
RC Hue/Saturation
  • image
  • IMAGE
hue_shift0
saturation0
lightness0
colorizefalse
colorize_hue0
colorize_saturation50
target_colormaster

Every image generator has a color problem. Skin tones drift orange, skies come out green, product photos have a red cast that no white-balance slider fixes. You could mask those regions by hand and adjust them separately - or you could use a targeted hue/saturation node that only touches the color range you point at. RC_HueSaturation is that node, a faithful Photoshop-style implementation from the RC Image Compositor pack, and it's the single most-used adjustment in the suite for a reason.

How it works

It converts the image to HSL space, shifts the hue by degrees, adjusts saturation and lightness, then converts back - but the killer feature is target_color. You pick a range - master, reds, yellows, greens, cyans, blues, or magentas - and the adjustment applies only to pixels in that hue band. Turn the sky blue, leave the mountains alone. It's the difference between editing a photo and fighting a photo.

The inputs that matter:

  • hue_shift (-360 to +360) - rotates hue in degrees. Small shifts on reds fix skin tone; big shifts are the "recolor the car" move.
  • saturation (-100 to +100) - at -100 the targeted range goes grayscale, at +100 it's doubled. The tooltip says "double," not "maxed" - that's a Photoshop-faithful choice, and it means -100 to 0 is the range you'll actually use.
  • lightness (-100 to +100) - brighten or darken just that range.
  • target_color - the range selector above.
  • colorize + colorize_hue / colorize_saturation - a monochrome tint mode. It desaturates everything and recolors with a single hue. Instant cyanotype or sepia without touching the gradient tools.

Output is a single IMAGE, same size, batch-safe - the README's multi-frame processing applies here too.

Installing it

The whole pack installs the same way. ComfyUI Manager → search "RC Image Compositor" → install, restart. Manual:

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

Dependencies are pillow, numpy, opencv-python - no downloads, no models. The README mentions the pack ships "intelligent presets" (Cyanotype, Sepia, Vibrance) on top of the basic controls, so there's a shortcut lane for looks.

Where people get burned

  • The range selector is a blunt instrument. reds covers a wide band, and skin, lips, and a red shirt all live in it. If you shift reds, you shift all of them. That's expected Photoshop behavior, but beginners assume "reds" means "the one red object."
  • lightness is not "brightness of the whole image." On master it is; on a targeted range it only lifts that color family. Wrong target = weird results you can't explain.
  • Big hue shifts posterize. Rotating 100+ degrees on a smooth gradient can band because the hue wrap-around has no dithering. If you see banding, break the shift into two smaller nodes with a blend between.

RC Hue/Saturation is the node to grab the moment you see a cast you can name. Point it at the offender, nudge saturation down and hue over, and skip the mask entirely.

CategoryRC/Adjustments

Inputs (8)

NameTypeDefaultDescription
imageIMAGE
hue_shiftFLOAT0-360–360Hue shift in degrees (-360 to +360)
saturationFLOAT0-100–100Saturation adjustment (-100 = grayscale, +100 = double)
lightnessFLOAT0-100–100Lightness adjustment (-100 = black, +100 = white)
colorizeBOOLEANfalseColorize mode (convert to monochromatic)
colorize_hueFLOAT00–360Colorize hue (only in colorize mode)
colorize_saturationFLOAT500–100Colorize saturation (only in colorize mode)
target_colorCOMBOmasterTarget color range: - master: All colors - reds: Red range - yellows: Yellow range - greens: Green range - cyans: Cyan range - blues: Blue range - magentas: Magenta range

Outputs (1)

NameTypeDescription
IMAGEIMAGE