Changing from gaussian to uniform is a distortion that presumably adds harmonics, but since they can only be higher frequencies than the original, the noise should still be blue.
That's incorrect, distortion products spread both upwards and downwards in frequency. The easiest example to analyze is x^2, which corresponds to the spectrum convoluted with itself. From there it's easy to expand into polynomials.
Anyway, what you're describing is pretty much a single step in a standard blue noise algo iteration.
> The resulting noise is gaussian, not uniform. […] This is why you need a specialized algorithm.
(The algorithm is afterwards described)
It's about generating 3D blue noise for rendering, it's very interesting on its own but the title is misleading.
What I find most interesting is that the problem of generating noise in the time domain has been recast into shaping and denoising a spectrum in the frequency domain. It starts as white noise, and gets turned into a pre-designed picture. You do so by swapping pixels in the other domain. The state for this process is kept in the phase channel, which is not directly relevant to the problem, but drifts into alignment over time.
Hence I called it Stable Fiddusion. If you swap the two domains, you're turning noise into a picture by swapping frequency bands without changing their values. It would result in a complex-valued picture, whose magnitude is the target, and whose phase encodes the progress of the convergence process.
This is approximately what you get when you add a hidden layer to a diffusion model.
Also, your "clarifying" (about generating 3d blue noise for rendering) description is just a rewording of the title. Is your comment also trying to mislead people then?
You mean the subtitle. The title is an allusion to stable diffusion.
Great article.
looks at the tool
It's implemented in TS.