Nodes/ComfyUI Essentials/πŸ”§ Image Smart Sharpen
ComfyUI Node Runs on cloud

πŸ”§ Image Smart Sharpen

Image Smart Sharpen (ComfyUI Essentials)

By cubiqΒ·Created 3 years agoΒ·Updated about a year agoΒ· 1,152
πŸ”§ Image Smart Sharpen
  • image
  • IMAGE
β—„noise_radius7β–Ί
β—„preserve_edges0.75β–Ί
β—„sharpen5.0β–Ί
β—„ratio0.5β–Ί

Regular sharpening has one big flaw: it sharpens the noise right along with the detail, so you get crunchy halos and amplified grain. Image Smart Sharpen is the edge-aware version - it crisps up genuine detail while trying to leave flat, noisy areas alone. It's the sharpen node to reach for when you want an image to pop without looking over-processed.

Why you'd reach for it

AI-generated images, especially after upscaling, often land in a slightly soft, plasticky place - Flux's "plastic skin" look is a whole community complaint of its own. A touch of sharpening brings them back to life, but a naive unsharp mask overdoes edges and turns skin texture into visible noise. Smart Sharpen threads that needle by respecting edges and controlling how much it touches smoother regions, so you get definition where it counts and calm where it doesn't. It's a finishing-pass node - you apply it near the end, after generation and upscaling, right before the save.

How it works

Under the hood it's an edge-aware (bilateral-style) sharpen: it analyzes a neighborhood around each pixel to distinguish real edges from noise, then boosts the edges. noise_radius sets how large that neighborhood is - how far it looks when deciding what's noise. preserve_edges controls how strongly it protects edges from over-sharpening (higher means fewer halos). sharpen is the raw strength of the effect. ratio blends the sharpened result back with the original, so you can pull the whole thing back toward the source for a subtler finish.

Inputs and outputs

Input is image; output is IMAGE. The four dials, in the order you'll actually think about them: sharpen (how much - start low, it's stronger than it looks), ratio (how much of that to keep vs. the original), preserve_edges (halo control, 0.75 default is a sane start), and noise_radius (neighborhood size, default 7). There's no mask input, so it sharpens the whole frame - mask it externally if you only want part of it.

Installing it

From ComfyUI Essentials by cubiq (Matteo Spinelli, best known for the IPAdapter nodes). ComfyUI Manager: search ComfyUI Essentials, install, restart. Or:

cd ComfyUI/custom_nodes
git clone https://github.com/cubiq/ComfyUI_essentials

then restart. It's πŸ”§ Image Smart Sharpen under essentials/image processing, class ImageSmartSharpen+. The pack is maintenance-only as of April 2025.

Common issues

The number-one mistake is heavy-handedness. The sharpen value hits harder than the scale suggests, and cranking it produces exactly the crunchy, haloed, noise-amplified look you were trying to avoid. Start with a low sharpen and pull it back further with ratio, then only add more if you genuinely need it. If you're seeing halos on high-contrast edges, raise preserve_edges. And since there's no built-in mask, sharpening a whole portrait will also sharpen the background - if you only want the face crisp, mask the region and composite, or run this before a background-swap step.

Categoryessentials/image processing

Inputs (5)

NameTypeDefaultDescription
imageIMAGEβ€”
noise_radiusINT71–25β€”
preserve_edgesFLOAT0.750–1β€”
sharpenFLOAT5.00–25β€”
ratioFLOAT0.50–1β€”

Outputs (1)

NameTypeDescription
IMAGEIMAGEβ€”