Fast Blur (GPU)
Gaussian and bokeh blur without leaving the graph
- image
- IMAGE
Most "blur" nodes give you one flavor: gaussian, take it or leave it. Fast Blur gives you two, because a plain gaussian softening and a convincing camera-lens bokeh are genuinely different problems - one's about smoothing pixels, the other's about faking the shape of an out-of-focus aperture.
That second mode earns its place for a specific reason: AI-generated depth of field is unreliable. The realism literature on this is blunt about it - background blur from a diffusion model "doesn't match real lens optics," often coming out "too uniform" with "wrong falloff patterns," because real lenses produce characteristic bokeh shapes the model rarely replicates correctly on its own. So plenty of people fake the look in post instead of trusting the model to render it, and that's exactly the gap a dedicated bokeh blur node fills.
How it works
blur_type switches between two different algorithms. Gaussian is the standard softening filter: radius sets how far the blur kernel reaches, sigma sets how concentrated the falloff is within that reach - you generally want to move both together, since cranking one without the other plateaus fast. Bokeh instead simulates a lens aperture: bokeh_shape picks which aperture blade shape to fake, circular for the smooth, rounded-aperture look, hexagonal for the classic six-sided bokeh dots you get from lenses with hexagonal aperture blades - a real, recognizable photographic signature, not an arbitrary style choice.
The inputs and outputs that matter
- image - what gets blurred.
- blur_type -
gaussianorbokeh. - radius - 1 to 100, default 5. Reach of the blur.
- sigma - 0.1 to 20, default 1. Falloff intensity within that reach.
- bokeh_shape (optional) -
circularorhexagonal; only read whenblur_typeis set tobokeh. - Output: one blurred IMAGE.
How to install it
One of six utility nodes in ComfyUI UX Nodes, a side project from Reddit's Anibaaal - more recognizable there for a popular Flux realism LoRA than for custom node work. The README lists node names only, with no install or dependency notes, so use the standard route: ComfyUI Manager, search ComfyUI UX Nodes, install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/Anibaaal/ComfyUI-UX-Nodes
then restart ComfyUI. No models to fetch - this runs as a tensor operation, which is presumably the point of the "(GPU)" in the display name: it matters most when you're blurring large images or a lot of video frames in a batch, where a CPU-bound filter re-applied per frame quietly becomes your bottleneck.
Common issues & troubleshooting
Setting bokeh_shape but nothing changes. It's only read when blur_type is bokeh - if you're still on gaussian, the shape field is ignored entirely. Switch blur_type first.
Effect looks weaker than expected. radius and sigma do different jobs - radius is reach, sigma is concentration - and pushing only one of them tends to plateau visually. If a stronger blur isn't showing up, raise both together rather than maxing out just one.
Bokeh looks close but not quite like a real lens. That's expected and part of why this exists as a manual node rather than something the model handles automatically - real bokeh shape depends on aperture blade count and shape in ways a fixed circular/hexagonal toggle only approximates. Treat it as a stylistic tool, not a physically exact simulation.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| blur_type | COMBO | 2 options: gaussian, bokeh | |
| radius | INT | 51–100 | — |
| sigma | FLOAT | 1.00.1–20 | — |
| bokeh_shapeopt | COMBO | 2 options: circular, hexagonal |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |