DSPRelated.com
Forums

RLS and LPC comparison

Started by kartikaye August 5, 2008
Hi All,

I have implemented a 10th order Recursive Least Squares filter on
Matlab for speech and am comparing the weights thus obtained with the
weights using the LPC function. 

Then I am comparing the speech quality using PESQ MOS values for
various speech files.

I run my RLS for lambda=1 (forgetting factor)
and delta=.02 (regularization factor), which gives the best performance. 
Also, I am not using any windowing in the code

my questions are - 

1) I get PESQ MOS values like 4.47 and 4.45 for the estimated signal
using LPC. Are these values too high ?? Is there a limitation of PESQ
MOS in this case that I should be aware of?

2) For a particular speech file, the RLS weights and the LPC weights
match upto 3 decimal places, but the PESQ MOS value for LPC is 4.47
and that for RLS is 4.07. How come there is such a huge difference
between the two if the weights match almost perfectly? 

It would be great if someone can help me with this. 

thanks,
kartik


On Aug 6, 6:13 am, "kartikaye" <kartikay...@yahoo.com> wrote:
> Hi All, > > I have implemented a 10th order Recursive Least Squares filter on > Matlab for speech and am comparing the weights thus obtained with the > weights using the LPC function. > > Then I am comparing the speech quality using PESQ MOS values for > various speech files. > > I run my RLS for lambda=1 (forgetting factor) > and delta=.02 (regularization factor), which gives the best performance. > Also, I am not using any windowing in the code > > my questions are - > > 1) I get PESQ MOS values like 4.47 and 4.45 for the estimated signal > using LPC. Are these values too high ?? Is there a limitation of PESQ > MOS in this case that I should be aware of? > > 2) For a particular speech file, the RLS weights and the LPC weights > match upto 3 decimal places, but the PESQ MOS value for LPC is 4.47 > and that for RLS is 4.07. How come there is such a huge difference > between the two if the weights match almost perfectly? > > It would be great if someone can help me with this. > > thanks, > kartik
I dont know much about RLS but i have some questions. What is the window size that you are using for LPC. Difference between 4.07 and 4.47 is not huge.
On Aug 6, 8:52 am, rajesh <getrajes...@gmail.com> wrote:
> On Aug 6, 6:13 am, "kartikaye" <kartikay...@yahoo.com> wrote: > > > > > Hi All, > > > I have implemented a 10th order Recursive Least Squares filter on > > Matlab for speech and am comparing the weights thus obtained with the > > weights using the LPC function. > > > Then I am comparing the speech quality using PESQ MOS values for > > various speech files. > > > I run my RLS for lambda=1 (forgetting factor) > > and delta=.02 (regularization factor), which gives the best performance. > > Also, I am not using any windowing in the code > > > my questions are - > > > 1) I get PESQ MOS values like 4.47 and 4.45 for the estimated signal > > using LPC. Are these values too high ?? Is there a limitation of PESQ > > MOS in this case that I should be aware of? > > > 2) For a particular speech file, the RLS weights and the LPC weights > > match upto 3 decimal places, but the PESQ MOS value for LPC is 4.47 > > and that for RLS is 4.07. How come there is such a huge difference > > between the two if the weights match almost perfectly? > > > It would be great if someone can help me with this. > > > thanks, > > kartik > > I dont know much about RLS but i have some questions. > What is the window size that you are using for LPC. > > Difference between 4.07 and 4.47 is not huge.
Also what is the order of the LPC and the sampling rate of the speech.
>On Aug 6, 8:52 am, rajesh <getrajes...@gmail.com> wrote: >> On Aug 6, 6:13 am, "kartikaye" <kartikay...@yahoo.com> wrote: >> >> >> >> > Hi All, >> >> > I have implemented a 10th order Recursive Least Squares filter on >> > Matlab for speech and am comparing the weights thus obtained with
the
>> > weights using the LPC function. >> >> > Then I am comparing the speech quality using PESQ MOS values for >> > various speech files. >> >> > I run my RLS for lambda=1 (forgetting factor) >> > and delta=.02 (regularization factor), which gives the best
performance.
>> > Also, I am not using any windowing in the code >> >> > my questions are - >> >> > 1) I get PESQ MOS values like 4.47 and 4.45 for the estimated signal >> > using LPC. Are these values too high ?? Is there a limitation of
PESQ
>> > MOS in this case that I should be aware of? >> >> > 2) For a particular speech file, the RLS weights and the LPC weights >> > match upto 3 decimal places, but the PESQ MOS value for LPC is 4.47 >> > and that for RLS is 4.07. How come there is such a huge difference >> > between the two if the weights match almost perfectly? >> >> > It would be great if someone can help me with this. >> >> > thanks, >> > kartik >> >> I dont know much about RLS but i have some questions. >> What is the window size that you are using for LPC. >> >> Difference between 4.07 and 4.47 is not huge. > >Also what is the order of the LPC and the sampling rate of the speech. >
Hi, I am not using any windowing for LPC, am just giving the entire speech file as input to compute the lp coefficients. LPC is of order 10 too, same as RLS. I was asked to do this comparison so as to be sure that the RLS code that I had written had no bugs in it, and that the results were almost the same. thanks, kartik
Hi, 

I agree that the difference is not huge, but the fact that the weights
match up to 3 decimal places is what makes this difference appear big. I am
not sure why this is happening.

thanks,
kartik
On Aug 6, 8:59 am, "kartikaye" <kartikay...@yahoo.com> wrote:
> >On Aug 6, 8:52 am, rajesh <getrajes...@gmail.com> wrote: > >> On Aug 6, 6:13 am, "kartikaye" <kartikay...@yahoo.com> wrote: > > >> > Hi All, > > >> > I have implemented a 10th order Recursive Least Squares filter on > >> > Matlab for speech and am comparing the weights thus obtained with > the > >> > weights using the LPC function. > > >> > Then I am comparing the speech quality using PESQ MOS values for > >> > various speech files. > > >> > I run my RLS for lambda=1 (forgetting factor) > >> > and delta=.02 (regularization factor), which gives the best > performance. > >> > Also, I am not using any windowing in the code > > >> > my questions are - > > >> > 1) I get PESQ MOS values like 4.47 and 4.45 for the estimated signal > >> > using LPC. Are these values too high ?? Is there a limitation of > PESQ > >> > MOS in this case that I should be aware of? > > >> > 2) For a particular speech file, the RLS weights and the LPC weights > >> > match upto 3 decimal places, but the PESQ MOS value for LPC is 4.47 > >> > and that for RLS is 4.07. How come there is such a huge difference > >> > between the two if the weights match almost perfectly? > > >> > It would be great if someone can help me with this. > > >> > thanks, > >> > kartik > > >> I dont know much about RLS but i have some questions. > >> What is the window size that you are using for LPC. > > >> Difference between 4.07 and 4.47 is not huge. > > >Also what is the order of the LPC and the sampling rate of the speech. > > Hi, > > I am not using any windowing for LPC, am just giving the entire speech > file as input to compute the lp coefficients. LPC is of order 10 too, same > as RLS. I was asked to do this comparison so as to be sure that the RLS > code that I had written had no bugs in it, and that the results were almost > the same. > > thanks, > kartik
Then in my opinion you should compare segemental snr and not PESQ MOS..
Hey Rajesh,

thanks for the tip ... but I am not too clear about the segmental snr
thing, as I am not segmenting my speech file anywhere during rls and lpc.

kartik