?? err均值系數5.m
字號:
clear all
for i=1:20
fname=sprintf('D:\\樣本\\speech with music\\%d.wav',i);
x=wavread(fname);
x=x(:,1);
[c,l]=wavedec(x,3,'db4');
ca=appcoef(c,l,'db4',3);%近似系數
x=ca;
enframex=enframe(x,128,64);%對信號x分幀處理,每幀有128個采樣點,相鄰幀之間有50%的疊加率
[row,col]=size(enframex);%返回行,列,每一行代表一幀,每一列表示1到128個采樣點
A=abs(enframex).^2;
energy=zeros(row,1);
for j=1:row
energy(j)=sum(A(j,:));
end
for j=1:row
s(j)=0;
s(j)=s(j)+energy(j).*log10(energy(j));
end
Err=-s;
swmErrzhuzhi(i,1)=mean(Err);
end
swmErrzhuzhi
clear
for i=1:20
fname=sprintf('D:\\樣本\\speech\\%d.wav',i);
x=wavread(fname);
x=x(:,1);
[c,l]=wavedec(x,3,'db4');
ca=appcoef(c,l,'db4',3);%近似系數
x=ca;
enframex=enframe(x,128,64);%對信號x分幀處理,每幀有128個采樣點,相鄰幀之間有50%的疊加率
[row,col]=size(enframex);%返回行,列,每一行代表一幀,每一列表示1到128個采樣點
A=abs(enframex).^2;
energy=zeros(row,1);
for j=1:row
energy(j)=sum(A(j,:));
end
for j=1:row
s(j)=0;
s(j)=s(j)+energy(j).*log10(energy(j));
end
Err=-s;
speechErrzhuzhi(i,1)=mean(Err);
end
speechErrzhuzhi
clear
for i=1:20
fname=sprintf('D:\\樣本\\music\\%d.wav',i);
x=wavread(fname);
x=x(:,1);
[c,l]=wavedec(x,3,'db4');
ca=appcoef(c,l,'db4',3);%近似系數
x=ca;
enframex=enframe(x,128,64);%對信號x分幀處理,每幀有128個采樣點,相鄰幀之間有50%的疊加率
[row,col]=size(enframex);%返回行,列,每一行代表一幀,每一列表示1到128個采樣點
A=abs(enframex).^2;
energy=zeros(row,1);
for j=1:row
energy(j)=sum(A(j,:));
end
for j=1:row
s(j)=0;
s(j)=s(j)+energy(j).*log10(energy(j));
end
Err=-s;
musicErrzhuzhi(i,1)=mean(Err);
end
musicErrzhuzhi
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -