DSPRelated.com
Forums

Interesting problem

Started by abhinav October 6, 2004
I am a newcomer in DSP.
I am using MATLAB for that.My data is in form of a N*1 matrix.
Why there is phase associated with it though its all real data(+ve integers).
If i have some other data in N*1 matrix.How can i get effective crosscorrelation.

My approach is:-
--FFT 
--filter using simple filter to remove low frquency component
--iFFt
--obtain cross and auto correlation.

Thanks in advance
"abhinav" <akashya@gmail.com> wrote in message 
news:729e705.0410061242.4c4d7d01@posting.google.com...
>I am a newcomer in DSP. > I am using MATLAB for that.My data is in form of a N*1 matrix. > Why there is phase associated with it though its all real data(+ve > integers). > If i have some other data in N*1 matrix.How can i get effective > crosscorrelation. > > My approach is:- > --FFT > --filter using simple filter to remove low frquency component > --iFFt > --obtain cross and auto correlation.
To your first question, imagine that you have a time sequence of N samples to fill your Nx1 matrix / vector. Now, assume that the first N/2 samples consist of 10 samples per cycle of sinkt and the last N/2 samples consist of 30 samples per cycle of sin(k/3)t. The first N/2 samples are at one frequency that is delayed perhaps not at all. The seond N/2 samples are at another frequency that is delayed by N/2 samples. Delay and phase are related as: phase is the integral of delay - so constant delay with frequency results in linear phase. Thus, a simple delay introduces phase. If you compute a Fourier Transform of temporal data, you will get amplitude and phase at each frequency that's output. The amplitude and phase are averaged over the temporal epoch of the input data - one way to look at it. Fred