ImageNoiseBeta
Noise with a personality, not just random static
- images
- IMAGE
Plain noise is boring - it's all mid-tones, evenly spread. Sometimes you want noise that leans bright, or noise that's mostly tiny values with the occasional spike, or noise that's strictly uniform. That's what the Beta distribution gives you, and it's why ImageNoiseBeta exists in the Allor Plugin (Nourepide/ComfyUI-Allor). Where the pack's Gaussian node is the "just add grain" default, Beta is the "I want a specific flavor of grunge" knob: two shape parameters let you bias the noise in ways no other node in the family can.
How it works
Each noisy pixel value is drawn from np.random.beta(a, b) and added to the image (subtracted if you flip invert). The a and b parameters - both integers, both min 1, both default 1 - shape what the noise looks like:
a=1, b=1- the flat uniform distribution. Pure random values across the whole range. This is the boring setting and a perfectly good uniform-noise generator.a > b- the distribution skews toward large values, so noise mostly adds strongly. Bright, chunky, high-contrast texture.a < b- skews toward small values: mostly faint, sparse noise with the occasional bright hit.- Large
aandbtogether - noise clusters around the middle, closer to a smooth, fine-grained pattern.
So a and b aren't "amount" and "size" - they're shape. That's the mental model to hold. There's no explicit strength slider here; how much the noise shows depends on how the Beta samples land relative to your image values, which is exactly why you tune a and b rather than a percentage.
Like every Allor noise node, it works per-channel: a channels dropdown (rgb, rgba, rg, rb, ra, gb, ga, ba, r, g, b, a) decides where noise is applied, and monochromatic (true/false) decides whether all channels share one noise pattern or each gets its own. Monochromatic on + a heavy = textured, weathered look; per-channel + a heavy = color mottling.
Inputs and outputs
images(IMAGE) - one image or a batch.a(INT, default 1, min 1) - first Beta shape parameter.b(INT, default 1, min 1) - second Beta shape parameter.monochromatic(false/true),invert(false/true),channels- the shared noise-family controls.
Output is an IMAGE at the same size and channel count, alpha included.
Installing it
It ships in the Allor Plugin: ComfyUI Manager → search "Allor Plugin" → install → restart, or clone it:
cd ComfyUI/custom_nodes
git clone https://github.com/Nourepide/ComfyUI-Allor
No model downloads for noise nodes. On first launch the pack writes config.json (daily auto-update on by default) - harmless, editable.
Where people get burned
The #1 confusion is expecting a and b to be "amount" and "smoothness" - they're shape parameters, so the honest way to learn them is to set one pair, look, then change one value and look again. Also, because there's no strength dial, people crank a or b way up to compensate and end up with posterized block noise; if you want volume, use Gaussian instead and save Beta for the cases where you genuinely want its character. And remember invert subtracts rather than adds - great for a "grime shadow" effect, easy to forget it's on.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| a | INT | 1 | — |
| b | INT | 1 | — |
| monochromatic | COMBO | 2 options: false, true | |
| invert | COMBO | 2 options: false, true | |
| channels | COMBO | 12 options: rgb, rgba, rg, rb, ra, gb, +6 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| IMAGE | IMAGE | — |