Thursday, June 18, 2009

Peak Estimation

Sometimes it is important to be able to estimate the peak of a sampled continuous function between the samples. This is called subsample peak interpolation and is used in radar, delay estimation, and communication. Typically one fits a model to the sampled data and then finds the maximum of the model. Two models that I have used are parabolas and Gaussian curves. Both have three parameters and can be fit exactly to three samples (even if the samples are not evenly spaced), and, as a bonus, closed form solutions exist for parameters. I've written up a Matlab package to demonstrate this procedure, to be found here. The plot above shows an example, finding the peak of the green curve sampled at the blue markers (click to enlarge).

1 comment:

Sean said...

There's a 2004 paper called 'Bayesian adaptive exploration' by Tom Loredo that treats the problem of where to take the samples in order to get the most information about the peak location of a Gaussian. Don't know if it's relevant to your problem, but thought you might be interested.