[music-dsp] measuring partial frequencies

Yaakov Stein yaakov_s at rad.com
Tue Jan 13 22:45:01 EST 2004

> If for some reason you really don't want to dig into the Wavetable
> Synthesis 101, you should google for Prony, Pisarenko, MUSIC and ESPRIT ,
> or so called "high resolution" spectrum estimation methods. As you
> guessed, they mostly have a relation with autocovariance. They're quite
> math-intensive as well...

I don't know what 'Wavetable Synthesis" is, 
but the optimal way of finding sinusoids in uncorrelated noise
is to use an eigenspace method, such as the ones mentioned.
These are all "super-resolution" methods, meaning that if your
assumption of there being precisely N sinusoids in noise is correct,
they give resolution higher than that allowed by the uncertainty theorem.

In particular, the Pisarenko Harmonic Decomposition (PHD)
can find p sinusoids in white noise
at the expense of a rooting a 2p+1 polynomial. 
And the standard deviation of its error is inversely proportional to the SNR
and to the square root of the number of samples.
Note that although piano tones (and those of all string instruments)
are not truly harmonic, the higher frequencies are close enough to 
multiples to significantly simplify the rooting.

Prony's method (found by Baron de Prony in 1795!) is somewhat more
complex to understand, since it reduces the solution of the nonlinear
problem of finding the frequencies to the solution of two linear problems
(i.e. inverting two matrices). 

Jonathan (Y) Stein

More information about the music-dsp mailing list