MATLAB中分帧的一些问题




首先 我们要先了解一下,我们为什么要进行分帧,原因大致如下:

首先我们收集到的语音信号,在时间变化上我们认为是不稳态的信号,但是当我们要提取feature的时候,我们需要的是从稳态的信号里提取,所以我们要把不稳态的信号,分解为稳态的信号,语音信号在短时,我们认为是稳态的,所以我们要对其进行分帧的操作。


程序1:
[y, fs, nbits]=wavread('s2.wav');
%分帧
framelength=256;
step=128;
frame_array2=enframe(y,hamming(framelength),step);
figure,plot(frame_array),xlabel('帧'),ylabel('分帧加窗后矩阵');
save('frame_array2.mat');

程序2:
[y,fs,bits]=wavread('s1.wav');
N=fs*20*10.^(-3);
frame_shift=N/3;
frame_array=enframe(sound(:,2),hamming(N),frame_shift);
figure,plot(frame_array),xlabel('帧'),ylabel('分帧加窗后矩阵');
save('frame_array.mat');
voiceframe_array=reshape(frame_array,N,[]);  


程序1和程序2都实现了分帧的问题,但是从程序中,我们能明显的看到一些不一样的地方,那么到底有什么区别的

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值