Reply by RUMMY March 2, 20052005-03-02
>"RUMMY" <rpj616@yahoo.com> wrote in message >news:Oo6dnSGc15V7vYPfRVn-vg@giganews.com... >> >"RUMMY" <rpj616@yahoo.com> wrote in message >> >news:TKOdneZu1YBnj4PfRVn-tA@giganews.com... >> >> we are simply trying to modify nlms algorithm to cancel nonlinear
echo
>> on >> >> top of linear echo. What we don't understand is how to create a
sound
>> file >> >> with nonlinear properties. I don't know if it makes a lot of
sense..
>> but we >> >> can't really design the filter unless we know how a nonlinear echo
in
>> >> equation form looks like or how to produce such a thing in matlab. >> Will >> >> simply delaying the original signal and adding it to the new signal >> >> qualify as a nonlinear echo? >> > >> >No, that is a linear echo. What TYPE of non-linearity do you want to >> >simulate/cancel? As I mentioned in a previous post, saying it is >> non-linear is >> >not specific enough. You are only saying what the signal is NOT,
rather
>> than >> >what it IS. Steve mentioned low-level distortion due companding as a >> non-linear >> >process. Others would be clipping/overload, frequency shift,
full-wave
>> >rectification, etc.. >> > >> We are trying to simulate it for handsfree telephone systems. What
types
>> of nonlinearities can you encounter in this situation and how to do
you
>> model them in matlab? Please help. Thanks. > >Great, that is very useful additional information. Steve Underwood's
earlier
>post had some info on this (low-level distortion from a-law and u-law >compression). An easy way to simulate that would be actually implement
the
>compression/expansion. Maybe there is an easy way to do that in Matlab?
More
>generally, you could apply an arbitrary transfer function to the audio.
Start
>with a perfect linear transfer function, then modify as you see fit. A
common
>distortion would be that the gain tends to be reduced at high levels
(overload
>distortion) and the output is limited to a maximum fixed value. > > >
how do i go about simulating that in matlab? i tried recording my voice. Then what? how do i add a nonlinear component to it so i can design my nlms to cancel the nonlinear portion of the input signal This message was sent using the Comp.DSP web interface on www.DSPRelated.com
Reply by Jon Harris February 24, 20052005-02-24
"RUMMY" <rpj616@yahoo.com> wrote in message
news:Oo6dnSGc15V7vYPfRVn-vg@giganews.com...
> >"RUMMY" <rpj616@yahoo.com> wrote in message > >news:TKOdneZu1YBnj4PfRVn-tA@giganews.com... > >> we are simply trying to modify nlms algorithm to cancel nonlinear echo > on > >> top of linear echo. What we don't understand is how to create a sound > file > >> with nonlinear properties. I don't know if it makes a lot of sense.. > but we > >> can't really design the filter unless we know how a nonlinear echo in > >> equation form looks like or how to produce such a thing in matlab. > Will > >> simply delaying the original signal and adding it to the new signal > >> qualify as a nonlinear echo? > > > >No, that is a linear echo. What TYPE of non-linearity do you want to > >simulate/cancel? As I mentioned in a previous post, saying it is > non-linear is > >not specific enough. You are only saying what the signal is NOT, rather > than > >what it IS. Steve mentioned low-level distortion due companding as a > non-linear > >process. Others would be clipping/overload, frequency shift, full-wave > >rectification, etc.. > > > We are trying to simulate it for handsfree telephone systems. What types > of nonlinearities can you encounter in this situation and how to do you > model them in matlab? Please help. Thanks.
Great, that is very useful additional information. Steve Underwood's earlier post had some info on this (low-level distortion from a-law and u-law compression). An easy way to simulate that would be actually implement the compression/expansion. Maybe there is an easy way to do that in Matlab? More generally, you could apply an arbitrary transfer function to the audio. Start with a perfect linear transfer function, then modify as you see fit. A common distortion would be that the gain tends to be reduced at high levels (overload distortion) and the output is limited to a maximum fixed value.
Reply by RUMMY February 24, 20052005-02-24
>"RUMMY" <rpj616@yahoo.com> wrote in message >news:TKOdneZu1YBnj4PfRVn-tA@giganews.com... >> we are simply trying to modify nlms algorithm to cancel nonlinear echo
on
>> top of linear echo. What we don't understand is how to create a sound
file
>> with nonlinear properties. I don't know if it makes a lot of sense..
but we
>> can't really design the filter unless we know how a nonlinear echo in >> equation form looks like or how to produce such a thing in matlab.
Will
>> simply delaying the original signal and adding it to the new signal >> qualify as a nonlinear echo? > >No, that is a linear echo. What TYPE of non-linearity do you want to >simulate/cancel? As I mentioned in a previous post, saying it is
non-linear is
>not specific enough. You are only saying what the signal is NOT, rather
than
>what it IS. Steve mentioned low-level distortion due companding as a
non-linear
>process. Others would be clipping/overload, frequency shift, full-wave >rectification, etc.. > > >
We are trying to simulate it for handsfree telephone systems. What types of nonlinearities can you encounter in this situation and how to do you model them in matlab? Please help. Thanks. This message was sent using the Comp.DSP web interface on www.DSPRelated.com
Reply by Jon Harris February 24, 20052005-02-24
"RUMMY" <rpj616@yahoo.com> wrote in message 
news:TKOdneZu1YBnj4PfRVn-tA@giganews.com...
> we are simply trying to modify nlms algorithm to cancel nonlinear echo on > top of linear echo. What we don't understand is how to create a sound file > with nonlinear properties. I don't know if it makes a lot of sense.. but we > can't really design the filter unless we know how a nonlinear echo in > equation form looks like or how to produce such a thing in matlab. Will > simply delaying the original signal and adding it to the new signal > qualify as a nonlinear echo?
No, that is a linear echo. What TYPE of non-linearity do you want to simulate/cancel? As I mentioned in a previous post, saying it is non-linear is not specific enough. You are only saying what the signal is NOT, rather than what it IS. Steve mentioned low-level distortion due companding as a non-linear process. Others would be clipping/overload, frequency shift, full-wave rectification, etc..
Reply by RUMMY February 24, 20052005-02-24
we are simply trying to modify nlms algorithm to cancel nonlinear echo on
top of linear echo. What we don't understand is how to create a sound file
with nonlinear properties. I don't know if it makes a lot of sense.. but we
can't really design the filter unless we know how a nonlinear echo in
equation form looks like or how to produce such a thing in matlab. Will
simply delaying the original signal and adding it to the new signal
qualify as a nonlinear echo? 
		
This message was sent using the Comp.DSP web interface on
www.DSPRelated.com
Reply by Steve Underwood February 23, 20052005-02-23
RUMMY wrote:

>>"RUMMY" <rpj616@yahoo.com> wrote in message >>news:LJKdnYd4rY03NoHfRVn-3g@giganews.com... >> >> >>>>I'm curious, what kind of system are you working with that has >>>>non-linear echoes? >>>> >>>>Mark >>>> >>>> >>>> >>>> >>>I'm trying to cancel nonlinear echo for as a school project. The >>> >>> >objective > > >>>is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the >>> >>> >whole > > >>>simulation requires to have a nonlinear echo as well as a matlab code >>> >>> >to > > >>>eliminate it. >>> >>> >>Considering that LMS/NLMS are linear algorithms, it would seem difficult >> >> >to > > >>cancel a non-linear echo with them! Also, what kind of non-linear echo >> >> >are you > > >>trying to deal with? Talking about non-linear echo is kind of like >> >> >talking > > >>about non-dog animals--there is a huge variety and you don't know much >> >> >about > > >>what it is, only what it isn't. A simple practical type of non-linear >> >> >echo > > >>would be a sound system with clipping distortion. But until you define >> >> >what > > >>type of non-linearity you want to deal with, it is difficult to recommend >> >> >a way > > >>to simulate it. >> >> >> >> >> > >Well, that is a confusion I have as well. I was simply told to modify the >LMS/NLMS algorithm so that it also accounts for the nonlinear portion. The >overall goal is to simulate the acoustic echo canceller that would use >this. Also, no LMS/NLMS algorithm is supplied. The built-in Matlab may not >be used. > >This message was sent using the Comp.DSP web interface on >www.DSPRelated.com > >
Could it be the person who set the problem is simply looking for a canceller which simply behaves well under all conditions? For example, a typical telephony canceller needs to deal with various non-linearities in a sensible way. A-law and u-law distortion introduce a low level of non-linearity, which cancellers need to deal with. That doesn't generally screw them up. It just limits them to about 30dB of echo suppression. That may require special action, though. Typically a non-linear suppression process is used to eliminate residual echo when the far end is silent. If the signal clips, that is much nastier. Cancellers usually need to detect such things, and prevent the adaption process going wild. Typically they just freeze the filter's adaption process during periods of overload, and for long enough after the event that any distorted signals have flushed from the echo path. Telephony cancellers have plenty of problems with entirely linear things too, such as unexpected narrow band energy misleading the adaption process. :-) Regards, Steve
Reply by RUMMY February 23, 20052005-02-23
>"RUMMY" <rpj616@yahoo.com> wrote in message >news:LJKdnYd4rY03NoHfRVn-3g@giganews.com... >> > >>>I'm curious, what kind of system are you working with that has >>>non-linear echoes? >>> >>>Mark >>> >>> >> >> I'm trying to cancel nonlinear echo for as a school project. The
objective
>> is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the
whole
>> simulation requires to have a nonlinear echo as well as a matlab code
to
>> eliminate it. > >Considering that LMS/NLMS are linear algorithms, it would seem difficult
to
>cancel a non-linear echo with them! Also, what kind of non-linear echo
are you
>trying to deal with? Talking about non-linear echo is kind of like
talking
>about non-dog animals--there is a huge variety and you don't know much
about
>what it is, only what it isn't. A simple practical type of non-linear
echo
>would be a sound system with clipping distortion. But until you define
what
>type of non-linearity you want to deal with, it is difficult to recommend
a way
>to simulate it. > > >
Well, that is a confusion I have as well. I was simply told to modify the LMS/NLMS algorithm so that it also accounts for the nonlinear portion. The overall goal is to simulate the acoustic echo canceller that would use this. Also, no LMS/NLMS algorithm is supplied. The built-in Matlab may not be used. This message was sent using the Comp.DSP web interface on www.DSPRelated.com
Reply by RUMMY February 23, 20052005-02-23
>"RUMMY" <rpj616@yahoo.com> wrote in message >news:LJKdnYd4rY03NoHfRVn-3g@giganews.com... >> > >>>I'm curious, what kind of system are you working with that has >>>non-linear echoes? >>> >>>Mark >>> >>> >> >> I'm trying to cancel nonlinear echo for as a school project. The
objective
>> is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the
whole
>> simulation requires to have a nonlinear echo as well as a matlab code
to
>> eliminate it. > >Considering that LMS/NLMS are linear algorithms, it would seem difficult
to
>cancel a non-linear echo with them! Also, what kind of non-linear echo
are you
>trying to deal with? Talking about non-linear echo is kind of like
talking
>about non-dog animals--there is a huge variety and you don't know much
about
>what it is, only what it isn't. A simple practical type of non-linear
echo
>would be a sound system with clipping distortion. But until you define
what
>type of non-linearity you want to deal with, it is difficult to recommend
a way
>to simulate it. > > >
Well, that is a confusion I have as well. I was simply told to modify the LMS/NLMS algorithm so that it also accounts for the nonlinear portion. The overall goal is to simulate the acoustic echo canceller that would use this. Also, no LMS/NLMS algorithm is supplied. The built-in Matlab may not be used. This message was sent using the Comp.DSP web interface on www.DSPRelated.com
Reply by Jon Harris February 23, 20052005-02-23
"RUMMY" <rpj616@yahoo.com> wrote in message 
news:LJKdnYd4rY03NoHfRVn-3g@giganews.com...
> > >>I'm curious, what kind of system are you working with that has >>non-linear echoes? >> >>Mark >> >> > > I'm trying to cancel nonlinear echo for as a school project. The objective > is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the whole > simulation requires to have a nonlinear echo as well as a matlab code to > eliminate it.
Considering that LMS/NLMS are linear algorithms, it would seem difficult to cancel a non-linear echo with them! Also, what kind of non-linear echo are you trying to deal with? Talking about non-linear echo is kind of like talking about non-dog animals--there is a huge variety and you don't know much about what it is, only what it isn't. A simple practical type of non-linear echo would be a sound system with clipping distortion. But until you define what type of non-linearity you want to deal with, it is difficult to recommend a way to simulate it.
Reply by RUMMY February 23, 20052005-02-23
> >I'm curious, what kind of system are you working with that has >non-linear echoes? > >Mark > >
I'm trying to cancel nonlinear echo for as a school project. The objective is to use NLMS and LMS algorithm to eliminate nonlinear echo. So the whole simulation requires to have a nonlinear echo as well as a matlab code to eliminate it. This message was sent using the Comp.DSP web interface on www.DSPRelated.com