How to use Window functions?
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hi Everyone,
Let's discuss something about window functions if you feel interested.
I know what window functions are, and just know that they are used in analysis of signal in Engineering, but do not know their applications. I do not come from Engineering, so I am not sure about this kind of function. Google does not give me good keys for this, so I would like to raise this discussion.
Does anyone have experience about this? I think the most importance is understand:
+ Where can we apply these functions?
+ Why can we do that?
+ How can we apply them?
Thank you.
2 comentarios
Jan
el 24 de Sept. de 2012
"Window functions" is a very general term. Please specify what you are talking of and which problem you want to solve.
Respuestas (2)
Wayne King
el 24 de Sept. de 2012
I'm not sure that this forum is the proper place for a general discussion about windows. In signal processing, windows have two uses:
1.) In the design of an FIR filter. You have an ideal filter response in mind but that cannot be realized in practice because the (impulse) response is infinite, so you form a truncated version of it with a window.
2.) In spectral analysis. The abrupt on-off nature of finite data sets has well known and documented consequences for the accurate estimation of the spectrum of the process from which the data is a realization. Multiplying the data by a window before you take the Fourier transform can mitigate some of these effects.
Both of these topics should be easily researched using Google (the web in general)
3 comentarios
Wayne King
el 24 de Sept. de 2012
the answer to that question is going to require a lengthy explanation, which is covered in every signal processing textbook
Mel
el 24 de Sept. de 2012
The Fourier transform needs an infinite data series (note that in the definition of the Fourier transform, the integral goes from negative to positive infinity). I will refer to the Fourier transform of a signal as its "spectrum".
In reality, we do not have infinite data series. If you simply "chop" your signal after a particular amount of time, you introduce an error into the spectrum. Take for example, y=sin(2*pi*t*n), where t is in seconds and n is any number. The spectra would ideally be a delta function at n (since the signal is a simple sine wave of frequency n). In reality if you simply chop the data series, instead of the delta function, you will get a sinc(f) (sin(f)/f) shape, with its peak at n.
The reason for this: Multiplication in the time domain is equivalent to convolution (see http://en.wikipedia.org/wiki/Convolution) in the frequency domain. "Chopping" our signal is equivalent to multiplying it by a boxcar function (ones from your start time to your stop time and zeros at all other times). The Fourier transform of a boxcar function is a sinc(f) term. Therefore, the resulting spectrum in this example is the convolution of the real Fourier transform of the data (a delta function at f=n) and the Fourier transform of the boxcar function (sinc(f)).
The boxcar function is used as a window here. So, the fundamental reason why we use windows is we don't have infinite data series. Specific windows, such as Hamming, Hann, Butterworth, etc., have particular benefits that may interest a researcher to use them over other windows. See http://en.wikipedia.org/wiki/Window_function for more information on various windows.
Honglei Chen
el 24 de Sept. de 2012
Applying Fourier transform directly in one domain generates a first sidelobe at -13dB in the transformed domain. In a lot of applications, this attenuation is not enough. Using a window beforehand could improve the attenuation and reduce the error in the estimation. For example, you mentioned Gaussian in your question. So you must be aware that the Fourier transform of Gaussian is still Gaussian, which means there will be no sidelobes in the transformed domain. On the other hand, the price you pay is a widened mainlobe. Using the same example, Gaussian is only an approximation of the delta function.
0 comentarios
Ver también
Categorías
Más información sobre Windows en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!