Nodes/ComfyUI-XJNodes/SEGS Color Correct HSV Hook
ComfyUI Node

SEGS Color Correct HSV Hook

Tune saturation and tone on the detail pass

By alexjx·Created 10 months ago·Updated 4 months ago· 0
SEGS Color Correct HSV Hook
    • hook
    hue0
    saturation0
    value0
    feather0

    Sometimes the thing wrong with a detail pass isn't a cast you can fix per-channel - it's that the region came back oversaturated, or washed out, or shifted in hue. That's a job for HSV, and that's exactly what XJSegsColorCorrectHSVHookProvider gives you: a hook for Impact Pack detailers that shifts hue, saturation, and value on the decoded crop before it goes back into the image.

    Mechanically it's the sibling of the pack's RGB correction hook, just operating in a different color space. The hook runs after VAE decode and before the crop is pasted back, converting the pixels to HSV, applying your offsets to hue, saturation, and value, and converting back. Hue gets the interesting behavior: a hue shift wraps around the color wheel (you're not clamping, you're rotating), so a hue offset of 20 is a real rotation of the tone. Saturation and value are offsets applied on top of whatever the detail pass produced. The feather input works the same way as the RGB version - when a segment mask is available, the correction is blended in within the masked region with feathered edges instead of an abrupt cut.

    The interface:

    • hue - INT, -255 to 255, default 0. Rotation of the hue.
    • saturation - INT, -255 to 255, default 0. Add to saturation.
    • value - INT, -255 to 255, default 0. Add to brightness/value.
    • feather - 0–100, default 0. Edge softness of the masked correction.
    • Output: hook, into the detailer_hook input of FaceDetailer / Detailer (SEGS).

    Where it fits: the same workflow niche as the RGB variant, but for tone problems rather than cast problems. A detailer that returns oversaturated skin - common with certain samplers at high denoise - gets a saturation -10 and suddenly every face matches the rest of the frame. A slightly greenish cast is often better fixed in HSV too, by nudging hue rather than fighting channels in RGB. If your problem is specifically "everything is a fixed amount off," this is the cleaner knob than the RGB one.

    Install is the pack-wide routine:

    cd ComfyUI/custom_nodes
    git clone https://github.com/alexjx/ComfyUI-XJNodes
    

    Restart ComfyUI, find it under XJNodes/segs/hooks, or use ComfyUI Manager and search "ComfyUI-XJNodes". No models, empty requirements.txt, no extra pip packages - Impact Pack just needs to be present for the hook input.

    The usual personal-pack caveats, plus a calibration tip: hue offsets are in the full -255..255 range mapped across the wheel, so a value like 20 is already a visible rotation. Start small and preview - this family of nodes is "set it once and forget it" only after you've measured it once.

    CategoryXJNodes/segs/hooks

    Inputs (4)

    NameTypeDefaultDescription
    hueINT0-255–255
    saturationINT0-255–255
    valueINT0-255–255
    featherINT00–100

    Outputs (1)

    NameTypeDescription
    hookDETAILER_HOOK