Chromatic
Fake lens color-fringing to sell a shot as \"real\"
- image
- image
Real camera lenses bend different wavelengths of light by slightly different amounts, which is why high-contrast edges in an actual photo - the rim of a backlit head, a bright window frame - often show a faint red or cyan fringe if you zoom in. AI models almost never reproduce this on their own, and it's exactly the kind of small imperfection that separates "obviously generated" from "could pass as a photo." Chromatic adds it back in on purpose.
This is a deliberate post-processing move, not an accident to fix: real photography guides list chromatic aberration alongside lens distortion and film grain as one of the standard tricks for pushing a too-clean AI image toward something that reads as camera-captured.
The inputs and outputs that matter
Just two settings beyond the image itself:
strength(0–3, default 1) - how far apart the color channels shift at high-contrast edges. Low values (0.3–0.6) read as a subtle, realistic lens artifact; cranking it toward 2–3 turns it into an obvious stylized glitch effect, which is sometimes what you actually want (VHS/retro-tech looks lean on exactly this).blur(bool) - softens the fringed edges slightly so the color shift reads as an optical property of the lens rather than a sharp, digital-looking color split.
One output: image, ready to save or feed into further post-processing.
How to install it
Search ComfyUI-HakuImg in ComfyUI Manager, or from the command line:
cd ComfyUI/custom_nodes
git clone --recurse-submodules https://github.com/licyk/ComfyUI-HakuImg
Restart ComfyUI and find it under Image → HakuImg. No models to download, and this particular node has no dependency on the pack's submodule - it's plain pixel math, so it'll work even if you cloned without --recurse-submodules (that flag only matters for the pixel-art nodes in this pack).
Common issues & troubleshooting
It looks like a screen glitch, not a lens. This is almost always strength set too high. Real lens chromatic aberration is subtle - you notice it at the edges of the frame when you go looking, not across the whole image. Pull strength down toward 0.3–0.8 and it stops looking like a broken video signal.
Can't see any effect at all. Zoom in on a high-contrast edge - bright sky against a dark rooftop, a light source against shadow. Chromatic aberration is only visible where there's real contrast to split; a flat, evenly-lit region won't show it regardless of strength.
Combining with other realism tricks. This node pairs naturally with LenDistortion (also in this pack) and a subtle desaturation/color-grade pass - real lenses distort geometry and fringe color and photos are rarely as punchy and saturated as a raw diffusion output. Stacking a light touch of each usually beats leaning hard on any single one.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| strength | FLOAT | 1.000–3 | — |
| blur | BOOLEAN | false | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |