Nodes/was-node-suite-comfyui/Image Chromatic Aberration
ComfyUI Node Runs on cloud

Image Chromatic Aberration

The RGB-split lens effect for a sci-fi/VHS look

By WASasquatch·Created 3 years ago·Updated about 13 hours ago· 1,840
Image Chromatic Aberration
  • image
  • IMAGE
red_offset2
green_offset-1
blue_offset1
intensity1.00
fade_radius12

Chromatic aberration is a lens flaw - cheap or extreme optics fail to focus every wavelength of light at exactly the same point, so you get that telltale color fringing at high-contrast edges: red and cyan (or magenta and green) splitting apart toward the corners of the frame. It shows up in real vintage lenses, cheap disposable cameras, CRT monitors, and - deliberately, as an aesthetic choice - in a lot of sci-fi and cyberpunk cinematography. Image Chromatic Aberration replicates that effect on a flat image.

Why you'd use it

AI-generated images can look too clean - every edge crisp, no optical imperfection anywhere, which paradoxically reads as artificial. A touch of chromatic aberration is one of the cheapest ways to break that up and nudge an image toward "shot on a real camera" or "80s VHS sci-fi" territory, depending on how far you push it. It's a stylistic finishing touch, not a fix for anything - apply it after your generation and any upscale, as one of the last steps before you save.

How it works

Mechanically it's channel offset: the red, green, and blue channels of the image get shifted slightly relative to each other, typically radiating outward more strongly toward the edges of the frame the way a real lens does. Push it subtle and it reads as a faint, almost-unnoticeable realism cue; push it hard and you get the full glitchy, prismatic-edge sci-fi look. There's no AI model involved - it's straight pixel math, so it's fast and completely deterministic for a given input.

Installing it

Through ComfyUI Manager: search "WAS Node Suite", install, restart. Manually:

cd ComfyUI/custom_nodes
git clone https://github.com/WASasquatch/was-node-suite-comfyui
cd was-node-suite-comfyui
pip install -r requirements.txt

Pure image processing - no models to download, no extra dependencies beyond what the suite already installs.

Troubleshooting

This is one of the more reliable nodes in the pack precisely because it's simple; there's not much to go wrong beyond "the effect looks too strong or too weak," which is a taste call, not a bug. Turn it down if the fringing looks like a compression artifact rather than a lens effect - that's usually a sign you've pushed the offset past what looks like an actual optical flaw and into obvious-filter territory.

The one thing worth knowing suite-wide: WAS Node Suite hasn't been actively maintained since the author stepped back in December 2023. That mostly bites you at the import stage - a ComfyUI core update occasionally breaks the whole pack's startup because of a pinned legacy dependency (BLIP support is the recurring offender) - rather than at the level of an individual filter node like this one misbehaving at runtime. If the node's simply missing from your menu, check your console for an import error before assuming anything about the filter itself.

CategoryWAS Suite/Image/Filter

Inputs (6)

NameTypeDefaultDescription
imageIMAGEThe image to shift. A batch is handled one image at a time.
red_offsetINT2-255–255How far the red channel moves sideways, in pixels. Positive is right, negative is left, 0 leaves it in place. 2 is a subtle fringe, 20 is obvious.
green_offsetINT-1-255–255How far the green channel moves vertically, in pixels. Positive is down, negative is up, 0 leaves it in place.
blue_offsetINT1-255–255How far the blue channel moves vertically, in pixels, on the same positive-is-down reading as green_offset. Giving green and blue opposite signs is what produces the classic red-and-cyan fringe.
intensityFLOAT1.000–1How much of the shifted result is mixed back over the original. 1.0 = the offsets in full, 0.5 = half the fringing, 0.0 = the picture unchanged. Use it to dial one setting rather than rebalancing all three offsets.
fade_radiusINT120–1024How far in from each edge the effect fades back to the untouched image, in pixels. 0 applies the shift right to the border, which exposes the wrapped-around strip; 12 hides it; large values confine the fringing to the centre of the frame.

Outputs (1)

NameTypeDescription
IMAGEIMAGEThe image with its colour channels shifted apart.