ComfyUI Node

XY Blur

A directional blur with a mix knob

By sousakujikken·Created 2 years ago·Updated 2 months ago· 34
XY Blur
  • image
  • IMAGE
â—„sigma_x1.0â–º
â—„sigma_y1.0â–º
â—„intensity1.0â–º
â—„max_batch_size4â–º

The one-liner

This pack's third node is also its quietest: the README never mentions XY Blur at all. Which is a shame, because it's the most generally useful of the three if all you want is a clean, directional Gaussian blur with a blend knob - no install of a whole other blur pack required.

What it does

XY Blur blurs an image with independent sigma on the X and Y axes, then mixes the result back with the original. That's the entire job, and it does it well. Nothing fancy, no AI, no models - just a per-channel convolution.

The mechanism is straightforward: sigma_x and sigma_y build an anisotropic Gaussian kernel (kernel size is auto-derived as 6×max-sigma, clamped to a 3–31 pixel range, and cached so it isn't rebuilt every frame). Each channel is convolved with its own kernel, then the output is blended as original × (1 - intensity) + blurred × intensity.

That blend parameter is the sleeper feature:

  • intensity 0 - untouched original.
  • intensity 1 - full blur.
  • intensity above 1 - the blurred pass outweighs the original, which overshoots and can fake a soft glow or a cheap bloom.

The inputs

Four of them, and that's the whole story:

  • sigma_x - horizontal blur radius, 0.1 to 10.
  • sigma_y - vertical blur radius, 0.1 to 10.
  • intensity - the blend, 0 to 2.
  • max_batch_size - chunking for long batches (default 4), with the same per-image fallback the CRT node has if you run out of VRAM.

One IMAGE in, one IMAGE out.

When you'd actually reach for it

Honestly, for three things:

  1. Softening a dithered image a hair. Heavy Bayer dithering can look harsh up close; a touch of XY blur (low sigma, intensity ~0.3) knocks the edge off the noise without killing the pixel look.
  2. Fake motion blur. High sigma_x, low sigma_y, intensity 1. Cheap and convincing enough for a still.
  3. Pre-blur before the CRT node. The CRT effect bleeds subpixels; giving it a slightly pre-blurred input makes the phosphor glow smoother instead of crunchy. The two nodes are from the same author for a reason.

It's also just a decent generic soft-focus pass for portraits, if you don't want to load a bigger node pack for that.

Install

Same pack, same install - you already did this if the Quantizer works. For completeness, via ComfyUI Manager search "ComfyUI-PixydustQuantizer", or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/sousakujikken/ComfyUI-PixydustQuantizer.git
pip install -r ComfyUI-PixydustQuantizer/requirements.txt

Restart, and it's under image/Pixydust Quantizer🧚✨ with the other two.

Gotchas

There's no documentation anywhere for this node, but there's also nothing to get wrong - the parameters are self-explanatory and the defaults (sigmas 1.0, intensity 1.0) are sane. Two small caveats: like the CRT node, it picks CUDA-or-CPU, so on Apple Silicon it runs on CPU (fine for stills, slow for long batches). And sigma tops out at 10, so if you want a massive smear, do two passes rather than pushing one beyond its range.

A tiny, honest utility node - the kind of thing that's invisible until you need it, and then you're glad it's already in the pack.

Categoryimage/Pixydust Quantizer🧚✨

Inputs (5)

NameTypeDefaultDescription
imageIMAGE—
sigma_xFLOAT1.00.1–10—
sigma_yFLOAT1.00.1–10—
intensityFLOAT1.00–2—
max_batch_sizeCOMBO47 options: 1, 2, 4, 8, 16, 24, +1

Outputs (1)

NameTypeDescription
IMAGEIMAGE—