matlab中索引超过维度,索引超出维度,怎么处理

clc; close all; clear all;

run Set_II;                                 % 参数设置

run Part_II;                                % 读入文件,分帧和端点检测

lmin=fix(fs/500);                           % 基音周期的最小值

lmax=fix(fs/60);                            % 基音周期的最大值

period=zeros(1,fn);                         % 基音周期初始化

p=12;                                       % 设置线性预测阶数

for k=1:fn

if SF(k)==1                             % 是否在有话帧中

u=y(:,k).*hamming(wlen);            % 取来一帧数据加窗函数

ar = lpc(u,p);                      % 计算LPC系数

z = filter([0 -ar(2:end)],1,u);     % 一帧数据LPC逆滤波输出

E = u - z;                          % 预测误差

xx=fft(E);                          % FFT

a=2*log(abs(xx)+eps);               % 取模值和对数

b=ifft(a);                          % 求取倒谱

[R(k),Lc(k)]=max(b(lmin:lmax));     % 在Pmin~Pmax区间寻找最大值

period(k)=Lc(k)+lmin-1;             % 给出基音周期

end

end

T1=pitfilterm1(period,voiceseg,vosl);       % 基音周期平滑处理

% 作图

subplot 211, plot(time,x,'k');  title('语音信号')

axis([0 max(time) -1 1]); grid;  ylabel('幅值'); xlabel('时间/s');

subplot 212; hold on

line(frameTime,period,'color',[.6 .6 .6],'linewidth',2);

axis([0 max(time) 0 150]); title('基音周期');

ylabel('样点数'); xlabel('时间/s'); grid;

plot(frameTime,T1,'k'); hold off

legend('初估算值','平滑后值'); box on;

显示结果为

索引超出矩阵维度。

出错 xianxingjiance (line 19)

[R(k),Lc(k)]=max(b(lmin:lmax));     % 在Pmin~Pmax区间寻找最大值

求帮忙,谢谢

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值