DSPRelated.com
Forums

echo cancellation by solving linear equations

Started by pal.debabrata123 December 8, 2008
Ok , assume echo tail length is less that or equal to 64 sample.

Is it possible to get coefficient of the adaptive filter by solving 64
linear equation? Input is known, output is known , only unknon is
coefficient?

Has anybody tried this ? Is it too inefficient? 

pal.debabrata123 wrote:

> Ok , assume echo tail length is less that or equal to 64 sample.
Why only 64 samples?
> Is it possible to get coefficient of the adaptive filter by solving 64 > linear equation? Input is known, output is known , only unknon is > coefficient?
It is certainly possible.
> Has anybody tried this ?
Kalman and Wiener tried this.
> Is it too inefficient?
It works very well. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
On Dec 9, 12:20&#4294967295;am, Vladimir Vassilevsky <antispam_bo...@hotmail.com>
wrote:
> pal.debabrata123 wrote: > > Ok , assume echo tail length is less that or equal to 64 sample. > > Why only 64 samples?
To make sure it doesn't work too well? :-\
> > Is it possible to get coefficient of the adaptive filter by solving 64 > > linear equation? Input is known, output is known , only unknon is > > coefficient? > > It is certainly possible. > > > Has anybody tried this ? > > Kalman and Wiener tried this.
I don't think Kalman's work has featured too much in echo cancellation, but Wiener's certainly does.
> > > Is it too inefficient? > > It works very well.
A solution is only really inefficient if you have a simpler alternative. Various forms of NLMS, PNLMS, FAP are used today, but they all have their roots in Weiner's work. Nothing fundamentally better has come along. They take a lot of compute, so some brilliant new solution would be most welcome. Don't hold your breath, though. Regards, Steve
On Dec 8, 9:46&#4294967295;am, "pal.debabrata123" <pal.debabrata...@gmail.com>
wrote:
> Ok , assume echo tail length is less that or equal to 64 sample. > > Is it possible to get coefficient of the adaptive filter by solving 64 > linear equation? Input is known, output is known , only unknon is > coefficient? > > Has anybody tried this ? Is it too inefficient?
Most echo cancellers use some form of the LMS algorithm. And, for stability with varying input levels, the NLMS is by far the algorithm of choice. Look at what the LMS is trying to do. It is trying to construct the Wiener filter R^-1(x,x)r(x,d). R is the autocorrelation matrix of the input, and r is the cross corrleation of the input and desired. So, yes, 64 equations are solved to give a 64-dimensional vector. HOWEVER, at what price? Are you going to have an accurate estimate of the corellations? What happens if the autocorrelation matrix is not a "nice" matrix? What happens if you can't find an inverse? Yes, you can do it, but is it worth it? General question for the group. Let the unknown system be an unstable system. Can the LMS algorithm still estimate the coefficients of the impulse response? Maurice Givens
On Dec 8, 10:46&#4294967295;am, "pal.debabrata123" <pal.debabrata...@gmail.com>
wrote:
> Ok , assume echo tail length is less that or equal to 64 sample. > > Is it possible to get coefficient of the adaptive filter by solving 64 > linear equation? Input is known, output is known , only unknon is > coefficient? > > Has anybody tried this ? Is it too inefficient?
This can work but there is a potential pitfall. If your data has a phase ambiguity between the signal's sample clock and its modulation, then the matrix method (formed by setting up a system of the linear equations) will be "too exact" in that it tries to correct the phase issues as well. So if the solution resulting from the matrix method is applied to another block of data with a difference phase offset, the results probably won't be good. I've seen in this case where the matrix solution introduces high frequency artifacts into the "corrected" signal. On the other hand a block of data that has a reference signal in part of it, then the matrix solution can work wonderfully well for the rest of the data block providied the sample clock has a high temporal coherence. An LMS approach with reasonably slow adaptation can average out the phase issues for nonphase locked situations. Clay

maury wrote:


> General question for the group. Let the unknown system be an unstable > system. Can the LMS algorithm still estimate the coefficients of the > impulse response?
Yes. As long as the system diverges slower then the LMS converges. The LMS can catch up even if the echo canceller came into the oscillation. Vladimir Vassilevsky DSP and Mixed Signal Design Consultant http://www.abvolt.com
>Ok , assume echo tail length is less that or equal to 64 sample. > >Is it possible to get coefficient of the adaptive filter by solving 64 >linear equation? Input is known, output is known , only unknon is >coefficient? > >Has anybody tried this ? Is it too inefficient? >
I think that it's depend on the length of your input signal,if it's enougth to converge you can get your filter coef. If you are not in a pratical way, you just need the filter coefs, you can you use the Wiener filter.
On Dec 8, 6:39&#4294967295;pm, ste...@coppice.org wrote:
> On Dec 9, 12:20&#4294967295;am, Vladimir Vassilevsky <antispam_bo...@hotmail.com> > wrote: > > > pal.debabrata123 wrote: > > > Ok , assume echo tail length is less that or equal to 64 sample. > > > Why only 64 samples? > > To make sure it doesn't work too well? :-\ > > > > Is it possible to get coefficient of the adaptive filter by solving 64 > > > linear equation? Input is known, output is known , only unknon is > > > coefficient? > > > It is certainly possible. > > > > Has anybody tried this ? > > > Kalman and Wiener tried this. > > I don't think Kalman's work has featured too much in echo > cancellation, but Wiener's certainly does. > > > > > > Is it too inefficient? > > > It works very well. > > A solution is only really inefficient if you have a simpler > alternative. Various forms of NLMS, PNLMS, FAP are used today, but > they all have their roots in Weiner's work. Nothing fundamentally > better has come along.They take a lot of compute, so some brilliant > new solution would be most welcome. Don't hold your breath, though.
Actually, there is something new and it is working really well (and it is less complex than adaptive filtering) : http://lcavwww.epfl.ch/~cfaller/mypapers/faller03_AES114_PEC.pdf Olivier Hochreutiner DSP/Embedded Software Engineer
On Dec 9, 2:54&#4294967295;am, Lloydchristmas <olivier.hochreuti...@gmail.com>
wrote:
> On Dec 8, 6:39&#4294967295;pm, ste...@coppice.org wrote: > > > > > > > On Dec 9, 12:20&#4294967295;am, Vladimir Vassilevsky <antispam_bo...@hotmail.com> > > wrote: > > > > pal.debabrata123 wrote: > > > > Ok , assume echo tail length is less that or equal to 64 sample. > > > > Why only 64 samples? > > > To make sure it doesn't work too well? :-\ > > > > > Is it possible to get coefficient of the adaptive filter by solving 64 > > > > linear equation? Input is known, output is known , only unknon is > > > > coefficient? > > > > It is certainly possible. > > > > > Has anybody tried this ? > > > > Kalman and Wiener tried this. > > > I don't think Kalman's work has featured too much in echo > > cancellation, but Wiener's certainly does. > > > > > Is it too inefficient? > > > > It works very well. > > > A solution is only really inefficient if you have a simpler > > alternative. Various forms of NLMS, PNLMS, FAP are used today, but > > they all have their roots in Weiner's work. Nothing fundamentally > > better has come along.They take a lot of compute, so some brilliant > > new solution would be most welcome. Don't hold your breath, though. > > Actually, there is something new and it is working really well (and it > is less complex than adaptive filtering) :http://lcavwww.epfl.ch/~cfaller/mypapers/faller03_AES114_PEC.pdf > > Olivier Hochreutiner > DSP/Embedded Software Engineer- Hide quoted text - > > - Show quoted text -
Oliver, I suggest you look at Faller's paper a little more closely. He is using NLMS. What he is describing is a sub-band NLMS algorithm. This was originally described by Widrow in the 1960's. Several techniques have been used to decompose the input signal, including FFT DCT, wavelats, FSF, etc. It has been called by different names such as sub- band decomposition, sub-band LMS, and frequency-domain LMS to name a few. Maurice Givens
On Dec 8, 12:39&#4294967295;pm, ste...@coppice.org wrote:
> On Dec 9, 12:20&#4294967295;am, Vladimir Vassilevsky <antispam_bo...@hotmail.com> > wrote: > > > pal.debabrata123 wrote: > > > Ok , assume echo tail length is less that or equal to 64 sample. > > > Why only 64 samples? > > To make sure it doesn't work too well? :-\ > > > > Is it possible to get coefficient of the adaptive filter by solving 64 > > > linear equation? Input is known, output is known , only unknon is > > > coefficient? > > > It is certainly possible. > > > > Has anybody tried this ? > > > Kalman and Wiener tried this. > > I don't think Kalman's work has featured too much in echo > cancellation, but Wiener's certainly does. > > > > > > Is it too inefficient? > > > It works very well. > > A solution is only really inefficient if you have a simpler > alternative. Various forms of NLMS, PNLMS, FAP are used today, but > they all have their roots in Weiner's work. Nothing fundamentally > better has come along. They take a lot of compute, so some brilliant > new solution would be most welcome. Don't hold your breath, though. > > Regards, > Steve
Solution to the Normal equations. http://www.elec.york.ac.uk/comms/pdfs/20060427123418.pdf CW