Reply by maury October 4, 20112011-10-04
On Oct 3, 6:54&#2013266080;pm, "steveu" <steveu@n_o_s_p_a_m.coppice.org> wrote:
> >On Sep 30, 9:58=A0pm, "steveu" <steveu@n_o_s_p_a_m.coppice.org> wrote: > >> >On Sep 30, 5:35=3DA0am, "steveu" <steveu@n_o_s_p_a_m.coppice.org> > wrote: > > >> >> The > >> >> channel needs to be linear for a canceller to work really well. > > >> >Not true!! If you have a non-linear system and your model of that > >> >system is good, the echo canceller will work very well. Look up > >> >Hammerstein model, for example or Volterra kernels. > > >> Look up "Really great working Hammerstein model" or "Superb results > from > >> Volterra kernel". > > >> >> Distortion in the mics and speakers, or channel non-linearities such > a= > >s > >> G=3D > >> >.711 coding > >> >> on the PSTN, will limit the effectiveness of the echo cancellation. > > >> >a-law and mu-law limit the cancellation primarily becaue of the errors > >> >in coding, not non-linearities. > > >> You must be the first person I've heard call a-law and u-law linear > >> transforms. Linear to log, even pseudo log, is normally considered a > >> non-linear operation. > > >I said nothing about a-law or mu-law being linear! I said the > >cancellation limits in echo cancellers using a-law or-mulaw are > >primarily from the encoding. Even a linear system has cancellation > >limits when encoded. Do a linear-to-log transformation and then a log- > >to-linear inverse transformation WITHOUT coding, and the canceller > >will work very well. Get the model to actually reflect the unknown > >systyem, and the canceller will work very well. > > There is no real coding. There is fairly coarse *quantization* in the > psuedo-log domain. > > > > > > > > >> >> With a good linear channel you might get 60dB of echo reduction, > limit= > >ed > >> =3D > >> >mostly by > >> >> how well you fine tune the canceller. > > >> >The canceller is adaptive. What do you mean by *fine tuning*? > > >> Huh? Do you adapt in fairly large steps, to pull in quickly? Do you > adapt > >> in fine steps, to get really close to perfect? Do you switch adaption > rat= > >es > >> to pull in quickly, and finely tune later on? How finely do you > eventuall= > >y > >> approximate the perfect canceller? > > >> Steve > > >The change in the update gain can (and usually does) affect the speed > >of convergence and residule noise (called misalignment) from an > >adaptive filter. When the update gain is varied, as you have > >suggested, it is usually to achieve convergence speed at the beginning > >of the adaptive process, and then low residule noise after > >convergence. I know of some adaptive systems that monitor the residule > >and other factor to vary the gain if the impulse response changes. > >However, I don't know what YOU meant by *fine tuning* the cancaller. > >To me fine tuning means tuning very carefully to get right on the > >target. If the target is 10, and I estimate 10 +/- 5 or I estimate 10 > >+/- 1 or I estimate 10 +/- 0.001, I am still estimating the target to > >be 10. I am not *tuning* between 9 and 10 and 11. To me there is a > >difference between estimating something with a tolerance, and tuning > >something into the estimate. Thus the question, what do YOU mean by > >fine tuning? > > Because you can play games, like switched adaption rates, to balance > performance criteria such as convergence rate and final quality of > adaption, I think many people might describe this as tuning. I know when > designing cancellers I certainly think of this as tuning the design for > best balanced performance. > > Steve- Hide quoted text - > > - Show quoted text -- Hide quoted text - > > - Show quoted text -
Steve, I just needed to know what YOU meant by *tuning*. Remember, the connotation of words very often differs with different people. Your connotation of tuning and mine are not the same. I also think there is a difference between tuing the design, and tuning the filter. Now that I known what your connotation is, we can go from there. Yes, the adaptive filter may be designed to vary the update gain for specific performance parameters. The most basic example of this is the move from the LMS algorithm to the NLMS algorithm. The NLMS varies the update gain automatically, to compensate for input power level changes. Another design parameter may be the type of input signal: wideband, narrowband, noise, sinusoidal. Another, may be the susceptibility of the algorithm to noise, especially impulse noise, e.g. T. I Haweel and P. M. Clarkson, "Analysis and generalization of a median adaptive filter", Proc. IEEE ICASSP, pp. 1269 - 1272, 1990 M. Givens, P. M. Clarkson, "The application of the median LMS algorithm to ADPCM systems", Proc. IEEE ICASSP, pp. 3665 - 3668, 1991 There have been lots of attempts at gain varying to control some aspect of performance, however, I haven't seen the *holy grail* yet. Maurice Givens
Reply by steveu October 3, 20112011-10-03
>On Sep 30, 9:58=A0pm, "steveu" <steveu@n_o_s_p_a_m.coppice.org> wrote: >> >On Sep 30, 5:35=3DA0am, "steveu" <steveu@n_o_s_p_a_m.coppice.org>
wrote:
>> >> >> The >> >> channel needs to be linear for a canceller to work really well. >> >> >Not true!! If you have a non-linear system and your model of that >> >system is good, the echo canceller will work very well. Look up >> >Hammerstein model, for example or Volterra kernels. >> >> Look up "Really great working Hammerstein model" or "Superb results
from
>> Volterra kernel". >> >> >> >> >> Distortion in the mics and speakers, or channel non-linearities such
a=
>s >> G=3D >> >.711 coding >> >> on the PSTN, will limit the effectiveness of the echo cancellation. >> >> >a-law and mu-law limit the cancellation primarily becaue of the errors >> >in coding, not non-linearities. >> >> You must be the first person I've heard call a-law and u-law linear >> transforms. Linear to log, even pseudo log, is normally considered a >> non-linear operation. > > >I said nothing about a-law or mu-law being linear! I said the >cancellation limits in echo cancellers using a-law or-mulaw are >primarily from the encoding. Even a linear system has cancellation >limits when encoded. Do a linear-to-log transformation and then a log- >to-linear inverse transformation WITHOUT coding, and the canceller >will work very well. Get the model to actually reflect the unknown >systyem, and the canceller will work very well.
There is no real coding. There is fairly coarse *quantization* in the psuedo-log domain.
>> >> With a good linear channel you might get 60dB of echo reduction,
limit=
>ed >> =3D >> >mostly by >> >> how well you fine tune the canceller. >> >> >The canceller is adaptive. What do you mean by *fine tuning*? >> >> Huh? Do you adapt in fairly large steps, to pull in quickly? Do you
adapt
>> in fine steps, to get really close to perfect? Do you switch adaption
rat=
>es >> to pull in quickly, and finely tune later on? How finely do you
eventuall=
>y >> approximate the perfect canceller? >> >> Steve > >The change in the update gain can (and usually does) affect the speed >of convergence and residule noise (called misalignment) from an >adaptive filter. When the update gain is varied, as you have >suggested, it is usually to achieve convergence speed at the beginning >of the adaptive process, and then low residule noise after >convergence. I know of some adaptive systems that monitor the residule >and other factor to vary the gain if the impulse response changes. >However, I don't know what YOU meant by *fine tuning* the cancaller. >To me fine tuning means tuning very carefully to get right on the >target. If the target is 10, and I estimate 10 +/- 5 or I estimate 10 >+/- 1 or I estimate 10 +/- 0.001, I am still estimating the target to >be 10. I am not *tuning* between 9 and 10 and 11. To me there is a >difference between estimating something with a tolerance, and tuning >something into the estimate. Thus the question, what do YOU mean by >fine tuning?
Because you can play games, like switched adaption rates, to balance performance criteria such as convergence rate and final quality of adaption, I think many people might describe this as tuning. I know when designing cancellers I certainly think of this as tuning the design for best balanced performance. Steve
Reply by maury October 3, 20112011-10-03
> > There are limits to the accuracy imposed both by the channel and the > signal properties and by implementation of the filter. I say 60dB ERLE > without NLP would be an awesome result for a practical installation. > > VLV
Vlad, Just a thought. I have a problem with using ERLE as a measure of performance because ERLE depends on the return loss of the unknown system (let's call it a hybrid) when coding is used. And many times the return loss is not specified. If the limit of cancellation without NLP is 40 dB, then if the hybrid has 20 dB return loss, the canceller can get only 20 dB ERLE. If the hybrid has 5 dB return loss, then the same echo canceller can get 35 dB ERLE. And 35 dB ERLE sounds a lot better than 20 dB ERLE.
Reply by maury October 3, 20112011-10-03
On Sep 30, 9:58=A0pm, "steveu" <steveu@n_o_s_p_a_m.coppice.org> wrote:
> >On Sep 30, 5:35=3DA0am, "steveu" <steveu@n_o_s_p_a_m.coppice.org> wrote: > > >> The > >> channel needs to be linear for a canceller to work really well. > > >Not true!! If you have a non-linear system and your model of that > >system is good, the echo canceller will work very well. Look up > >Hammerstein model, for example or Volterra kernels. > > Look up "Really great working Hammerstein model" or "Superb results from > Volterra kernel". > > > > >> Distortion in the mics and speakers, or channel non-linearities such a=
s
> G=3D > >.711 coding > >> on the PSTN, will limit the effectiveness of the echo cancellation. > > >a-law and mu-law limit the cancellation primarily becaue of the errors > >in coding, not non-linearities. > > You must be the first person I've heard call a-law and u-law linear > transforms. Linear to log, even pseudo log, is normally considered a > non-linear operation.
I said nothing about a-law or mu-law being linear! I said the cancellation limits in echo cancellers using a-law or-mulaw are primarily from the encoding. Even a linear system has cancellation limits when encoded. Do a linear-to-log transformation and then a log- to-linear inverse transformation WITHOUT coding, and the canceller will work very well. Get the model to actually reflect the unknown systyem, and the canceller will work very well.
> > > > >> With a good linear channel you might get 60dB of echo reduction, limit=
ed
> =3D > >mostly by > >> how well you fine tune the canceller. > > >The canceller is adaptive. What do you mean by *fine tuning*? > > Huh? Do you adapt in fairly large steps, to pull in quickly? Do you adapt > in fine steps, to get really close to perfect? Do you switch adaption rat=
es
> to pull in quickly, and finely tune later on? How finely do you eventuall=
y
> approximate the perfect canceller? > > Steve
The change in the update gain can (and usually does) affect the speed of convergence and residule noise (called misalignment) from an adaptive filter. When the update gain is varied, as you have suggested, it is usually to achieve convergence speed at the beginning of the adaptive process, and then low residule noise after convergence. I know of some adaptive systems that monitor the residule and other factor to vary the gain if the impulse response changes. However, I don't know what YOU meant by *fine tuning* the cancaller. To me fine tuning means tuning very carefully to get right on the target. If the target is 10, and I estimate 10 +/- 5 or I estimate 10 +/- 1 or I estimate 10 +/- 0.001, I am still estimating the target to be 10. I am not *tuning* between 9 and 10 and 11. To me there is a difference between estimating something with a tolerance, and tuning something into the estimate. Thus the question, what do YOU mean by fine tuning? Maurice
Reply by steveu September 30, 20112011-09-30
>On Sep 30, 5:35=A0am, "steveu" <steveu@n_o_s_p_a_m.coppice.org> wrote: >> >> The >> channel needs to be linear for a canceller to work really well. > > >Not true!! If you have a non-linear system and your model of that >system is good, the echo canceller will work very well. Look up >Hammerstein model, for example or Volterra kernels.
Look up "Really great working Hammerstein model" or "Superb results from Volterra kernel".
>> Distortion in the mics and speakers, or channel non-linearities such as
G=
>.711 coding >> on the PSTN, will limit the effectiveness of the echo cancellation. > >a-law and mu-law limit the cancellation primarily becaue of the errors >in coding, not non-linearities.
You must be the first person I've heard call a-law and u-law linear transforms. Linear to log, even pseudo log, is normally considered a non-linear operation.
>> With a good linear channel you might get 60dB of echo reduction, limited
=
>mostly by >> how well you fine tune the canceller. > >The canceller is adaptive. What do you mean by *fine tuning*?
Huh? Do you adapt in fairly large steps, to pull in quickly? Do you adapt in fine steps, to get really close to perfect? Do you switch adaption rates to pull in quickly, and finely tune later on? How finely do you eventually approximate the perfect canceller? Steve
Reply by Vladimir Vassilevsky September 30, 20112011-09-30

maury wrote:

> On Sep 30, 5:35 am, "steveu" <steveu@n_o_s_p_a_m.coppice.org> wrote: > >>The channel needs to be linear for a canceller to work really well.
> Not true!! If you have a non-linear system and your model of that > system is good, the echo canceller will work very well. Look up > Hammerstein model, for example or Volterra kernels.
Nonlinear models for EC were discussed for a long while. I don't know of any *practical* result out of it.
>>Distortion in the mics and speakers, or channel non-linearities such as G..711 coding >>on the PSTN, will limit the effectiveness of the echo cancellation. > > a-law and mu-law limit the cancellation primarily becaue of the errors > in coding, not non-linearities. > >>With a good linear channel you might get 60dB of echo reduction, limited mostly by >>how well you fine tune the canceller. > > The canceller is adaptive. What do you mean by *fine tuning*?
There are limits to the accuracy imposed both by the channel and the signal properties and by implementation of the filter. I say 60dB ERLE without NLP would be an awesome result for a practical installation. VLV
Reply by maury September 30, 20112011-09-30
On Sep 30, 5:35&#2013266080;am, "steveu" <steveu@n_o_s_p_a_m.coppice.org> wrote:
> > The > channel needs to be linear for a canceller to work really well.
Not true!! If you have a non-linear system and your model of that system is good, the echo canceller will work very well. Look up Hammerstein model, for example or Volterra kernels.
> Distortion in the mics and speakers, or channel non-linearities such as G.711 coding > on the PSTN, will limit the effectiveness of the echo cancellation.
a-law and mu-law limit the cancellation primarily becaue of the errors in coding, not non-linearities.
> With a good linear channel you might get 60dB of echo reduction, limited mostly by > how well you fine tune the canceller.
The canceller is adaptive. What do you mean by *fine tuning*?
> Steve
Maurice Givens
Reply by steveu September 30, 20112011-09-30
>I had a discussion with a collague about echo cancellation. > >He claims that an echo canceller during double-talk is able to >completely remove the far-end speech component in the microphone >signal even if the far-end speech component occupies the same >frequency as the near-end speech (assuming that the echo canceller has >converged and that it doesn't adapt during double-talk) . > >I claim that - at best - the echo canceller will modify the phase and >amplitude of those frequencies to minimize the echo component and that >this process in some cases will be audible; that it will sound like >the near-end speakers speech is smeared. > >Who is right?
An echo canceller is an adaptive filter. It is very difficult to make such a filter converge during double talk. Let's say you give it an opportunity to fully converge on some single talk. After that it will be able to remove echo just as effectively during double talk as during single talk. The channel needs to be linear for a canceller to work really well. Distortion in the mics and speakers, or channel non-linearities such as G.711 coding on the PSTN, will limit the effectiveness of the echo cancellation. With a good linear channel you might get 60dB of echo reduction, limited mostly by how well you fine tune the canceller. Over the PSTN you might get 30dB, limited mostly by G.711 distortion. Steve
Reply by maury September 29, 20112011-09-29
On Sep 28, 9:14&#2013266080;pm, John McDermick <johnthedsp...@gmail.com> wrote:
> I had a discussion with a collague about echo cancellation. > > He claims that an echo canceller during double-talk is able to > completely remove the far-end speech component in the microphone > signal even if the far-end speech component occupies the same > frequency as the near-end speech (assuming that the echo canceller has > converged and that it doesn't adapt during double-talk) . > > I claim that - at best - the echo canceller will modify the phase and > amplitude of those frequencies to minimize the echo component and that > this process in some cases will be audible; that it will sound like > the near-end speakers speech is smeared. > > Who is right?
I say that, within the limits of the encoding errors, an echo canceller during double-talk is able to remove the far-end speech component in the microphone signal even if the far-end speech component occupies the same frequency as the near-end speech (assuming that the echo canceller has converged and that it doesn't adapt during double-talk) . Maurice Givens
Reply by John McDermick September 28, 20112011-09-28
I had a discussion with a collague about echo cancellation.

He claims that an echo canceller during double-talk is able to
completely remove the far-end speech component in the microphone
signal even if the far-end speech component occupies the same
frequency as the near-end speech (assuming that the echo canceller has
converged and that it doesn't adapt during double-talk) .

I claim that - at best - the echo canceller will modify the phase and
amplitude of those frequencies to minimize the echo component and that
this process in some cases will be audible; that it will sound like
the near-end speakers speech is smeared.

Who is right?