Image Perlin Noise
Procedural noise textures without a diffusion model
- image
Image Perlin Noise generates Perlin noise - the smooth, organic gradient noise pattern Ken Perlin developed for CGI back in the 1980s and that's been the backbone of procedural texture generation ever since (terrain, clouds, marble, fire, you name it) - and hands it back to you as a plain image. No diffusion model involved, just the classic algorithm.
Why this is useful in a ComfyUI graph
Unlike flat random static, Perlin noise has structure: smooth, continuous variation rather than pixel-to-pixel randomness, which makes it look far more organic and far more useful as an ingredient. A few real uses: as a texture layer to blend into a generation for grain or organic variation, as a displacement map for the suite's own Image Displacement Warp node, or simply as a quick procedural background or overlay when you don't want to spin up an actual generation for something that decorative.
It's also worth knowing the pack has two other noise-adjacent siblings that solve a related but different problem. Image Perlin Power Fractal layers multiple octaves of Perlin noise together for a richer, more fractal-looking result. Perlin Power Fractal Latent skips the image step entirely and generates the noise directly in latent space, meant to feed a KSampler as init noise instead of the usual random Gaussian start - though per the README that one "doesn't work with all samplers unless you add noise," so it's the pickiest of the three. This node - Image Perlin Noise - is the plain, image-space version, and the easiest one to reason about.
How it's different from Image to Noise
The suite also ships Image to Noise, which does the conceptual opposite: instead of generating noise procedurally, it derives noise from a real photo you already have, letting you carry some of that photo's character into an init image. If you want noise with no particular character, generate it here. If you want noise that's subtly "themed" by an existing image, that's the other node.
Installing it
Through ComfyUI Manager: search "WAS Node Suite", install, restart. Manually:
cd ComfyUI/custom_nodes
git clone https://github.com/WASasquatch/was-node-suite-comfyui
cd was-node-suite-comfyui
pip install -r requirements.txt
Pure procedural generation - no models to download.
Troubleshooting
Perlin noise generation is deterministic math with a seed, so if you're getting unexpected results the most common cause is simply not realizing the seed changed between runs - lock it if you need a reproducible texture across sessions.
As always with this pack: it's had no active development since the author stepped back in December 2023. If this node - or the whole suite - fails to load after a ComfyUI core update, that's almost certainly the suite-wide import problem (a pinned legacy dependency, BLIP support being the recurring one) rather than anything about the noise generator itself.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| width | INT | 51264–2048 | Width of the generated image, in pixels. |
| height | INT | 51264–2048 | Height of the generated image, in pixels. |
| scale | INT | 1002–2048 | Size of one blob of the coarsest octave, in pixels. 100 gives clouds about a tenth of a 1024-pixel canvas across; 10 gives a busy speckle and 1000 a single soft gradient. |
| octaves | INT | 40–8 | How many levels of detail are added together. 1 is a single smooth layer, 4 adds three progressively finer layers over it, 8 is very detailed and slower. 0 adds nothing and renders solid black. |
| persistence | FLOAT | 0.500.01–100 | How strongly each finer level shows through, as a fraction of the level before it. 0.5 halves it each time, which reads as soft clouds; 0.9 keeps almost all of it and looks rough and grainy. |
| seed | INT | 00–18446744073709550000 | Which pattern is drawn. The same seed always gives the same image, 0 included, so change it for a different one. Feed this socket from a seed node to draw a fresh pattern each prompt. |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | The noise, as a greyscale image with all three channels equal. |