MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB基础] 求高手指教:关于MFCC算法运行的一个错误 (https://www.labfans.com/bbs/showthread.php?t=12277)

xxxx1234567890 2010-11-22 12:43

求高手指教:关于MFCC算法运行的一个错误
 
function ccc=mfcc(x)
bank=melbankm(24,256,8000,0,0.5,'m');
bank=full(bank);
bank=bank/max(bank(:));

for k=1:12
n=0:23
dctcoef(k,:)=cos((2*n+1)*k*pi/(2*24));
end

w=1+6*sin(pi*[1:12]./12);
w=w/max(w);

xx=double(x);
xx=filter([1-0.9375],1,xx);

xx=enframe(xx,256,80);

for i=1:size(xx,1);
y=xx(i,:);
s=y'.*hamming(256);
t=abs(fft(s));
t=t.^2;
c1=dctcoef*log(bank*t(1:129));
c2=c1.*w';
m(i,:)=c2';
end

dtm=zeros(size(m));
for i=3:(size(m,1)-2)
dtm(i,:)=-2*m(i-2,:)-m(i-1,:)+m(i+1,:)+2*m(i+2,:);
end
dtm=dtm/3;

ccc=[m dtm];

ccc=ccc(3:size(m,1)-2,:);




运行后出现:
?? Undefined function or variable "m".

Error in ==> mfcc at 44
dtm = zeros(size(m));


这是什么错啊
c2=c1.*w';
m(i,:)=c2';
end

dtm=zeros(size(m));
不是有定义吗


所有时间均为北京时间。现在的时间是 11:32

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.