Continue to Site

# How to do cross correlation in Matlab?

Status
Not open for further replies.

#### applejuice

##### Newbie level 2
hi guy,
i have 2 channels of signals(multi frequencies, with time and voltage recorded) from 2 microphones at different locations, I would like to find out the magnitude ratio and phase different between the 2 signals. can anyone tell me the procedures for getting these? I know I need to do the fft and cross correlation, but I just don't know what exactly I need to type into Matlab. Thank you.

Re: cross correlation

Concerning the phase shift between 2 signals, I'm not sure, in fact, that it may be evaluated automatically without any preliminary specified information. Moreover, both signals must be sinusoidal and have the same period. Then their phasze shift delta_phi may be estimated the following way:

delta_phi = [(delta_t)/T] * 360 degrees,

where (delta_t) - time shift between 2 signals (distance on time-axis between the 1st maximas or minimas of these 2 signals), T - period.

This way is one of the easiest ones. There are more complicated, of course, (Lissagu figures, digital techniques, etc.) but I suppose You'll be satisfied by the one given now.

With respect,

Dmitrij

cross correlation

Thanks for asking my question Dmitrij, but actually I need more than that. I am working on the Two microphones method for an acoustic impedance tube, I need to find out the transfer function between the two microphones. The signals are actually mixed pure tones, (ie 125Hz + 250Hz + 500Hz + 1kHz = 2kHz), I want to separate them and compare their amplitudes and phases for each of the frequency, and then use these information for calculating the acoustic absorption coefficient.

Regards,

Bill

Status
Not open for further replies.