Clarity FX (CRT)
Mid-tone contrast that doesn't wreck your edges
- image
- IMAGE
In photography, "clarity" is the local-contrast move that makes an image pop without turning it into an over-sharpened mess - and it's the effect people are usually faking with a blunt unsharp mask. Clarity FX (CRT) is that photography move as a ComfyUI node: it applies a blurred-mask contrast pass on the luma channel, with blend controls straight out of a photo editor. It's the difference between an image that looks processed and one that looks developed.
The mechanism
It splits the image into luma and chroma, blurs the luma with a Gaussian kernel sized by ClarityRadius and ClarityOffset, then blends the detail back using one of seven blend modes - Hard Light, Soft Light, Overlay, Multiply, Vivid Light, Linear Light, or Addition. Because the contrast pass runs on luminance only, it pumps mid-tone definition while leaving color mostly alone. That's the whole trick, and it's why results look like a Lightroom clarity slider rather than a sharpening filter.
The inputs that matter
ClarityRadius(0–4) - the blur kernel radius; how local the contrast is. Small radius = fine texture pop, large = broader tone shaping.ClarityStrength(0–2) - the strength of the effect. Start at the default 0.4 and go up only if you're brave.ClarityBlendMode- the character of the effect.Hard Lightis the classic clarity mode;Soft Lightis gentler;Overlaysplits the difference. If the image starts looking crunchy, step the mode down before you step the strength down.ClarityBlendIfDark/ClarityBlendIfLight(0–255) - the tonal range the effect applies to, photo-editor "blend if" style. The defaults (50 dark, 205 light) keep the effect off the extremes - pure shadows and highlights stay untouched, which is why edges don't halo.ClarityDarkIntensity/ClarityLightIntensity- separately weight the dark and light sides of the effect. Defaults are asymmetric (0.4 dark, 0 light), which is the natural look: punch the mid-shadows, leave highlights alone.
Output is a single IMAGE with the clarity applied. Wire the image in, tune, done.
Where you'd reach for it
The classic spot is the tail of a photorealism pipeline - after VAE decode, before or after a light upscale - as the "final grade" that gives images that crisp-but-natural finish. It also shines on faces and fabric where over-sharpening is the fastest way to plastic skin. If you've got the CRT pack's Post-Process Suite, this is its single-purpose, lower-risk sibling.
Gotchas
- More is not better. Clarity is the effect people max out and then wonder why everything looks crunchy. If you're pushing past ~0.6, you're probably compensating for something else.
- Blend mode beats strength. Reaching for a different blend mode changes character; cranking strength changes volume. Learn to reach for the mode first.
- It's luma-only by design - expect color to be untouched. If you want vibrance on top, that's a separate pass.
Install CRT-Nodes via ComfyUI Manager (CRT-Nodes) or git clone https://github.com/plugcrypt/CRT-Nodes.git into custom_nodes, install requirements.txt, restart.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| ClarityRadius | INT | 30–4 | — |
| ClarityOffset | FLOAT | 2.001–5 | — |
| ClarityStrength | FLOAT | 0.400–2 | — |
| ClarityBlendMode | COMBO | 7 options: Hard Light, Soft Light, Overlay, Multiply, Vivid Light, Linear Light, +1 | |
| ClarityBlendIfDark | INT | 500–255 | — |
| ClarityBlendIfLight | INT | 2050–255 | — |
| ClarityDarkIntensity | FLOAT | 0.400–1 | — |
| ClarityLightIntensity | FLOAT | 0.000–1 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |