Nodes/MTB Nodes/Blur (mtb)
ComfyUI Node Runs on cloud

Blur (mtb)

Stronger Gaussian blur with independent X/Y control in ComfyUI

By melMass·Created 3 years ago·Updated about a month ago· 721
Blur (mtb)
  • image
  • sigmasX
  • sigmasY
  • IMAGE
sigmaX3.00
sigmaY3.00

ComfyUI has a built-in blur, but it caps out at 30 - and sooner or later you want more than that. Blur (mtb) is the beefier version: a Gaussian blur that goes far higher, lets you blur the X and Y axes independently, and can even vary the blur per frame across a batch. If the core node isn't cutting it, this is the drop-in upgrade.

Blur shows up more than you'd think. Soft-focus backgrounds, glow and bloom effects (blur a bright pass and screen it back), depth-of-field fakery, and - a big one - making masks. A hard-edged mask blurred out becomes a soft, feathered mask that blends way more naturally, which is why you'll often see a Blur node feeding a mask conversion. The per-axis control is handy for directional effects like a fake motion blur; the per-frame variation is for animation, where you want the blur to ramp over time.

It's in the image-processing section of MTB Nodes (comfy_mtb) by melMass, and the author explicitly built it to do a few things core blur can't.

How it works

It applies a Gaussian blur using separate sigma values for the horizontal and vertical directions. Sigma is the "spread" of the blur - bigger sigma, softer image. By decoupling X and Y you can blur one axis more than the other, which core's single-value blur can't do. And it accepts FLOATS lists so each frame in a batch can get its own sigma, which is how you animate a blur that changes over the sequence.

The inputs and outputs that matter

  • image - the image or batch to blur.
  • sigmaX (default 3, up to 200) - horizontal blur amount. This is your main strength dial. The high ceiling is the whole point versus core's limit of 30.
  • sigmaY (default 3, up to 200) - vertical blur amount. Match it to sigmaX for an even blur; make them different for a directional, stretched blur.
  • sigmasX / sigmasY (optional, FLOATS) - per-frame blur values for a batch. Feed a list and each frame gets its own sigma, so the blur can ramp or pulse across an animation. Ignore these for a single, uniform blur.

Output is a single IMAGE (or blurred batch). Common next step: pipe it into a mask conversion to get a feathered mask, or screen it back over the original for a glow.

How to install it

ComfyUI Manager: search MTB Nodes, install, restart. Manual:

cd ComfyUI/custom_nodes
git clone https://github.com/melMass/comfy_mtb

then restart. Pure Torch/Python, no models, nothing extra to install.

Common issues & troubleshooting

It's blurrier (or softer) than expected. Because the ceiling is 200, small changes at the top end are huge. If a value nukes the image into mush, you overshot - Gaussian sigma scales fast. Come down and creep up.

Uneven blur you didn't want. If the image looks smeared in one direction, sigmaX and sigmaY are mismatched. Set them equal for a clean, uniform blur; only split them when you want a directional effect.

The FLOATS inputs did nothing. sigmasX/sigmasY expect a FLOATS list (the kind produced by the pack's batch-float nodes), one value per frame, and they're for batches. On a single image they don't apply - use the plain sigmaX/sigmaY sliders instead.

Edge darkening on a heavy blur. Very large sigmas can pull in dark or transparent border pixels and darken the edges. If that shows up, blur a little less, or pad the image before blurring so the edges have something to sample.

Categorymtb/image processing

Inputs (5)

NameTypeDefaultDescription
imageIMAGE
sigmaXFLOAT3.000–200
sigmaYFLOAT3.000–200
sigmasXoptFLOATS
sigmasYoptFLOATS

Outputs (1)

NameTypeDescription
IMAGEIMAGE