A system and method for analyzing an input signal comprising one or more sinusoidal
tones. A processor of the system receives samples of an input signal and operates
on the samples to generate a transform array. The processor identifies positive
frequency peaks of the transform array, and estimates a set of signal parameters
(e.g. tone frequency and complex amplitude) for each of the positive frequency
peaks. Each tone is represented in the transform array as a positive frequency
image and a corresponding negative frequency image. Using the parameter sets, the
processor may estimate the amount of cross-interaction between the images, i.e.,
may compute the amounts by which each positive frequency peak is effected by the
negative frequency images and other positive frequency images. These amounts may
be subtracted from each positive frequency peak to generate improved peak values.
The processor may use the improved peak values to compute improved estimates for
the signal parameters. The operations of (a) estimating the cross-interaction amounts
based on current parameter estimates for the multiple tones, (b) subtracting the
cross-interaction amounts from the current peak values to generate improved peak
values for each tone, and (c) computing improved parameter estimates for the multiple
tones from the improved peak values may be repeated a predefined number of time
or until a termination criteria is achieved.