Forums

Blue Noise creation via filtering?

Started by No Name July 25, 2004
Frederick Umminger wrote:
> "Andor Bariska" <an2or@nospam.net> wrote in message > news:41050c8a$1@pfaff2.ethz.ch... > > >>Yes, that's the whole point - the OP asked what kind of filter to use. I >>suggested the first difference. If that isn't close enough, you can >>generate a higher order FIR approximation of the differential operator, >>but that usually is overkill. > > > Approximating the differential operator will give a psd of f^2, not f. You > are thinking of amplitude, not power.
Thanks for pointing that out. I was lucky, in that for the first difference filter H, |H(w)|^2 = 2 (1 - Cos(w) ), which is approximately ~ w around Pi/2 and thus still gives a reasonable approximation for noise with spectral density ~ w if the input is white. I would still be cautious with using pink noise to generate blue noise. It seems that the defintion of pink noise is one with a spectral density ~ min(c, 1/f) (from http://www.ptpart.co.uk/colors.htm) for some constant c. This seems to contradict the defintion of 1/f noises I am familiar with, for example in [1]. Regards, Andor [1] Mandelbrot, B: "Some noises with 1/f spectrum, a bridge between direct current and white noise" Information Theory, IEEE Transactions on ,Volume: 13 , Issue: 2 , Apr 1967
> > -Frederick Umminger > > >
On Wed, 28 Jul 2004 12:33:26 +0200, Andor Bariska <an2or@nospam.net>
wrote:

>Frederick Umminger wrote: >> "Andor Bariska" <an2or@nospam.net> wrote in message >> news:41050c8a$1@pfaff2.ethz.ch... >> >> >>>Yes, that's the whole point - the OP asked what kind of filter to use. I >>>suggested the first difference. If that isn't close enough, you can >>>generate a higher order FIR approximation of the differential operator, >>>but that usually is overkill. >> >> >> Approximating the differential operator will give a psd of f^2, not f. You >> are thinking of amplitude, not power. > >Thanks for pointing that out. I was lucky, in that for the first >difference filter H, > >|H(w)|^2 = 2 (1 - Cos(w) ), > >which is approximately ~ w around Pi/2 and thus still gives a reasonable >approximation for noise with spectral density ~ w if the input is white. > >I would still be cautious with using pink noise to generate blue noise. >It seems that the defintion of pink noise is one with a spectral density >~ min(c, 1/f) (from http://www.ptpart.co.uk/colors.htm) for some >constant c. This seems to contradict the defintion of 1/f noises I am >familiar with, for example in [1].
This changed definition avoids some of the problems with the traditional definition. Some integrals did not converge when the lower limit was 0Hz and there were problems with non-stationary statistics, etc. (But isn't that what chaos is all about?) http://www.firstpr.com.au/dsp/pink-noise/#Allan
>[1] Mandelbrot, B: "Some noises with 1/f spectrum, a bridge between >direct current and white noise" >Information Theory, IEEE Transactions on ,Volume: 13 , Issue: 2 , Apr 1967
Regards, Allan.
Allan Herriman wrote:
> Andor Bariska wrote:
...
>>I would still be cautious with using pink noise to generate blue noise. >>It seems that the defintion of pink noise is one with a spectral density >>~ min(c, 1/f) (from http://www.ptpart.co.uk/colors.htm) for some >>constant c. This seems to contradict the defintion of 1/f noises I am >>familiar with, for example in [1]. > > > This changed definition avoids some of the problems with the > traditional definition. > Some integrals did not converge when the lower limit was 0Hz and there > were problems with non-stationary statistics, etc. (But isn't that > what chaos is all about?) > http://www.firstpr.com.au/dsp/pink-noise/#Allan
I was always assuming (why?) that we were talking about stationary processes. There are no problems with any integrals for processes with a psd ~ 1/f^beta, with beta in ]0,1[ (so called fractional noises). These are all stationary. But, pink noise is in a class of non-stationary processes (parametrized with beta in [1,2]). One of its properties is that it is "infinitely" correlated with its long-past! This quite clearly is a difficult simulation problem :-) (fractional noises already are non-trivial). Thanks for posting that link, I ended up at this fascinating paper (which might also be of interest to the OP): Kasdin, N.J: "Discrete simulation of colored noise and stochastic processes and 1/f^? power law noise generation" Proceedings of the IEEE ,Volume: 83 , Issue: 5 , May 1995 (freely available through IEEE Explore from my university computer) Regards, Andor
fumminger@umminger.com wrote:
> If you can generate pink noise easily, just filter it with a 6 > dB/octave high pass filter (i.e. a differentiator) to get the blue > noise. There is plenty of literature on differentiators available > online, and you may be able to get by with just taking the difference > of successive samples. > > Btw, the Voss-McCartney algorithm is a very inefficient way to > generate pink noise. You will do much better by applying a simple IIR > filter to a white noise stream. You can find the necessary filter > coefficients at the music-dsp source code archive > (http://www.musicdsp.org/).
Pink noise needs a -3dB/octave low pass filter. White noise filtered by a -6dB/octave low pass filter will then be red noise, which is 1/(f*f).
"ho" <gints@att.net> wrote in message
news:6zKOc.358958$Gx4.81611@bgtnsc04-news.ops.worldnet.att.net...
> fumminger@umminger.com wrote: > > If you can generate pink noise easily, just filter it with a 6 > > dB/octave high pass filter (i.e. a differentiator) to get the blue > > noise. There is plenty of literature on differentiators available > > online, and you may be able to get by with just taking the difference > > of successive samples. > > Pink noise needs a -3dB/octave low pass filter. > White noise filtered by a -6dB/octave low pass filter will > then be red noise, which is 1/(f*f). >
You are supposed to filter the _pink_ noise by a _high_ pass filter. -Frederick