Nodes/OmniNodes/Image Sharpen & Blur πŸ”Ž
ComfyUI Node

Image Sharpen & Blur πŸ”Ž

Sharpen and blur in one node β€” and yes, 'sharpen' is really a blur trick

By TensorVizionΒ·Created 3 months agoΒ·Updated about 8 hours agoΒ· 0
Image Sharpen & Blur πŸ”Ž
  • image
  • image
β—„modeβ–Ύβ–Ί
β—„radius5β–Ί
β—„strength1.00β–Ί

Three image operations - unsharp-mask sharpen, Gaussian blur, box blur - in one node with a mode dropdown. There's no model, no magic, and that's the point: these are millisecond deterministic pixel ops, and you reach for them instead of burning a diffusion pass to "fix" sharpness.

Pick mode:

  • sharpen - unsharp masking. The name is literally the recipe: blur a copy of the image, subtract the blurred copy to isolate the high-frequency detail, and add that detail back scaled by strength. There is no other "sharpen" - it's blur-and-difference.
  • gaussian_blur - Gaussian smoothing, blended with the original by strength (1.0 = fully blurred, 0.0 = no change).
  • box_blur - box/average blur, same blend behavior, faster but with a flatter, slightly harsher rolloff than Gaussian.

radius controls the kernel size for all three - bigger radius means a softer blur, or a broader sharpening halo. It must be odd; the node rounds even values up automatically. strength for sharpen mode is how hard the detail gets added back.

Knowing the mechanism tells you the two knobs and their failure mode: radius decides what counts as detail (small radius sharpens fine edges, large radius creates a broader halo), and strength decides how hard it's added. Crank strength too far and you get halos around every edge - the classic oversharpened look that makes AI images worse, not better. The working range for a natural sharpen is modest; think of it as a finishing pass after upscaling, not a rescue operation.

That's honestly the best use case in the modern workflow: after an upscaler (especially a fast realtime one) or after a latent-to-pixel decode, a light unsharp pass at radius 2–4 restores edge pop that the pipeline softened. It's also the reference pass for building glow/bloom effects - blur a bright-pass copy, screen it back - though the pack's Vignette & Glow node wraps that specific combo for you.

One honest boundary worth knowing: this is a uniform sharpen/blur, applied to the whole image. There's no bilateral or guided filter here, so if you want to sharpen detail while preserving edges (skin-smoothing without melting boundaries), this isn't the node - a bilateral/guided filter is, and that's a different pack's territory. For the plain "sharpen it" and "soften it" jobs, this one node covers both, which is genuinely all most people need.

Install

Part of OmniNodes:

cd ComfyUI/custom_nodes
git clone https://github.com/TensorVizion/OmniNodes

Restart ComfyUI, or install "OmniNodes" via ComfyUI Manager. No extra dependencies - pure PyTorch.

Troubleshooting

  • Halos around edges - strength is too high in sharpen mode. Back it off; halos are the oversharpen signature.
  • Blur looks blocky - you're on box_blur; switch to gaussian_blur for a smooth rolloff.
  • Nothing changes - strength near 0, or radius so small the kernel does nothing. Check both.
CategoryTensorVizion/Image

Inputs (4)

NameTypeDefaultDescription
imageIMAGEβ€”
modeCOMBO3 options: sharpen, gaussian_blur, box_blur
radiusINT51–51β€”
strengthFLOAT1.000–3β€”

Outputs (1)

NameTypeDescription
imageIMAGEβ€”