Forums

Echo parameter estimation using autocorrelation

Started by Unknown March 28, 2008
Hello,
We know that the autocorrelation of ana echoed signal contains peaks
at points points 0,N and -N (which N is the delay of echo) and this
fact can be used to estimate delay parameter of the echo and then
remove that . These peaks cab be easily detected by human eye. But how
do we find them automatically (using matlab code for example). There
are may local optimums in a typical correlation sequence of a wave
file. How do we know which of them is the echo-made peak? We don't
have the original signal, Only the echoed one.
Would anybody help me?
Thanks.

>Hello, >We know that the autocorrelation of ana echoed signal contains peaks >at points points 0,N and -N (which N is the delay of echo) and this >fact can be used to estimate delay parameter of the echo and then >remove that . These peaks cab be easily detected by human eye. But how >do we find them automatically (using matlab code for example). There >are may local optimums in a typical correlation sequence of a wave >file. How do we know which of them is the echo-made peak? We don't >have the original signal, Only the echoed one. >Would anybody help me? >Thanks. >
********************************** Hello, the echoed signal is just a delayed version of the transmitted signal with also some spectral changes. Why should the autocorrelation of the echoed signal have a peak at N time lag? Instead, the cross-correlation between the initial signal and the echoed signal would definitely have a peak at time lag N. Manolis
Hello,
The echoed signal (The signal which has undergone echo) is not a
delayed version of the transmitted signal and its autocorrelation
(Matlab's xcorr function) indeed has peaks at N, 0, and -N. UCLA dsp
lab ( http://www.ee.ucla.edu/~dsplab/aec/ ) and some other sites also
confirm this.
Thanks.

Manolis C. Tsakiris wrote:
> >Hello, > >We know that the autocorrelation of ana echoed signal contains peaks > >at points points 0,N and -N (which N is the delay of echo) and this > >fact can be used to estimate delay parameter of the echo and then > >remove that . These peaks cab be easily detected by human eye. But how > >do we find them automatically (using matlab code for example). There > >are may local optimums in a typical correlation sequence of a wave > >file. How do we know which of them is the echo-made peak? We don't > >have the original signal, Only the echoed one. > >Would anybody help me? > >Thanks. > > > ********************************** > Hello, > > the echoed signal is just a delayed version of the transmitted signal with > also some spectral changes. Why should the autocorrelation of the echoed > signal have a peak at N time lag? Instead, the cross-correlation between > the initial signal and the echoed signal would definitely have a peak at > time lag N. > > Manolis
ok, i read the text at UCLA. By echoed signal it is meant the original
signal plus it's echo. One way to detect these peaks at N and -N is the
following:

observe that the peak at time lag N is a global maximum of positive time
lag (for positive arguments of the autocorrelation sequence). So by using
the max function of MATLAB for the right half of the autocorrelation
sequence you will find the index N.

same for -N.

Manolis
Alireza wrote:
> Hello, > The echoed signal (The signal which has undergone echo) is not a > delayed version of the transmitted signal and its autocorrelation > (Matlab's xcorr function) indeed has peaks at N, 0, and -N. UCLA dsp > lab ( http://www.ee.ucla.edu/~dsplab/aec/ ) and some other sites also > confirm this. > Thanks.
The web site is using the wrong term. It is headed "auto-correlation", and then immediately starts talking about cross-correlating the transmit and receive sequences. You do realise what auto-correlation is, don't you? Its correlating a sequence with a delayed version of itself. It would be a very strange echo which was not a delayed version of the original, with a bit or frequency filtering, and maybe some dispersion. In fact, I guess that would be the very definition of the word echo. Regards, Steve
oOn Mar 30, 7:02&#2013266080;am, Steve Underwood <ste...@dis.org> wrote:
> Alireza wrote: > > Hello, > > The echoed signal (The signal which has undergone echo) is not a > > delayed version of the transmitted signal and its autocorrelation > > (Matlab's xcorr function) indeed has peaks at N, 0, and -N. UCLA dsp > > lab (http://www.ee.ucla.edu/~dsplab/aec/) and some other sites also > > confirm this. > > Thanks. > > The web site is using the wrong term. It is headed "auto-correlation", > and then immediately starts talking about cross-correlating the transmit > and receive sequences. You do realise what auto-correlation is, don't > you? Its correlating a sequence with a delayed version of itself. > > It would be a very strange echo which was not a delayed version of the > original, with a bit or frequency filtering, and maybe some dispersion. > In fact, I guess that would be the very definition of the word echo. > > Regards, > Steve
Hello, I applied echo to a wave file and then tried to find delay using correlation. But it found a point other than real delay which I had already applied. Is this result of another echo in original signal (Other than what I had applied)? Thanks