语音信号线性预测分析(7)

时间:2025-04-19

polynomials.');

end

% 如果a(1)不等于1,将其归一化为1 if a(1)~=1.0,

a=a./a(1);% 将矩阵a的每个元素除以a(1)在赋给矩阵a end

% 判断线性预测多项式的跟是否都在单位园内,如果不在,则输出错误信息 if (max(abs(roots(a)))>=1.0),

error('The polynomil must have all roots inside of the unit circle.'); end

% 求对称和反对称多项式的系数

p=length(a)-1; % 求对称和反对称多项式的阶次 a1=[a;0]; % 给行矩阵a再增加一个元素为0的行

a2=a1(end:-1:1); % a2的第一行为a1的最后一行,最后一行为a1的第一行 p1=a1+a2; % 求对称多项式的系数 Q1=a1-a2; % 求反对称多项式的系数

% 如果阶次p为偶数次,从p1取掉实数根z=-1,从Q1去取掉实数根z=1 % 如果阶次p为奇数次,从Q1去取掉实数根z=1及z=-1

if rem(p,2),% 求解p除以2的余数,如果p为奇数次,余数为1,否则为0 Q=deconv(Q1,[1 0 -1]);% 奇数阶次,从Q1取掉实数根z=1 p=p1;

else % p为偶数阶次执行下面操作 Q=deconv(Q1,[1 -1]);% 从Q1取掉实数根z=1 p=deconv(P1,[1 1]);% 从P1取掉实数根z=-1 end

rp=roots(P);% 求去掉实根后的多项式P的根 rQ=roots(Q);% 求去掉实根后的多项式Q的根

aP=angle(rp(1:2:end));% 将多项式P的根转换为角度(为归一化角频率)赋给ap aQ=angle(rQ(1:2:end));% 将多项式Q的根转换为角度(为归一化角频率)赋给aQ lsf=sort([aP;aQ]);% 将P、Q的根(归一化角频率)按从小到大顺序排序后即为lsf % EOF a_lsf_conversion.m

其中a_lsf_conversion.m为求解LSF的函数,a_lsf_main.m为主程序。由于MATLAB

P (z)和 Q (z)零点时直接调用即可,这程序本身有求多项式根的函数,因此在求解

极大简化了求解过程。

2.LPC转换为ISP系数的MATLAB程序和ISP系数转换为LPC的MATLAB程序

a_isf_lpc_conversion.m

%已知语音文件求出其LPC系数后,求其对应的ISF,再将ISF转换为a。其中isf为转换

语音信号线性预测分析(7).doc 将本文的Word文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:7 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219