user4061624
user4061624

Reputation:

Different frequency responses using FFT in MATLAB

I'm applying different windows to a signal and then get the frequency responses using fft function in MATLAB. The idea is to isolate the peaks of the signal, removing the noise and reverberation.

Different windows:

enter image description here

My frequency responses:

enter image description here

Zoom in the peak:

enter image description here

I don't understand the reasons why there're differences, especially the peak I get using Gaussian (figure 3). I know using the Gaussian with small standard deviation I can get rid of the noise, getting a cleaner signal.

Why does this happen? Can you guys give an scientific explanition?

Thank you.

Upvotes: 0

Views: 203

Answers (1)

Ill-Conditioned Matrix
Ill-Conditioned Matrix

Reputation: 441

There are two relevant phenomena here:

  1. Windows that are narrower in the time domain have a broader frequency response, and windows that are wider in the time domain have a narrower frequency response.
  2. Multiplication of a signal with a window in the time domain is equivalent to convolution in the frequency domain

Your Gaussian window with a small standard deviation is narrower in the time domain than the other windows, so it has a wider frequency response. Convolution of this wide frequency response with the spectrum of the un-windowed signal smooths out the frequency response of the windowed signal.

Of course this smoothing comes with trade-offs. As you make your window narrower in the time domain, the spectrum of the windowed signal will become smoother, but the resolution will become increasingly coarse. .

Upvotes: 1

Related Questions