DSPRelated.com
Forums

spectral estimation question

Started by Randy Yates April 2, 2006
OK, here's one of those "This should be simple..." questions.

We know that many (all?) methods of spectral estimation of
discrete-time data rely fundamentally on the DFT (the N-point DFT).

However, the output of a specific bin of the DFT can be viewed as a
bandpass filter. This DFT bandpass filter is not particularly "good,"
i.e., it has high side lobes and poor stop-band rejection.

So, how do we ever get a good spectral estimate using such inherently
poor filters?

Now I'm pretty sure someone's going to bring up windowing, but in my
view windowing is a technique to tradeoff resolution and out-of-band
rejection due to the finite-extent of the data. The problem with DFT
lobes is separate. I think...
-- 
%  Randy Yates                  % "With time with what you've learned, 
%% Fuquay-Varina, NC            %  they'll kiss the ground you walk 
%%% 919-577-9882                %  upon."
%%%% <yates@ieee.org>           % '21st Century Man', *Time*, ELO
http://home.earthlink.net/~yatescr
"Randy Yates" <yates@ieee.org> wrote in message 
news:m3fykvom5y.fsf@ieee.org...
> OK, here's one of those "This should be simple..." questions. > > We know that many (all?) methods of spectral estimation of > discrete-time data rely fundamentally on the DFT (the N-point DFT). > > However, the output of a specific bin of the DFT can be viewed as a > bandpass filter. This DFT bandpass filter is not particularly "good," > i.e., it has high side lobes and poor stop-band rejection. > > So, how do we ever get a good spectral estimate using such inherently > poor filters? > > Now I'm pretty sure someone's going to bring up windowing, but in my > view windowing is a technique to tradeoff resolution and out-of-band > rejection due to the finite-extent of the data. The problem with DFT > lobes is separate. I think...
Randy, Not different. This is an age-old problem that gets to things like separating adjacent tones in signals or adjacent stars in astronomy or adjacent satellites with antenna patterns. They are all limited in resolution by the size of the window/aperture. The objective is to get a narrow bandpass filter or, equivalently, a "pencil beam". Now, if you *know* that there are quiet or "don't care" regions then you can reduce the bandpass filter width by allowing the filter response to grow in those quiet regions - theoretically but not recommended. It's sort of a pathological situation. The problem with DFT lobes is the same thing. The main lobe width is inversely proportional to N and that's all there is to it. And, a rectangular window yields the minimum main lobe width with the sidelobes we all know about. The sidelobes can be controlled by using a different window - which does increase the main lobe width above its minimum - but not hugely. Fred
Fred Marshall wrote:

   ...

> The main lobe width is inversely proportional to N and that's all there is > to it.
Ah: but IF enough is known about the signal /a priori/ and IF what is known is sufficiently auspicious -- in other words if you already know [most of] the result you're looking for -- then you can trade what you know for smaller N. Aren't you as sick of hearing that as I am? ... Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;
"Fred Marshall" <fmarshallx@remove_the_x.acm.org> writes:

> "Randy Yates" <yates@ieee.org> wrote in message > news:m3fykvom5y.fsf@ieee.org... >> OK, here's one of those "This should be simple..." questions. >> >> We know that many (all?) methods of spectral estimation of >> discrete-time data rely fundamentally on the DFT (the N-point DFT). >> >> However, the output of a specific bin of the DFT can be viewed as a >> bandpass filter. This DFT bandpass filter is not particularly "good," >> i.e., it has high side lobes and poor stop-band rejection. >> >> So, how do we ever get a good spectral estimate using such inherently >> poor filters? >> >> Now I'm pretty sure someone's going to bring up windowing, but in my >> view windowing is a technique to tradeoff resolution and out-of-band >> rejection due to the finite-extent of the data. The problem with DFT >> lobes is separate. I think... > > Randy, > > Not different.
I think it is. Try this gedanken: We have a length of 1024 points of data that represent an entire, complete signal. That is, those 1024 points don't need to be windowed. We can even assume that several samples near the endpoints are already zero, and that this is part of the original data and not any result of windowing. OK, now say we had a magic spectrum analyzer that gave us an EXACT spectrum of the signal, and assume that this exact spectrum has a spike at \pi/20 rad/s and another at \pi/5 rad/s. If we run this signal through a 1024-point FFT, then, due to those blasted lousy bandpass filters, not only does the spike at \pi/5 rad/s show up in (I'll just pick a bin) bin 500, but also a little bit of the energy from the spike at \pi/20. So the FFT's spectrum result at bin 500 has an error in it that isn't a result of windowing but rather of the FFT's poor bandpass filters. Now instead of FFT bins, imagine we input the signal into 1024 bandpass filters with REALLY good stop-band characteristics. Now the 500th filter shows (practically) only the energy from the spike at \pi/5 and none of that from the spike at \pi/20. Where is my error (if there is one)? -- % Randy Yates % "Rollin' and riding and slippin' and %% Fuquay-Varina, NC % sliding, it's magic." %%% 919-577-9882 % %%%% <yates@ieee.org> % 'Living' Thing', *A New World Record*, ELO http://home.earthlink.net/~yatescr
> Now instead of FFT bins, imagine we input the signal into 1024 > bandpass filters with REALLY good stop-band characteristics. Now > the 500th filter shows (practically) only the energy from the > spike at \pi/5 and none of that from the spike at \pi/20.
What about the practicality of doing that? And if such is the kind of resolution we need, we could as well use high resolution spectral estimation techniques like MUSIC, which don't even use DFT.
> Where is my error (if there is one)?
Don't know. Never tried designing 1024 bandpass filters. :o) Regards, Prasanna.
"Randy Yates" <yates@ieee.org> wrote in message
news:m3fykvom5y.fsf@ieee.org...
> OK, here's one of those "This should be simple..." questions. > > We know that many (all?) methods of spectral estimation of > discrete-time data rely fundamentally on the DFT (the N-point DFT). > > However, the output of a specific bin of the DFT can be viewed as a > bandpass filter. This DFT bandpass filter is not particularly "good," > i.e., it has high side lobes and poor stop-band rejection. > > So, how do we ever get a good spectral estimate using such inherently > poor filters? > > Now I'm pretty sure someone's going to bring up windowing, but in my > view windowing is a technique to tradeoff resolution and out-of-band > rejection due to the finite-extent of the data. The problem with DFT > lobes is separate. I think... >
You can use parameter estimation methods to get smoother results eg RLS,Burg method etc etc Tam
"HelpmaBoab" <FU2@yahoo.co.zpc> writes:

> "Randy Yates" <yates@ieee.org> wrote in message > news:m3fykvom5y.fsf@ieee.org... >> OK, here's one of those "This should be simple..." questions. >> >> We know that many (all?) methods of spectral estimation of >> discrete-time data rely fundamentally on the DFT (the N-point DFT). >> >> However, the output of a specific bin of the DFT can be viewed as a >> bandpass filter. This DFT bandpass filter is not particularly "good," >> i.e., it has high side lobes and poor stop-band rejection. >> >> So, how do we ever get a good spectral estimate using such inherently >> poor filters? >> >> Now I'm pretty sure someone's going to bring up windowing, but in my >> view windowing is a technique to tradeoff resolution and out-of-band >> rejection due to the finite-extent of the data. The problem with DFT >> lobes is separate. I think... >> > You can use parameter estimation methods to get smoother results eg RLS,Burg > method etc etc
Hi Tam, Well, thanks!? I didn't really mean for anyone to answer that question directly. I meant to ask for verification that using the DFT does indeed produce the problem I'm thinking it does in my head. -- % Randy Yates % "...the answer lies within your soul %% Fuquay-Varina, NC % 'cause no one knows which side %%% 919-577-9882 % the coin will fall." %%%% <yates@ieee.org> % 'Big Wheels', *Out of the Blue*, ELO http://home.earthlink.net/~yatescr
Randy Yates wrote:

> OK, here's one of those "This should be simple..." questions. > > We know that many (all?) methods of spectral estimation of > discrete-time data rely fundamentally on the DFT (the N-point DFT). > > However, the output of a specific bin of the DFT can be viewed as a > bandpass filter. This DFT bandpass filter is not particularly "good," > i.e., it has high side lobes and poor stop-band rejection.
Hi Randy, interesting question, now that you mention it. The optimality of the DFT is indeed not the frequency domain characteristic of the single-bin bandpass filter. It comes from the fact that the DFT decomposes a vector into the frequency domain basis vectors (the sampled exponentials) by projecting the (input) vector onto each basis vector. Projection immediately implies least-squares (which implies, using results from linear regression, that the DFT is the maximum likelyhood estimator for the amplitudes in each bin) - however, the system of equations is not overdetermined. That is where the lousy variance of the DFT comes from.
> So, how do we ever get a good spectral estimate using such inherently > poor filters?
To be honest, I think the main reasons for the use of the DFT in spectrum analysis are 1. The existence of the FFT. 2. Only one parameter to tune (N), which is easily understood. 3. Windowing and averaging can be used to improve the variance of the estimation. .... 1000. The above mentioned statistical optimality property. ...
>Try this gedanken: We have a length of 1024 points of data that >represent an entire, complete signal. That is, those 1024 points don't >need to be windowed. We can even assume that several samples near the >endpoints are already zero, and that this is part of the original data >and not any result of windowing. > >OK, now say we had a magic spectrum analyzer that gave us an EXACT >spectrum of the signal, and assume that this exact spectrum has >a spike at \pi/20 rad/s and another at \pi/5 rad/s.
There is a problem with this gedanken: what is the EXACT spectrum of such a signal? If you define it to be the Discrete-Time Fourier Transform of the input signal, then because of the finite support of the signal, the DTFT reduces to the DFT. In other words, the EXACT spectrum is the output of the FFT. Regards, Andor
Randy Yates wrote:
> "Fred Marshall" <fmarshallx@remove_the_x.acm.org> writes: > > >>"Randy Yates" <yates@ieee.org> wrote in message >>news:m3fykvom5y.fsf@ieee.org... >> >>>OK, here's one of those "This should be simple..." questions. >>> >>>We know that many (all?) methods of spectral estimation of >>>discrete-time data rely fundamentally on the DFT (the N-point DFT). >>> >>>However, the output of a specific bin of the DFT can be viewed as a >>>bandpass filter. This DFT bandpass filter is not particularly "good," >>>i.e., it has high side lobes and poor stop-band rejection. >>> >>>So, how do we ever get a good spectral estimate using such inherently >>>poor filters? >>> >>>Now I'm pretty sure someone's going to bring up windowing, but in my >>>view windowing is a technique to tradeoff resolution and out-of-band >>>rejection due to the finite-extent of the data. The problem with DFT >>>lobes is separate. I think... >> >>Randy, >> >>Not different. > > > I think it is. > > Try this gedanken: We have a length of 1024 points of data that > represent an entire, complete signal. That is, those 1024 points don't > need to be windowed. We can even assume that several samples near the > endpoints are already zero, and that this is part of the original data > and not any result of windowing. > > OK, now say we had a magic spectrum analyzer that gave us an EXACT > spectrum of the signal, and assume that this exact spectrum has > a spike at \pi/20 rad/s and another at \pi/5 rad/s. > > If we run this signal through a 1024-point FFT, then, due to those > blasted lousy bandpass filters, not only does the spike at \pi/5 rad/s > show up in (I'll just pick a bin) bin 500, but also a little bit of > the energy from the spike at \pi/20. > > So the FFT's spectrum result at bin 500 has an error in it that isn't > a result of windowing but rather of the FFT's poor bandpass filters. > > Now instead of FFT bins, imagine we input the signal into 1024 > bandpass filters with REALLY good stop-band characteristics. Now > the 500th filter shows (practically) only the energy from the > spike at \pi/5 and none of that from the spike at \pi/20. > > Where is my error (if there is one)?
I think that the assumptions A) the complete signal has a duration 1024 samples, and B) its frequencies are representable by isolated spikes are mutually exclusive, so that the conditions for your gedanken experiment can't be realized. Jerry -- Engineering is the art of making what you want from things you can get. &#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;&#4294967295;

Randy Yates wrote:
> > "Fred Marshall" <fmarshallx@remove_the_x.acm.org> writes: > > > "Randy Yates" <yates@ieee.org> wrote in message > > news:m3fykvom5y.fsf@ieee.org... > >> OK, here's one of those "This should be simple..." questions. > >> > >> We know that many (all?) methods of spectral estimation of > >> discrete-time data rely fundamentally on the DFT (the N-point DFT). > >> > >> However, the output of a specific bin of the DFT can be viewed as a > >> bandpass filter. This DFT bandpass filter is not particularly "good," > >> i.e., it has high side lobes and poor stop-band rejection. > >> > >> So, how do we ever get a good spectral estimate using such inherently > >> poor filters? > >> > >> Now I'm pretty sure someone's going to bring up windowing, but in my > >> view windowing is a technique to tradeoff resolution and out-of-band > >> rejection due to the finite-extent of the data. The problem with DFT > >> lobes is separate. I think... > > > > Randy, > > > > Not different. > > I think it is. > > Try this gedanken: We have a length of 1024 points of data that > represent an entire, complete signal. That is, those 1024 points don't > need to be windowed. We can even assume that several samples near the > endpoints are already zero, and that this is part of the original data > and not any result of windowing. > > OK, now say we had a magic spectrum analyzer that gave us an EXACT > spectrum of the signal, and assume that this exact spectrum has > a spike at \pi/20 rad/s and another at \pi/5 rad/s. > > If we run this signal through a 1024-point FFT, then, due to those > blasted lousy bandpass filters, not only does the spike at \pi/5 rad/s > show up in (I'll just pick a bin) bin 500, but also a little bit of > the energy from the spike at \pi/20. > > So the FFT's spectrum result at bin 500 has an error in it that isn't > a result of windowing but rather of the FFT's poor bandpass filters. > > Now instead of FFT bins, imagine we input the signal into 1024 > bandpass filters with REALLY good stop-band characteristics. Now > the 500th filter shows (practically) only the energy from the > spike at \pi/5 and none of that from the spike at \pi/20. > > Where is my error (if there is one)?
putting error aside - 2 problems with your reasoning. If your 1024 length signal is periodic then the frequency response of the 'DFT as Filter' is very good. Well not just good it is perfect. The other thing is in order to have " 1024 bandpass filters with REALLY good stop-band characteristics" you would need a lot more than 1024 data points - so what I are you going to do? make those points up out of thin air? -jim
> -- > % Randy Yates % "Rollin' and riding and slippin' and > %% Fuquay-Varina, NC % sliding, it's magic." > %%% 919-577-9882 % > %%%% <yates@ieee.org> % 'Living' Thing', *A New World Record*, ELO > http://home.earthlink.net/~yatescr
----== Posted via Newsfeeds.Com - Unlimited-Unrestricted-Secure Usenet News==---- http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups ----= East and West-Coast Server Farms - Total Privacy via Encryption =----