Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!wuarchive!texbell!texsun!pollux!ti-csl!news From: news@ti-csl.csc.ti.com (USENET News System) Newsgroups: comp.dsp Subject: FFT vs ARMA (was FFTs of Low Frequency Signals (really: decimation)) Message-ID: <98990@ti-csl.csc.ti.com> Date: 20 Nov 89 15:40:09 GMT References: <5619@videovax.tv.tek.com> <10208@cadnetix.COM> <2586@irit.oakhill.UUCP> <5305@orca.WV.TEK.COM> <5622@videovax.tv.tek.com> <98204@ti-csl.csc.ti.com> <5630@videovax.tv.tek.com> Reply-To: oh@m2.UUCP (Stephen Oh) Organization: TI Computer Science Center, Dallas Lines: 67 From: oh@m2.csc.ti.com (Stephen Oh) Path: m2!oh >No. If there's significant noise, you want to use ARMA estimators -- the MA >process zeros are necessary for accurately representing the white noise >itself. See, e.g., Steven M. Kay, Modern Spectral Estimation, ISBN >0-13-598582-X, p. 131 -- he suggests using an ARMA(2,2) model to estimate >the spectra of a sinusoid (actually an AR(2) process) in white noise. Hmmm. good point. You are talking about the following system: x(t) = a1 x(t-1) + a2 x(t-2) + n(t) y(t) = x(t) + e(t) where n(t) and e(t) are white noise processes. Then, y(t) = a1 x(t-1) + a2 x(t-2) + n(t) + e(t) = a1 (y(t-1) - e(t-1)) + a2 (y(t-2) - e(t-2)) + n(t) + e(t) = a1 y(t-1) + a2 y(t-2) + n(t) + e(t) - a1 e(t-1) - a2 e(t-2) This equation seems like ARMA (2,2) model even though it is not exactly ARMA(2,2) we want. But, what the heck, n(t) and e(t) are mutually independent and white noise processes. So, if e(t) is the dominating noise process, the y(t) seems to obey an ARMA(2,2) process, which is not EXACTLY an AR(2) model. >No. Note that ARMA models are no more "statistically stable" than DFTs -- >small variations in the input data may have large effects on the model >parameters. See Kay p. 331, Figure 10.6(b) for an example. Then what about Kay p.327, Figure 10.5 (b), which is another algorithm with the same ARMA modeling? But, I agree with this kind of parametric approches are sensitive to small variations. As far as I understand, if you choose higher order for an ARMA model, you are safe from those effects. >The reason that >the FFT is done in segments usually has to do with available input storage >or desired output resolution, and the reason that the segments are ^^^^^^^^^^^^^^^^^^^^^^^^^ What do you mean by desired output resolution by segments? Case that you want to have lower resolution? The achievable resolution by FFT is only 1/N where N is the number of samples. That's why we call AR or ARMA approches "high resolution frequency estimators." >But then again, it depends on what you want to estimate. If you "know" that >your input data consists of two sinusoids in white noise, all the cost >tradeoffs change, and I wouldn't be surprised to find that the ARMA model is >cheaper, because you can use a very low-order model (ARMA(4,4)) to get a >good estimate. The DFT *is* the ML spectral estimator, in the absence of >any a priori model whatsoever of the input data, and it's very cheap to >compute via the FFT. If you have a data model, the DFT is, as I understand >it, a poorer choice. Again, for the resolutions of PSD, parametric approches are *ALOT* better than FFT-based PSD. >And again, if you only have 16 data points, and can't obtain more, order >analysis is really uninteresting, since the size of the implicit constants >dominates, and besides, neither method takes significant time. There, >questions of what exactly it is you're looking for in those 16 data points >become dominant, and will usually govern your choice of analytic techniques. > True. +----+----+----+----+----+----+----+----+----+----+----+----+----+ | Stephen Oh oh@csc.ti.com | Texas Instruments | | Speech and Image Understandung Lab. | Computer Science Center| +----+----+----+----+----+----+----+----+----+----+----+----+----+