Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2010-11-18
年龄: 35
帖子: 1
声望力: 0 ![]() |
![]()
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)); 不是有定义吗 |
![]() |
![]() |