DSPRelated.com
Forums

frequency analysis for very short signals

Started by Ingmar Seifert October 19, 2005
Hello everyone,

I have a question regarding the frequency analysis for very short signals  
or part of signals.

In a project we get data that has the character of a sinus function  
superimposed by little noise. We use the periodicity of the data to  
determine certain things. At the moment the signal, that we are using,  
contains at least two cycles. We use the FFT to analyze the signal and to  
get the power spectrum of the signal to determine the strongest frequency.  
We would like to shorten the analysis time. Is it possible to use only a  
part of a cycle (let's say a half period) of the harmonic function with  
the fourier transform to estimate the main frequency? Or are there  
alternative methods?

With best regards
Ingmar Seifert
Ingmar Seifert wrote:
> Hello everyone, > > I have a question regarding the frequency analysis for very short > signals or part of signals. > > In a project we get data that has the character of a sinus function > superimposed by little noise. We use the periodicity of the data to > determine certain things. At the moment the signal, that we are using, > contains at least two cycles. We use the FFT to analyze the signal and > to get the power spectrum of the signal to determine the strongest > frequency. We would like to shorten the analysis time. Is it possible to > use only a part of a cycle (let's say a half period) of the harmonic > function with the fourier transform to estimate the main frequency? Or > are there alternative methods? > > With best regards > Ingmar Seifert
Shroedinger made not that position and velocity cannot both be measured to an infinite degree, ie k = v*p where k is a constant. This holds true for frequency and time, k = f*t, if you want to improve the resolution of your frequency determination then you must take it over a longer time period. If you want to determine the signal time at just one moment then it will have no frequency relevance. So to answer your question, if you use a half period, then the frequency may actually differ by 2x to what you obtain via FFT, etc. The FFT will replicate the waveform for all time, which will result in a waveform that is twice the frequency of your original signal. It will essentially be a full wave rectified signal, possibly with some DC offset depending on sample position. You'll need atleast an entire cycle, though I'm sure others might have differing thoughts
You can use a parameteric frequency estimation algorithm like Kay's or
Quinn's. I have used Kay's method to estimate the frequency of complex
sinusoids and I have obtained satisfactory results with a samples
segment spanning just a fraction of the period.

best
-Arrigo

"Ingmar Seifert" <inse@hrz.tu-chemnitz.de> wrote in message
news:op.sywxsernz4mja3@phoenix.csn.tu-chemnitz.de...
> Hello everyone, > > I have a question regarding the frequency analysis for very short signals > or part of signals. > > In a project we get data that has the character of a sinus function > superimposed by little noise. We use the periodicity of the data to > determine certain things. At the moment the signal, that we are using, > contains at least two cycles. We use the FFT to analyze the signal and to > get the power spectrum of the signal to determine the strongest frequency. > We would like to shorten the analysis time. Is it possible to use only a > part of a cycle (let's say a half period) of the harmonic function with > the fourier transform to estimate the main frequency? Or are there > alternative methods? > > With best regards > Ingmar Seifert
You can fit an autoregressive (all-pole) or autoregressive moving average (ARMA - Pole-Zero) model to the data and plot the spectrum from this. For example you can use the Burg method I think or recursive-least-squares (RLS) and so on. McC
Ingmar Seifert wrote:
> Hello everyone, > > I have a question regarding the frequency analysis for very short > signals or part of signals. > > In a project we get data that has the character of a sinus function > superimposed by little noise. We use the periodicity of the data to > determine certain things. At the moment the signal, that we are using, > contains at least two cycles. We use the FFT to analyze the signal and > to get the power spectrum of the signal to determine the strongest > frequency. We would like to shorten the analysis time. Is it possible > to use only a part of a cycle (let's say a half period) of the harmonic > function with the fourier transform to estimate the main frequency? Or > are there alternative methods? > > With best regards > Ingmar Seifert
If the signal you want is actually a single sine wave, the noise is white, and the SNR is high, you could do a lot of things. Conceptually finding the sin with the best least squares fit is probably the easiest to understand. Look at the book by Quinn and Hannon.
Ingmar Seifert wrote:
> Hello everyone, > > I have a question regarding the frequency analysis for very short > signals or part of signals. > > In a project we get data that has the character of a sinus function > superimposed by little noise. We use the periodicity of the data to > determine certain things. At the moment the signal, that we are using, > contains at least two cycles. We use the FFT to analyze the signal and > to get the power spectrum of the signal to determine the strongest > frequency. We would like to shorten the analysis time. Is it possible to > use only a part of a cycle (let's say a half period) of the harmonic > function with the fourier transform to estimate the main frequency? Or > are there alternative methods? > > With best regards > Ingmar Seifert
ahh yeah sorry, didn't read thoroughly enough for my other post. I thought you wanted to determine all the frequency characteristics of the signal from less than half a cycle. If it's just the amplitude and the frequency of a single sinusoid (with some mean zero noise) then you could certainly use maximum likelihood estimation to work out the two parameters required, you would probably need to include phase as well unless you could begin sampling at precisely the beginning of the sinusoid. sorry bout the confusion on the first one, didn't comprehend correctly on first read
Am 20.10.2005, 06:40 Uhr, schrieb Real_McCoy <McCoy@somewhere.co.tw>:

> > "Ingmar Seifert" <inse@hrz.tu-chemnitz.de> wrote in message > news:op.sywxsernz4mja3@phoenix.csn.tu-chemnitz.de... >> Hello everyone, >> >> I have a question regarding the frequency analysis for very short >> signals >> or part of signals. >> >> In a project we get data that has the character of a sinus function >> superimposed by little noise. We use the periodicity of the data to >> determine certain things. At the moment the signal, that we are using, >> contains at least two cycles. We use the FFT to analyze the signal and >> to >> get the power spectrum of the signal to determine the strongest >> frequency. >> We would like to shorten the analysis time. Is it possible to use only a >> part of a cycle (let's say a half period) of the harmonic function with >> the fourier transform to estimate the main frequency? Or are there >> alternative methods? >> >> With best regards >> Ingmar Seifert > > You can fit an autoregressive (all-pole) or autoregressive moving average > (ARMA - Pole-Zero) model to the data and plot the spectrum from this. For > example you can use the Burg method I think or recursive-least-squares > (RLS) > and so on.
Does this work for half of a cycle, too? With best regards Ingmar Seifert
Ingmar Seifert wrote:

   ...

> Does this work for half of a cycle, too?
How would you know that you're looking at half a cycle if you don't gave the whole thing? More to the point, how would the math know? 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;
If your signal is (quasi)-periodic, then the only way you can achieve
the best
possible resolution is by doing your analysis on a period by period
basis.
So, your first step would be to segment a (quasi-periodic) signal into
(possibly overlapping) one-period long chunks, and, then, to do FFT or
whatever on each of those chunks (you might also need some extra
operations like re-sampling etc.).

Of course, with just a (noisy) sine wave you can compute your frequency
(F0) with just a few samples covering small portion of the period by
doing least-squares fit or something.

In general case, however, you do not know the harmonic structure of
your periodic signal and you cannot analyze less than one full period.

So, the crux of the matter is how to properly segment a
(quasi)-periodic signal into
one-period long portions for subsequent analysis.

In your case of pure sine wave the answer is trivial.

In other cases of practical importance this is much harder to do...

"Jerry Avins" <jya@ieee.org> wrote in message 
news:gd-dnXlNfe-rl8TeRVn-ow@rcn.net...
> Ingmar Seifert wrote: > > ... > >> Does this work for half of a cycle, too? > > How would you know that you're looking at half a cycle if you don't gave the > whole thing? More to the point, how would the math know?
If you make some assumptions about your signal (or have a priori knowledge about it), it is possible to find the period with less than one cycle. I remember reading that guitar-to-MIDI converters used these sort of tricks because with the lowest notes, the delay was too long if they had to wait for a full cycle and got to the point where the player perceived a lag. I'm sure they took advantage of knowing the characteristics of the guitar, etc.