Frequency Separation Hard Light
Splitting detail from color, Photoshop-style
- high_pass
- original
- low_pass
- high_pass
- original
- low_pass
Frequency separation is a retouching trick that predates AI generation entirely - it's a standard move in photo editing, splitting an image into a low-frequency layer (broad color, tone, lighting) and a high-frequency layer (fine texture and detail), so you can edit one without disturbing the other. Skin retouchers use it constantly: smooth out tone and blemishes on the low-frequency layer while leaving pore and hair detail on the high-frequency layer untouched. RES4LYF brings the same idea into ComfyUI, with two flavors named for the blend mode used to recombine the layers - this one uses Hard Light.
Where it earns its keep in an AI workflow: after a style transfer, an img2img pass, or any relighting step where the model's output nails the color and lighting you wanted but softens or invents texture you'd rather keep from the original. Separate both images into frequency bands, swap the layer you like, recombine - you get the model's color grade with the source's real detail, or vice versa.
How the ports work
This node is built to run in either direction, and every port is optional:
- Separating: feed
originalin, and you gethigh_passandlow_passout - the texture layer and the color/tone layer. - Recombining: feed
high_passandlow_passback in (after editing either or both), and the node reconstructsoriginalusing Hard Light blend math.
All three ports appear as both inputs and outputs because the node is genuinely dual-purpose - which direction you're using it in depends entirely on what you wire in. There's no separate mode switch; it's inferred from what you connect.
Installing it
Ships with the full RES4LYF pack:
- ComfyUI Manager - search "RES4LYF," install, restart.
- Manual -
cd ComfyUI/custom_nodes && git clone https://github.com/ClownsharkBatwing/RES4LYF, thencd RES4LYF && pip install -r requirements.txt, restart.
No models to download - this is pure image math.
Common issues
Wiring it wrong direction by accident. Because every port is optional, it's easy to plug in only original when you meant to recombine, or only high_pass/low_pass when you meant to separate. Since the pack doesn't document this node in detail, the safest habit is to be deliberate: for separation, connect only original as input; for recombination, connect only high_pass and low_pass as inputs, and leave the port you're not using on that side disconnected.
Recombined image looks contrasty or blown out. Hard Light is a punchier blend mode than some alternatives - if the recombined result looks harsher than the source, try the pack's Frequency Separation Linear Light sibling instead, which tends to reconstruct tone more faithfully at the cost of being less forgiving of clipping in the high-pass layer.
Detail looks smeared after recombining. Make sure whatever edited the high_pass layer didn't blur or resample it - frequency separation only works cleanly if the high-pass layer stays pixel-aligned with the low-pass layer it's being recombined against.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| high_passopt | IMAGE | — | |
| originalopt | IMAGE | — | |
| low_passopt | IMAGE | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| high_pass | IMAGE | — |
| original | IMAGE | — |
| low_pass | IMAGE | — |