Patent ID: 6738480
Filing Date: 2004-05-18
Classification: H04M,H04R

Abstract:
A method of cancelling stereophonic echo, wherein first and second input signals are applied to an echo generator system and an observation signal is picked up at an output of said system, the input signals being digitally sampled and processed in successive blocks of 2N samples with frequency domain transformation according to a set of 2N frequencies, wherein the processing of a block of 2N samples comprises the steps of:transforming the first input signal from the time domain to the frequency domain to obtain a vector X1 having 2N complex components relating to the set of 2N frequencies, including spectral components of the first input signal relating to a sub-set of the set of 2N frequencies; transforming the second input signal from the time domain to the frequency domain to obtain a vector X2 having 2N complex components relating to the set of 2N frequencies, including spectral components of the second input signal relating to said sub-set of frequencies; multiplying term by term the vector X1 by a vector H1 of 2N complex coefficients to produce first estimated spectral echo components relating to the frequencies of the sub-set, multiplying term by term the vector X2 by a vector H2 of 2N complex coefficients to produce second estimated spectral echo components relating to the frequencies of the sub-set; adding the first and second estimated spectral echo components relating to each frequency of the sub-set to obtain a spectral component belonging to a vector of 2N estimated spectral total echo components; transforming the vector of 2N estimated spectral total echo components from the frequency domain to the time domain to obtain an estimated total echo; subtracting the estimated total echo from the observation signal to produce an error signal; transforming the error signal from the time domain to the frequency domain to obtain a vector E of 2N spectral components of the error signal relating to the set of 2N frequencies; and updating the vectors H1 and H2 for the processing of the next block, on the basis of the vectors X1, X2 and E, the method further comprising the step of computing a spectral energy P11(f) of the first input signal, a spectral energy P22(f) of the second input signal, an inter-spectral energy P12(f) of the first and second input signals and a coherence value &Ggr;(f) for each of the frequencies f in the set of 2N frequencies, wherein the updating of the vector H1 for the processing the next block is performed on the basis of a modified gradient in the form (A11{circle around (X)}X*1+A12{circle around (X)}X*2){circle around (X)}E, where {circle around (X)} denotes the product of two vectors term by term, (*) denotes complex conjugation, A11 denotes a vector of size 2N whose component relating to a frequency f is 1P11&it;â€ƒ&it;(f)&CenterDot;(1-G&it;â€ƒ&it;(f)),and A12 denotes a vector of size 2N whose component relating to a frequency f is -G&it;â€ƒ&it;(f)P12&it;â€ƒ&it;(f)&CenterDot;(1-G&it;â€ƒ&it;(f)),G(f) being an increasing real function of the coherence value &Ggr;(f) such that 0H2 for the processing the next block is performed on the basis of a modified gradient in the form (A22{circle around (X)}X*2+A12{circle around (X)}X*1){circle around (X)}E, where A22 denotes a vector of size 2N whose component relating to a frequency f is 1P22&it;â€ƒ&it;(f)&CenterDot;(1-G&it;â€ƒ&it;(f)).