91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 22KB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發布日期: 2024-02-05
  • 語言: Matlab
  • 標簽: MATLAB仿真??

資源簡介

基于倒譜圖判斷濁音的基音周期MATLAB仿真 包含MATLAB代碼和語音文件

資源截圖

代碼片段和文件信息

waveFile?=?‘qinghua.wav?‘;
[y?fs?nbits]?=?wavread(waveFile);
time=(1:length(y))/fs;
frameSize=floor(40*fs/1000);?????%幀長
startIndex=round(15000);?????????%起始序號
endIndex=startIndex+frameSize-1;?%結束序號
frame?=?y(startIndex:endIndex);??%取出該幀
frameSize=length(frame);
frame2=frame.*hamming(length(frame));??%?加hamming窗
rwy?=?rceps(frame2);???????????????????%?求倒譜
ylen=length(rwy);
cepstrum=rwy(1:ylen/2);?%基音檢測
LF=floor(fs/500);?????%設置基音搜索的范圍
HF=floor(fs/70);
cn=cepstrum(LF:HF);
[mx_cep?ind]=max(cn);?%設置門限,找到峰值位置
if?mx_cep?>?0.08?&?ind?>LF
????a=?fs/(LF+ind);
else
????a=0;
end
figure(1);
plot(time?y);?title(waveFile);?axis?tight
ylim=get(gca?‘ylim‘);
line([time(startIndex)?time(startIndex)]?ylim?‘color‘?‘r‘);
line([time(endIndex)?time(endIndex)]?ylim?‘color‘?‘r‘);
title(‘語音波形‘);
figure(2);
subplot(211);
plot(frame);
title(‘取出幀的波形‘);
subplot(212);
plot(cepstrum);
title(‘倒譜圖‘);
[xsr]=wavread(‘qinghua.wav‘);??
meen=mean(x);
x=?x?-?meen;
updRate=floor(20*sr/1000);??????????%每20ms更新
fRate=floor(40*sr/1000);????????????%40ms一幀
n_samples=length(x);
nframes=floor(n_samples/updRate)-1;?%幀數
k=1;
pitch=zeros(1nframes);
f0=zeros(1nframes);
LF=floor(sr/500);
HF=floor(sr/70);
m=1;
avgF0=0;
for?t=1:nframes
????????yin=x(k:k+fRate-1);
????????cn1=rceps(yin);
????????cn=cn1(LF:HF);
????????[mx_cep?ind]=max(cn);
????????if?mx_cep?>?0.08?&?ind?>LF
???????????a=?sr/(LF+ind);
????????else
????????????a=0;
????????end?
????????f0(t)=a;
????????if?t>2?&?nframes>3???%中值濾波對基音軌跡圖進行平滑
???????????z=f0(t-2:t);
???????????md=median(z);
???????????pitch(t-2)=md;
???????????if?md?>?0
?????????????avgF0=avgF0+md;
?????????????m=m+1;
???????????end
????????else
????????????if?nframes<=3
????????????pitch(t)=a;
????????????avgF0=avgF0+a;
????????????m=m+1;
???????????end?
????????end
?????k=k+updRate;
end
figure(3)
subplot(211);
plot((1:length(x))/sr?x);
ylabel(‘幅度‘);
xlabel(‘時間‘);
subplot(212);
xt=1:nframes;
xt=20*xt;
plot(xtpitch)
xlim([03]);
axis([xt(1)?xt(nframes)?0?max(pitch)+50]);
ylabel(‘基音頻率/HZ‘);
xlabel(‘時間‘);
?

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2014-06-30?16:32??No.2\
?????文件????????2214??2014-06-30?16:37??No.2\pro_2.m
?????文件???????33120??2010-01-13?11:54??No.2\qinghua.wav

評論

共有 條評論