d_lo0.m
上传用户:shjsjz
上传日期:2022-07-09
资源大小:3k
文件大小:0k
源码类别:

语音合成与识别

开发平台:

Matlab

  1. function re = d_lo0(A,n)
  2. %平滑的谱
  3. [l,ll]=size(A);
  4. if l<ll,
  5.     l=ll;
  6.     A=A';
  7. end
  8. re=zeros(l,1);
  9. nn=floor(n/2);
  10. if nn>0
  11. ss=sum(A(1:nn+1));
  12. ll=1+nn;
  13. for i=1:nn
  14.     re(i)=ss/ll;
  15.     ss=ss+A(nn+i+1);
  16.     ll=ll+1;
  17. end
  18. for i=nn+1:l-nn-1
  19.     re(i)=ss/ll;
  20.     ss=ss+A(nn+i+1)-A(i-nn);
  21. end
  22. for i=l-nn:l
  23.     re(i)=ss/ll;
  24.     ss=ss-A(i-nn);
  25.     ll=ll-1;
  26. end
  27. else
  28.     re=A;
  29. end