Monday, July 16, 2018

Interpolation of magnitude of discrete Fourier transform (DFT)


For example for peak frequency finding, it seems valid to use band-limited interpolation methods on the complex DFT bins, or separately on their real and imaginary parts and to calculate the magnitudes or squared magnitudes of the results. But how about band-limited interpolation of the magnitudes of the bins (I don't think that's valid), or their squared magnitudes (maybe valid)? By valid I mean that perfectly interpolated values should be equal to those found by calculating them from a larger DFT of a zero-padded version of the time-domain signal.


The first approach guarantees a non-negative result, unlike the others if the interpolation is not perfect, see this question about nonnegative or positive band-limited interpolation.



Answer



Interpolated points of the DFT can be computed using a dot-product of a few samples around the peak region with a pre-computed interpolation vector. The interpolation vector is determined by the location of the desired interpolated sample, taking into consideration the amount of zero-padding required, etc., etc.


This technique and the methodology to compute the interpolating vectors is covered in Appendix B of this document:


http://ericjacobsen.org/FTinterp.pdf


I hope that helps a bit.


No comments:

Post a Comment

periodic trends - Comparing radii in lithium, beryllium, magnesium, aluminium and sodium ions

Apparently the of last four, $\ce{Mg^2+}$ is closest in radius to $\ce{Li+}$. Is this true, and if so, why would a whole larger shell ($\ce{...