Windowing in a 2D-FFT non image matrix

Hi, I've a 2D-matrix which represents a group of aligned signals. In one dimension I've time in msec, in the other dimension I've # of signal. I need to process this matrix by a 2D-FFT in order to see the freq content in one dimesion and the periodicity in the other dimension. I want to use a window before to process the 2D-FFT and I wondering which is the best way to use the window function. I've two possible methods.
1) create a 2D window as W * W', apply to the matrix of data an then call the fft2 function.
2) process 1D window to the first dimension and calculate the 1D-FFT for each signal, then apply again the 1D window to the ensamble of spectrums for each frequency (the other dimesion) and the calculate the 1D-FFT to this dimension in order to get the 2D-FFT, in which the windowing was applied in each dimension by steps.
I think 2) is better than 1) because both axis represent different things and no the same thing just like images.
I wish to ask what do you think about this. Method 1) or 2) ??? Is the method 2) a valid one ??? Is there another method to process 2D windowing to matrix of data where both dimensions represents differents units (for example age and height) ???
thanks

1 comentario

esteban
esteban el 24 de Oct. de 2012
But... I realize a little topic. 1D-FFT gives a complex result, and then I could use this result as an argument for the 2nd 1D-FFT and get the 2D-FFT jus like the fft2 algorithm. But, how can I do to apply the windowing to a complex number at the end of the first 1D-FFT befor the 2nd one ??? Need I do to apply the window to bhot real and imaginary parts separely ??? thanks

Iniciar sesión para comentar.

 Respuesta aceptada

Honglei Chen
Honglei Chen el 24 de Oct. de 2012
I think the two approaches are equivalent, see the example below
x = magic(8)
w = hamming(8)
fft2(x.*(w*w'))
y1 = fft2(x.*(w*w'));
y2 = fft(bsxfun(@times,fft(bsxfun(@times,x,w)),w'),[],2);
max(abs(y1(:)-y2(:)))

Más respuestas (0)

Categorías

Más información sobre Fourier Analysis and Filtering en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 24 de Oct. de 2012

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by