MATLAB 利用Voicebox自带函数求MFCC问题

wat0014 2014-03-28 10:53:06
小弟今天用Voicebox中自带的函数求取文件大小为725KB的.wav文件的MFCC系数。所得结果保存成.txt格式居然有12MB之多。

以下是我的代码:
clear all;
[data,fs]=audioread('A1.wav');
xx=double(data);
xx=filter([1 -0.9375],1,xx); % 语音信号预加重
y=enframe(xx,256); %xx=enframe(xx,256,80);
guss=size(y,1); %size(xx,1)返回xx的维数
c=eye(guss);


% 计算每帧的MFCC参数
for i=1:guss
h = y(i,:);
s = h' .* hamming(256);%乘窗
t = rfft(s);
p=melbankm(2,510,44100);
%whos p;
%whos s;
for j=1:2
z=log(p(j,:)*(abs(s).^2));
c(i,:)=dct(z);
end

end

fid=fopen('Mel.txt','w+');
fprintf(fid,'%6.2f',c);
fclose(fid);


是不是我的处理步骤有问题呢?还请大神们解答。谢谢
...全文
539 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
haorenxinshou 2014-03-31
  • 打赏
  • 举报
回复
我也是一新手,最近也在看这方面的东西。好像voicebox中是不是有直接计算mfcc的函数melcepst,只是melcepst函数中没有预加重

3,423

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 其他开发语言
社区管理员
  • 其他开发语言社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧