Saturation
The one-number color fix
- image
- ui_widget
- image
- image_list
Sometimes you just need the colors to pop a little, and you don't want to reroll a generation or drag in a whole color-grading rig to do it. LF_Saturation is a single knob that turns an image up or down on the HSV saturation axis - the bluntest, most predictable color filter in the LF Nodes pack.
One input matters: intensity. 1.0 is a no-op (identical output), anything below desaturates toward grey, anything above cranks the color. The default is 1.2, a modest boost that most output benefits from. The full range is 0 to 5, and past about 2.0 you're not "vibrant," you're neon - dial it back before you hit the glowing-clown look. The image input takes a single tensor or a list, so it slots into batch pipelines without fuss.
Outputs
image and image_list - the adjusted result as a single tensor and as a list, for whatever your graph expects next. There's also the ui_widget compare preview so you can eyeball before vs. after on the canvas.
Where it fits
This is the deterministic-pixel layer of your workflow, not a model call - it runs in milliseconds and costs zero VRAM. The post-processing playbook is explicit that a saturation bump is a blunt HSV knob, and that if your image looks "flat" you'd often be better served by a gamma or contrast curve instead. But for the 90% case - "these colors look washed out" - this is the fastest fix in the pack. A 1.15–1.3 saturation boost is also the classic cheap unifier when compositing a subject cutout onto a new background: pull the layers' saturation toward each other and they suddenly look like they were shot together.
Installing it
lf-nodes installs as one pack covering all its nodes:
cd ComfyUI/custom_nodes
git clone https://github.com/lucafoscili/lf-nodes
restart ComfyUI, or search "LF Nodes" in ComfyUI Manager. No models, no downloads - it's pure pixel math, which is exactly the point. If you find yourself reaching for saturation at the end of every single workflow, that's a good sign you want it wired permanently into your save-node chain.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | Input image tensor or a list of image tensors. | |
| intensity | FLOAT | 1.20–5 | 1.0 = no change, <1 = desat, >1 = saturation boost. |
| ui_widgetopt | LF_COMPARE | [object Object] | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | Image tensor with saturation effect applied. |
| image_list | IMAGE | List of image tensors with saturation effect applied. |