⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 matlab求倒谱问题.m

📁 一个计算Cepstrum的matlab源代码!
💻 M
字号:
matlab求倒谱问题
读入一个语音文件wav

加窗,窗长256,对窗内的信号进行倒谱计算

使用matlab带的cceps,求出的图像在附件里所示

但是我在书上看到,“由周期激励信号在复倒谱中形成的分量只出现在各冲激之间间隔的整数倍各点上,则可以预期在基本周期的整数倍各点上,复倒谱中能够发现冲激”

为何在我的图像上看不到周期激励信号产生的周期分量呢,只看到间隔为窗信号长度的峰值?



 以下是matlab程序

y= readwav('d:\1.wav');

length_y = length(y);

plot([1:length(y)],y);

title('语音信号');

%加窗

ceps_frame_len =500;

window = (hamming(ceps_frame_len)); % Window type

n_frame = round(length_y/ceps_frame_len);

y_result_m =zeros(n_frame*ceps_frame_len,1);

for ifrm=1:n_frame %n_frame为帧数,frame_shift为每次滑动的点数

n1 = ceps_frame_len*(ifrm-1)+1;

n2 = ceps_frame_len*(ifrm-1)+ceps_frame_len;

y(n1:n2) = window.*y(n1:n2);

y_result_m(n1:n2) = cceps(y(n1:n2));

end 

figure;

plot([1:length(y)],y);

title('加窗'); 

figure;

plot([1:length(y_result_m)],y_result_m);

title('倒谱); 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -