版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
計算機(jī)處理方法第1頁,課件共155頁,創(chuàng)作于2023年2月6.1雙門限法第2頁,課件共155頁,創(chuàng)作于2023年2月圖6-1-1語音波形語音短時平均能量語音短時平均過零率第3頁,課件共155頁,創(chuàng)作于2023年2月進(jìn)行判決的具體步驟:第一級判決:第4頁,課件共155頁,創(chuàng)作于2023年2月第2級判決第5頁,課件共155頁,創(chuàng)作于2023年2月計算短時平均能量例:讀入數(shù)據(jù)文件bluesky1.wav(內(nèi)容為男聲“藍(lán)天,白云,碧綠的大海”),求其短時平均能量第6頁,課件共155頁,創(chuàng)作于2023年2月filedir=[];%設(shè)置路徑filename='bluesky1.wav';%設(shè)置文件名fle=[filedirfilename];%構(gòu)成完整的路徑和文件名[x,Fs]=wavread(fle);%讀入數(shù)據(jù)文件wlen=200;inc=80;%給出幀長和幀移win=hanning(wlen);%給出海寧窗N=length(x);%信號長度X=enframe(x,win,inc)';%分幀fn=size(X,2);%求出幀數(shù)time=(0:N-1)/Fs;%計算出信號的時間刻度fori=1:fnu=X(:,i);%取出一幀
u2=u.*u;%求出能量
En(i)=sum(u2);%對一幀累加求和endsubplot211;plot(time,x,'k');%畫出時間波形title('語音波形');ylabel('幅值');xlabel(['時間/s'10'(a)']);frameTime=frame2time(fn,wlen,inc,Fs);%求出每幀對應(yīng)的時間subplot212;plot(frameTime,En,'k')%畫出短時能量圖title('短時能量');ylabel('幅值');xlabel(['時間/s'10'(b)']);第7頁,課件共155頁,創(chuàng)作于2023年2月第8頁,課件共155頁,創(chuàng)作于2023年2月例:讀入數(shù)據(jù)文件bluesky1.wav(內(nèi)容為男聲“藍(lán)天,白云,碧綠的大?!保?,求其短時平均過零率filedir=[];%設(shè)置路徑filename='bluesky1.wav';%設(shè)置文件名fle=[filedirfilename];%構(gòu)成完整的路徑和文件名[xx,Fs]=wavread(fle);%讀入數(shù)據(jù)文件x=xx-mean(xx);%消除直流分量wlen=200;inc=80;%設(shè)置幀長、幀移win=hanning(wlen);%窗函數(shù)N=length(x);%求數(shù)據(jù)長度X=enframe(x,win,inc)';%分幀fn=size(X,2);%獲取幀數(shù)zcr1=zeros(1,fn);%初始化fori=1:fnz=X(:,i);%取得一幀數(shù)據(jù)
forj=1:(wlen-1);%在一幀內(nèi)尋找過零點(diǎn)
ifz(j)*z(j+1)<0%判斷是否為過零點(diǎn)
zcr1(i)=zcr1(i)+1;%是過零點(diǎn),記錄1次
endendendtime=(0:N-1)/Fs;%計算時間坐標(biāo)frameTime=frame2time(fn,wlen,inc,Fs);%求出每幀對應(yīng)的時間%作圖subplot211;plot(time,x,'k');grid;title('語音波形');ylabel('幅值');xlabel(['時間/s'10'(a)']);subplot212;plot(frameTime,zcr1,'k');grid;title('短時平均過零率');ylabel('幅值');xlabel(['時間/s'10'(b)']);第9頁,課件共155頁,創(chuàng)作于2023年2月第10頁,課件共155頁,創(chuàng)作于2023年2月用短時平均能量和短時過零率提取語音端點(diǎn)位置第11頁,課件共155頁,創(chuàng)作于2023年2月第12頁,課件共155頁,創(chuàng)作于2023年2月第13頁,課件共155頁,創(chuàng)作于2023年2月第14頁,課件共155頁,創(chuàng)作于2023年2月%pr6_1_1clearall;clc;closeall;filedir=[];%指定文件路徑filename='bluesky1.wav';%指定文件名fle=[filedirfilename]%構(gòu)成路徑和文件名的字符串[x,fs]=wavread(fle);%讀入數(shù)據(jù)文件x=x/max(abs(x));%幅度歸一化N=length(x);%取信號長度time=(0:N-1)/fs;%計算時間pos=get(gcf,'Position');%作圖set(gcf,'Position',[pos(1),pos(2)-100,pos(3),(pos(4)-200)]);plot(time,x,'k');title('男聲“藍(lán)天,白云,碧綠的大?!钡亩它c(diǎn)檢測');ylabel('幅值');axis([0max(time)-11]);grid;xlabel('時間/s');設(shè)置無話段長度IS:0.1s第15頁,課件共155頁,創(chuàng)作于2023年2月wlen=200;inc=80;%分幀參數(shù)IS=0.1;overlap=wlen-inc;%設(shè)置ISNIS=fix((IS*fs-wlen)/inc+1);%計算NISfn=fix((N-wlen)/inc)+1;%求幀數(shù)frameTime=frame2time(fn,wlen,inc,fs);%計算每幀對應(yīng)的時間[voiceseg,vsl,SF,NF]=vad_ezm1(x,wlen,inc,NIS);%端點(diǎn)檢測fork=1:vsl%畫出起止點(diǎn)位置
nx1=voiceseg(k).begin;nx2=voiceseg(k).end;nxl=voiceseg(k).duration;fprintf('%4d%4d%4d%4d\n',k,nx1,nx2,nxl);line([frameTime(nx1)frameTime(nx1)],[-1.51.5],'color','k','LineStyle','-');line([frameTime(nx2)frameTime(nx2)],[-1.51.5],'color','k','LineStyle','--');end第16頁,課件共155頁,創(chuàng)作于2023年2月voiceseg=1x3structarraywithfields:beginendduration>>vslvsl=3第17頁,課件共155頁,創(chuàng)作于2023年2月>>SF(1:10)ans=0000000000>>SF(25:34)ans=0000111111有話幀標(biāo)記:1:有話幀,0:無話幀第18頁,課件共155頁,創(chuàng)作于2023年2月>>NF(1:10)ans=1111111111>>NF(25:34)ans=1111000000無話幀標(biāo)記:1:無話幀,0:有話幀第19頁,課件共155頁,創(chuàng)作于2023年2月fle=bluesky1.wav129123952131222923245377133有話段起始點(diǎn)(第29幀)有話段終止點(diǎn)(第123幀)共3段有話幀有話幀長度第20頁,課件共155頁,創(chuàng)作于2023年2月第21頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí)設(shè)置無話段長度IS:0.2s,0.3s,0.4s,用vad_ezm1函數(shù)對bluesky1.wav(男聲:“藍(lán)天,白云,碧綠的大海”)數(shù)據(jù)進(jìn)行端點(diǎn)檢測,并比較結(jié)果第22頁,課件共155頁,創(chuàng)作于2023年2月6.2雙門限法的改進(jìn)和推廣第23頁,課件共155頁,創(chuàng)作于2023年2月第24頁,課件共155頁,創(chuàng)作于2023年2月第25頁,課件共155頁,創(chuàng)作于2023年2月第26頁,課件共155頁,創(chuàng)作于2023年2月%pr6_2_1clearall;clc;closeall;filedir=[];%指定文件路徑filename='bluesky1.wav';%指定文件名fle=[filedirfilename]%構(gòu)成路徑和文件名的字符串[xx,fs]=wavread(fle);%讀入數(shù)據(jù)文件xx=xx/max(abs(xx));%幅度歸一化N=length(xx);%取信號長度time=(0:N-1)/fs;%計算時間刻度x=Gnoisegen(xx,20);%把白噪聲疊加到信號上wlen=200;inc=80;%設(shè)置幀長和幀移IS=0.25;overlap=wlen-inc;%設(shè)置前導(dǎo)無話段長度NIS=fix((IS*fs-wlen)/inc+1);%計算前導(dǎo)無話段幀數(shù)fn=fix((N-wlen)/inc)+1;%求出總幀數(shù)frameTime=frame2time(fn,wlen,inc,fs);%計算每幀對應(yīng)的時間[voiceseg,vsl,SF,NF]=vad_ezr(x,wlen,inc,NIS);%端點(diǎn)檢測第27頁,課件共155頁,創(chuàng)作于2023年2月%作圖subplot211;plot(time,xx,'k');holdontitle('純語音男聲“藍(lán)天,白云,碧綠的大?!辈ㄐ?);ylabel('幅值');axis([0max(time)-11]);xlabel('(a)');fork=1:vslnx1=voiceseg(k).begin;nx2=voiceseg(k).end;fprintf('%4d%4d%4d\n',k,nx1,nx2);line([frameTime(nx1)frameTime(nx1)],[-1.51.5],'color','k','LineStyle','-');line([frameTime(nx2)frameTime(nx2)],[-1.51.5],'color','k','LineStyle','--');endsubplot212;plot(time,x,'k');title('加噪語音波形(信噪比20dB)');ylabel('幅值');axis([0max(time)-11]);xlabel(['時間/s'10'(b)']);第28頁,課件共155頁,創(chuàng)作于2023年2月13013021322303245370第29頁,課件共155頁,創(chuàng)作于2023年2月第30頁,課件共155頁,創(chuàng)作于2023年2月第31頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):(1)產(chǎn)生400點(diǎn)高斯分布隨機(jī)信號并求它的幅頻特性(2)產(chǎn)生400點(diǎn)均勻分布隨機(jī)信號并求它的幅頻特性第32頁,課件共155頁,創(chuàng)作于2023年2月第33頁,課件共155頁,創(chuàng)作于2023年2月第34頁,課件共155頁,創(chuàng)作于2023年2月%%pr5_3_1clearall;clc;closeall;filedir=[];%指定文件路徑filename='bluesky3.wav';%指定文件名fle=[filedirfilename];[s,fs]=wavread(fle);%讀入數(shù)據(jù)文件s=s-mean(s);%消除直流分量s=s/max(abs(s));%幅值歸一化N=length(s);%求出數(shù)據(jù)長度time=(0:N-1)/fs;%求出時間刻度subplot411;plot(time,s,'k');%畫出純語音信號的波形圖title('純語音信號');ylabel('幅值')第35頁,課件共155頁,創(chuàng)作于2023年2月SNR=[1550];%信噪比的取值區(qū)間fork=1:3snr=SNR(k);%設(shè)定信噪比
[x,noise]=Gnoisegen(s,snr);%求出相應(yīng)信噪比的高斯白噪聲,構(gòu)成帶噪語音
subplot(4,1,k+1);plot(time,x,'k');ylabel('幅值');%作圖
snr1=SNR_singlech(s,x);%計算出帶噪語音中的信噪比
fprintf('k=%4dsnr=%5.1fsnr1=%5.4f\n',k,snr,round(snr1*1e4)/1e4);title(['帶噪語音信號設(shè)定信噪比='num2str(snr)'dB計算出信噪比='...num2str(round(snr1*1e4)/1e4)'dB']);endxlabel('時間/s')第36頁,課件共155頁,創(chuàng)作于2023年2月k=1snr=15.0snr1=15.0000k=2snr=5.0snr1=5.0000k=3snr=0.0snr1=0.0000第37頁,課件共155頁,創(chuàng)作于2023年2月加15,5,0dB的高斯白噪聲的波形圖第38頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí)讀入數(shù)據(jù)文件redriver2.wav
,調(diào)用Gnoisegen函數(shù)分別對語音信號加15,5,0dB的高斯白噪聲,并用SNR_singlech函數(shù)計算出信噪比第39頁,課件共155頁,創(chuàng)作于2023年2月例5-3-11(pr5_3_11)讀入數(shù)據(jù)文件bluesky3.wav(內(nèi)容為男聲“藍(lán)天,白云”),調(diào)用Nnoisegen函數(shù)分別對語音信號加15,5,0dB的均勻白噪聲,并用SNR_singlech函數(shù)計算出信噪比%%pr5_3_11clearall;clc;closeall;filedir=[];%指定文件路徑filename='bluesky3.wav';%指定文件名fle=[filedirfilename];[s,fs]=wavread(fle);%讀入數(shù)據(jù)文件s=s-mean(s);%消除直流分量s=s/max(abs(s));%幅值歸一化N=length(s);%求出數(shù)據(jù)長度time=(0:N-1)/fs;%求出時間刻度subplot411;plot(time,s,'k');%畫出純語音信號的波形圖title('純語音信號');ylabel('幅值')第40頁,課件共155頁,創(chuàng)作于2023年2月SNR=[1550];%信噪比的取值區(qū)間fork=1:3snr=SNR(k);%設(shè)定信噪比
[x,noise]=Nnoisegen(s,snr);%求出相應(yīng)信噪比的高斯白噪聲,構(gòu)成帶噪語音
subplot(4,1,k+1);plot(time,x,'k');ylabel('幅值');%作圖
snr1=SNR_singlech(s,x);%計算出帶噪語音中的信噪比
fprintf('k=%4dsnr=%5.1fsnr1=%5.4f\n',k,snr,round(snr1*1e4)/1e4);title(['帶噪語音信號設(shè)定信噪比='num2str(snr)'dB計算出信噪比='...num2str(round(snr1*1e4)/1e4)'dB']);endxlabel('時間/s')第41頁,課件共155頁,創(chuàng)作于2023年2月k=1snr=15.0snr1=15.0000k=2snr=5.0snr1=5.0000k=3snr=0.0snr1=0.0000第42頁,課件共155頁,創(chuàng)作于2023年2月加15,5,0dB的均勻白噪聲的波形圖第43頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí)讀入數(shù)據(jù)文件redriver2.wav
,調(diào)用Nnoisegen函數(shù)分別對語音信號加15,5,0dB的均勻白噪聲,并用SNR_singlech函數(shù)計算出信噪比第44頁,課件共155頁,創(chuàng)作于2023年2月(3)生成疊加任意噪聲數(shù)據(jù)的帶噪語音第45頁,課件共155頁,創(chuàng)作于2023年2月Add_noisedata函數(shù)清單(1)function[signal,noise]=add_noisedata(s,data,fs,fs1,snr)s=s(:);%把信號轉(zhuǎn)換成列數(shù)據(jù)s=s-mean(s);%消除直流分量sL=length(s);%求出信號的長度iffs~=fs1%若純語音信號的采樣頻率與噪聲的采樣頻率不相等
x=resample(data,fs,fs1);%對噪聲重采樣,使噪聲采樣頻率與純語音信號的采樣頻率相同elsex=data;Endx=x(:);%把噪聲數(shù)據(jù)轉(zhuǎn)換成列數(shù)據(jù)x=x-mean(x);%消除直流分量xL=length(x);%求噪聲數(shù)據(jù)長度ifxL>=sL%如果噪聲數(shù)據(jù)長度與信號數(shù)據(jù)長度不等,把噪聲數(shù)據(jù)截斷或補(bǔ)足
x=x(1:sL);elsedisp('Warning:噪聲數(shù)據(jù)短于信號數(shù)據(jù),以補(bǔ)0來補(bǔ)足!')x=[x;zeros(sL-xL,1)];end第46頁,課件共155頁,創(chuàng)作于2023年2月Add_noisedata函數(shù)清單(2)Sr=snr;Es=sum(x.*x);%求出信號的能量Ev=sum(s.*s);%求出噪聲的能量a=sqrt(Ev/Es/(10^(Sr/10)));%計算出噪聲的比例因子noise=a*x;%調(diào)整噪聲的幅值signal=s+noise;%構(gòu)成帶噪語音第47頁,課件共155頁,創(chuàng)作于2023年2月%pr5_3_2clearall;clc;closeall;filedir=[];%指定文件路徑filename='bluesky3.wav';%指定文件名fle=[filedirfilename];[s,fs]=wavread(fle);%讀入數(shù)據(jù)文件s=s/max(abs(s));%幅值歸一化N=length(s);%求出數(shù)據(jù)長度time=(0:N-1)/fs;%求出時間刻度subplot411;plot(time,s,'k');%畫出純語音信號的波形圖title('純語音信號');ylabel('幅值')采樣頻率8000Hz100第48頁,課件共155頁,創(chuàng)作于2023年2月SNR=[50-5];%信噪比的取值區(qū)間fork=1:3snr=SNR(k);%設(shè)定信噪比
data=sin(2*pi*100*time);%產(chǎn)生一個正弦信號
[x,noise]=add_noisedata(s,data,fs,fs,snr);%按信噪比構(gòu)成正弦信號疊加到語音上
subplot(4,1,k+1);plot(time,x,'k');ylabel('幅值');%作圖
ylim([-22]);snr1=SNR_singlech(s,x);%計算出帶噪語音中的信噪比
fprintf('k=%4dsnr=%5.1fsnr1=%5.4f\n',k,snr,snr1);title(['帶噪語音信號設(shè)定信噪比='num2str(snr)'dB計算出信噪比='...num2str(round(snr1*1e4)/1e4)'dB']);endxlabel('時間/s')第49頁,課件共155頁,創(chuàng)作于2023年2月k=1snr=5.0snr1=5.0000k=2snr=0.0snr1=-0.0000k=3snr=-5.0snr1=-5.0000第50頁,課件共155頁,創(chuàng)作于2023年2月第51頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí)讀入數(shù)據(jù)文件redriver2.wav
,疊加一個以不同信噪比5,0,-5dB的正弦波,正弦波頻率為10Hz,采樣頻率為8000Hz。第52頁,課件共155頁,創(chuàng)作于2023年2月(4)把噪聲數(shù)據(jù)文件疊加生成任意信噪比的帶噪語音第53頁,課件共155頁,創(chuàng)作于2023年2月add_noisefile函數(shù)清單(1)function[y,noise]=add_noisefile(s,filepath_name,SNR,fs)s=s(:);%把信號轉(zhuǎn)換成列數(shù)據(jù)s=s-mean(s);%消除直流分量[wavin,fs1,nbits]=wavread(filepath_name);%讀入噪聲文件的數(shù)據(jù)wavin=wavin(:);%把噪聲數(shù)據(jù)轉(zhuǎn)換成列數(shù)據(jù)iffs1~=fs%純語音信號的采樣頻率與噪聲的采樣頻率不相等
wavin1=resample(wavin,fs,fs1);%對噪聲重采樣,使噪聲采樣頻率與純語音信號的采樣頻率相同elsewavin1=wavin;endwavin1=wavin1-mean(wavin1);%消除直流分量第54頁,課件共155頁,創(chuàng)作于2023年2月add_noisefile函數(shù)清單(2)ns=length(s);%求出s的長度noise=wavin1(1:ns);%把噪聲長度截斷為與s等長noise=noise-mean(noise);%噪聲去除直流分量signal_power=1/ns*sum(s.*s);%求出信號的能量noise_power=1/ns*sum(noise.*noise);%求出噪聲的能量noise_variance=signal_power/(10^(SNR/10));%求出噪聲設(shè)定的方差值noise=sqrt(noise_variance/noise_power)*noise;%調(diào)整噪聲幅值y=s+noise;%構(gòu)成帶噪語音第55頁,課件共155頁,創(chuàng)作于2023年2月%pr5_3_3clearall;clc;closeall;filedir=[];%指定文件路徑filename='bluesky3.wav';%指定文件名fle=[filedirfilename];[s,fs]=wavread(fle);%讀入數(shù)據(jù)文件s=s/max(abs(s));%幅值歸一化N=length(s);%求出數(shù)據(jù)長度time=(0:N-1)/fs;%求出時間刻度subplot411;plot(time,s,'k');%畫出純語音信號的波形圖title('純語音信號');ylabel('幅值')filepath_name='factory1.wav';第56頁,課件共155頁,創(chuàng)作于2023年2月SNR=[50-5];%信噪比的取值區(qū)間fork=1:3snr=SNR(k);%設(shè)定信噪比
[x,noise]=add_noisefile(s,filepath_name,snr,fs);%按信噪比構(gòu)成噪聲疊加到語音上
subplot(4,1,k+1);plot(time,x,'k');ylabel('幅值');%作圖
ylim([-22]);snr1=SNR_singlech(s,x);%計算出帶噪語音中的信噪比
fprintf('k=%4dsnr=%5.1fsnr1=%5.4f\n',k,snr,snr1);title(['帶噪語音信號設(shè)定信噪比='num2str(snr)'dB計算出信噪比='...num2str(round(snr1*1e4)/1e4)'dB']);endxlabel('時間/s')
第57頁,課件共155頁,創(chuàng)作于2023年2月例pr5_3_3在MATLAB命令欄中輸出結(jié)果k=1snr=5.0snr1=5.0000k=2snr=0.0snr1=-0.0000k=3snr=-5.0snr1=-5.0000第58頁,課件共155頁,創(chuàng)作于2023年2月例pr5_3_3波形第59頁,課件共155頁,創(chuàng)作于2023年2月factory1.wav波形及頻譜%pr5_3_3clearall;clc;closeall;filedir=[];%指定文件路徑filename='factory1.wav';%指定文件名fle=[filedirfilename];[s,fs]=wavread(fle);%讀入數(shù)據(jù)文件subplot(211)plot(s);subplot(212)S=fft(s,1024);plot(1:512,abs(S(1:512)));第60頁,課件共155頁,創(chuàng)作于2023年2月factory1.wav波形及頻譜第61頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):讀入數(shù)據(jù)文件redriver2.wav
,疊加噪聲文件名factory1.wav噪聲。設(shè)不同信噪比10,0,-10dB第62頁,課件共155頁,創(chuàng)作于2023年2月5.4語音信號的預(yù)處理一—消除趨勢項(xiàng)和直流分量第63頁,課件共155頁,創(chuàng)作于2023年2月5.4.1最小二乘法擬合趨勢項(xiàng)的原理第64頁,課件共155頁,創(chuàng)作于2023年2月第65頁,課件共155頁,創(chuàng)作于2023年2月消除常數(shù)趨勢項(xiàng):第66頁,課件共155頁,創(chuàng)作于2023年2月消除線性趨勢項(xiàng):第67頁,課件共155頁,創(chuàng)作于2023年2月消除線性趨勢項(xiàng):第68頁,課件共155頁,創(chuàng)作于2023年2月5.4.2最小二乘法擬合消除趨勢項(xiàng)的函數(shù)第69頁,課件共155頁,創(chuàng)作于2023年2月程序清單function[y,xtrend]=polydetrend(x,fs,m)x=x(:);%把語音信號x轉(zhuǎn)換為列數(shù)據(jù)N=length(x);%求出x的長度t=(0:N-1)'/fs;%按x的長度和采樣頻率設(shè)置時間序列a=polyfit(t,x,m);%用最小二乘法擬合語音信號x的多項(xiàng)式系數(shù)axtrend=polyval(a,t);%用系數(shù)a和時間序列t構(gòu)成趨勢項(xiàng)y=x-xtrend;%從語音信號x中清除趨勢項(xiàng)第70頁,課件共155頁,創(chuàng)作于2023年2月%%pr5_4_1clearall;clc;closeall;[x,fs,nbit]=wavread('bluesky31.wav');%讀入bluesky31.wav文件t=(0:length(x)-1)/fs;%設(shè)置時間y=detrend(x);%消除線性趨勢項(xiàng)y=y/max(abs(y));%幅值歸一化subplot211;plot(t,x,'k');%畫出帶有趨勢項(xiàng)的語音信號xtitle('帶趨勢項(xiàng)的語音信號');xlabel('時間/s');ylabel('幅值');subplot212;plot(t,y,'k');%畫出消除趨勢項(xiàng)的語音信號yxlabel('時間/s');ylabel('幅值');title('消除趨勢項(xiàng)的語音信號');第71頁,課件共155頁,創(chuàng)作于2023年2月第72頁,課件共155頁,創(chuàng)作于2023年2月%pr5_4_2clearall;clc;closeall;[x,fs,nbit]=wavread('bluesky32.wav');%讀入bluesky32.wav文件[y,xtrend]=polydetrend(x,fs,2);%調(diào)用polydetrend消除趨勢項(xiàng)t=(0:length(x)-1)/fs;%設(shè)置時間subplot211;plot(t,x,'k');%畫出帶有趨勢項(xiàng)的語音信號xline(t,xtrend,'color',[.6.6.6],'linewidth',3);%畫出趨勢項(xiàng)曲線ylim([-1.51]);title('帶趨勢項(xiàng)的語音信號');legend('帶趨勢項(xiàng)的語音信號','趨勢項(xiàng)信號',4)xlabel('時間/s');ylabel('幅值');subplot212;plot(t,y,'k');%畫出消除趨勢項(xiàng)的語音信號yxlabel('時間/s');ylabel('幅值');title('消除趨勢項(xiàng)的語音信號');第73頁,課件共155頁,創(chuàng)作于2023年2月第74頁,課件共155頁,創(chuàng)作于2023年2月例:讀入數(shù)據(jù)文件bluesky3.wav(內(nèi)容為男聲“藍(lán)天,白云”),加入線性趨勢項(xiàng)x=0.00001+0.00002*n,并消除該趨勢項(xiàng)clearall;clc;closeall;filedir=[];%指定文件路徑filename='bluesky3.wav';%指定文件名fle=[filedirfilename];[s,fs]=wavread(fle);%讀入數(shù)據(jù)文件t=(0:length(s)-1)/fs;%設(shè)置時間N=length(s);n=0:N-1;x=0.00001+0.00002*n;y=x'+s;第75頁,課件共155頁,創(chuàng)作于2023年2月subplot(411)plot(s);subplot(412)plot(y);y=detrend(y);%消除線性趨勢項(xiàng)y=y/max(abs(y));%幅值歸一化subplot413;plot(t,x,'k');%畫出帶有趨勢項(xiàng)的語音信號xtitle('趨勢項(xiàng)');xlabel('時間/s');ylabel('幅值');subplot414;plot(t,y,'k');%畫出消除趨勢項(xiàng)的語音信號yxlabel('時間/s');ylabel('幅值');title('消除趨勢項(xiàng)的語音信號');第76頁,課件共155頁,創(chuàng)作于2023年2月第77頁,課件共155頁,創(chuàng)作于2023年2月讀入數(shù)據(jù)文件redriver2.wav
,加入多項(xiàng)式趨勢項(xiàng)x=0.00002+0.00004*n;并消除該趨勢項(xiàng)課堂練習(xí):第78頁,課件共155頁,創(chuàng)作于2023年2月例:讀入數(shù)據(jù)文件bluesky3.wav(內(nèi)容為男聲“藍(lán)天,白云”),加入多項(xiàng)式趨勢項(xiàng)x=0.000001+0.000005*n+0.000000004*n.^2;并消除該趨勢項(xiàng)filedir=[];%指定文件路徑filename='bluesky3.wav';%指定文件名fle=[filedirfilename];[s,fs]=wavread(fle);%讀入數(shù)據(jù)文件N=length(s);n=0:N-1;x=0.000001+0.000005*n+0.000000004*n.^2;y=x'+s;subplot(411)plot(s);subplot(412)plot(y);第79頁,課件共155頁,創(chuàng)作于2023年2月[y,xtrend]=polydetrend(y,fs,2);%調(diào)用polydetrend消除趨勢項(xiàng)t=(0:length(s)-1)/fs;%設(shè)置時間subplot413;plot(t,x,'k');%畫出趨勢項(xiàng)line(t,xtrend,'color',[.6.6.6],'linewidth',3);%畫出趨勢項(xiàng)曲線ylim([-1.51]);title('帶趨勢項(xiàng)的語音信號');legend('帶趨勢項(xiàng)的語音信號','趨勢項(xiàng)信號',4)xlabel('時間/s');ylabel('幅值');subplot414;plot(t,y,'k');%畫出消除趨勢項(xiàng)的語音信號yxlabel('時間/s');ylabel('幅值');title('消除趨勢項(xiàng)的語音信號');第80頁,課件共155頁,創(chuàng)作于2023年2月第81頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí)2讀入數(shù)據(jù)文件redriver2.wav,加入多項(xiàng)式趨勢項(xiàng)x=0.000001+0.000002*n+0.000000003*n.^2;,并消除該趨勢項(xiàng)第82頁,課件共155頁,創(chuàng)作于2023年2月5.5語音信號的預(yù)處理二—數(shù)字濾波器第83頁,課件共155頁,創(chuàng)作于2023年2月5.5.1IIR低通、高通、帶通和帶阻濾波器設(shè)計第84頁,課件共155頁,創(chuàng)作于2023年2月1.設(shè)計IIR數(shù)字濾波器的函數(shù)[N,Wn]=buttord(Wp,Ws,Rp,Rs);%設(shè)計參數(shù)為通帶截止頻率Wp,阻帶截止Ws,通帶最大衰減Rp,阻帶最小衰減Rs的巴特沃斯濾波器。Wp,Ws為對歸一化。例如當(dāng)Wp=0.1 ,在程序中Wp=0.1。第85頁,課件共155頁,創(chuàng)作于2023年2月第86頁,課件共155頁,創(chuàng)作于2023年2月2.IIR數(shù)字濾波器的階次選擇函數(shù)第87頁,課件共155頁,創(chuàng)作于2023年2月第88頁,課件共155頁,創(chuàng)作于2023年2月例:設(shè)計一個巴特沃斯低通濾波器,它的Wp為500Hz,Ws為750Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=50dB,并畫出幅頻特性。clearall;clc;closeall;fp=500;fs=750;%設(shè)置濾波器的通帶和阻帶頻率Fs=8000;Fs2=Fs/2;%采樣頻率FsWp=fp/Fs2;Ws=fs/Fs2;%把通帶和阻帶頻率歸一化Rp=3;Rs=50;%通帶波紋和阻帶衰減[n,Wn]=buttord(Wp,Ws,Rp,Rs);%求取濾波器階數(shù)[b,a]=butter(n,Wn);%設(shè)計巴特沃斯型低通濾波器系數(shù)[db,mag,pha,grd,w]=freqz_m(b,a);%求濾波器的頻率響應(yīng)曲線plot(w*Fs2/pi,db);gridon;第89頁,課件共155頁,創(chuàng)作于2023年2月巴特沃斯低通濾波器幅頻特性第90頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí)設(shè)計一個巴特沃斯低通濾波器,它的Wp為800Hz,Ws為1000Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=40dB,并畫出幅頻特性。第91頁,課件共155頁,創(chuàng)作于2023年2月例:設(shè)計一個巴特沃斯帶通濾波器,它的Wp為[500Hz,1000Hz],Ws=[250Hz,1250Hz],為采樣頻率fs=8000Hz,Rp=3dB,Rs=50dB,并畫出幅頻特性clearall;clc;closeall;fp=[500,1000];fs=[250,1250];%設(shè)置濾波器的通帶和阻帶頻率Fs=8000;Fs2=Fs/2;%采樣頻率Wp=fp/Fs2;Ws=fs/Fs2;%把通帶和阻帶頻率歸一化Rp=3;Rs=50;%通帶波紋和阻帶衰減[n,Wn]=buttord(Wp,Ws,Rp,Rs);%求取濾波器階數(shù)[b,a]=butter(n,Wn);%設(shè)計巴特沃斯型低通濾波器系數(shù)[db,mag,pha,grd,w]=freqz_m(b,a);%求濾波器的頻率響應(yīng)曲線plot(w*Fs2/pi,db);gridon;第92頁,課件共155頁,創(chuàng)作于2023年2月巴特沃斯帶通濾波器幅頻特性第93頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):設(shè)計一個巴特沃斯帶通濾波器,它的Wp為[600Hz,900Hz],Ws=[30Hz,1300Hz],為采樣頻率fs=8000Hz,Rp=3dB,Rs=40dB,并畫出幅頻特性第94頁,課件共155頁,創(chuàng)作于2023年2月例:設(shè)計一個巴特沃斯高通濾波器,它的Wp為1000Hz,Ws=500Hz,為采樣頻率fs=8000Hz,Rp=3dB,Rs=50dB,并畫出幅頻特性clearall;clc;closeall;fp=1000;fs=500;%設(shè)置濾波器的通帶和阻帶頻率Fs=8000;Fs2=Fs/2;%采樣頻率Wp=fp/Fs2;Ws=fs/Fs2;%把通帶和阻帶頻率歸一化Rp=3;Rs=50;%通帶波紋和阻帶衰減[n,Wn]=buttord(Wp,Ws,Rp,Rs);%求取濾波器階數(shù)[b,a]=butter(n,Wn,'high');%設(shè)計巴特沃斯型高通濾波器系數(shù)[db,mag,pha,grd,w]=freqz_m(b,a);%求濾波器的頻率響應(yīng)曲線plot(w*Fs2/pi,db);gridon;第95頁,課件共155頁,創(chuàng)作于2023年2月巴特沃斯高通濾波器幅頻特性第96頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):設(shè)計一個巴特沃斯高通濾波器,它的Wp為800Hz,Ws=400Hz,為采樣頻率fs=8000Hz,Rp=3dB,Rs=30dB,并畫出幅頻特性第97頁,課件共155頁,創(chuàng)作于2023年2月例:設(shè)計一個巴特沃斯帶阻濾波器,它的Ws為[500Hz,1000Hz],Wp=[250Hz,1250Hz],為采樣頻率fs=8000Hz,Rp=3dB,Rs=50dB,并畫出幅頻特性clearall;clc;closeall;fp=[250,1250];fs=[500,1000];%設(shè)置濾波器的通帶和阻帶頻率Fs=8000;Fs2=Fs/2;%采樣頻率Wp=fp/Fs2;Ws=fs/Fs2;%把通帶和阻帶頻率歸一化Rp=3;Rs=50;%通帶波紋和阻帶衰減[n,Wn]=buttord(Wp,Ws,Rp,Rs);%求取濾波器階數(shù)[b,a]=butter(n,Wn,'stop');%設(shè)計巴特沃斯型帶阻濾波器系數(shù)[db,mag,pha,grd,w]=freqz_m(b,a);%求濾波器的頻率響應(yīng)曲線plot(w*Fs2/pi,db);gridon;第98頁,課件共155頁,創(chuàng)作于2023年2月巴特沃斯帶阻濾波器幅頻特性第99頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):設(shè)計一個巴特沃斯帶阻濾波器,它的Ws為[600Hz,9000Hz],Wp=[400Hz,1300Hz],為采樣頻率fs=8000Hz,Rp=3dB,Rs=20dB,并畫出幅頻特性第100頁,課件共155頁,創(chuàng)作于2023年2月例:設(shè)計一個切比雪夫1型低通濾波器,它的Wp為500Hz,Ws為750Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=50dB,并畫出幅頻特性。clearall;clc;closeall;fp=500;fs=750;%設(shè)置濾波器的通帶和阻帶頻率Fs=8000;Fs2=Fs/2;%采樣頻率Wp=fp/Fs2;Ws=fs/Fs2;%把通帶和阻帶頻率歸一化Rp=3;Rs=50;%通帶波紋和阻帶衰減[n,Wn]=cheb1ord(Wp,Ws,Rp,Rs);%求取濾波器階數(shù)[b,a]=cheby1(n,Rp,Wn);%設(shè)計契比雪夫II型低通濾波器系數(shù)[db,mag,pha,grd,w]=freqz_m(b,a);%求濾波器的頻率響應(yīng)曲線plot(w*Fs2/pi,db);gridon;第101頁,課件共155頁,創(chuàng)作于2023年2月切比雪夫1型低通濾波器幅頻特性第102頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):設(shè)計一個切比雪夫1型低通濾波器,它的Wp為400Hz,Ws為800Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=45dB,并畫出幅頻特性。第103頁,課件共155頁,創(chuàng)作于2023年2月例:設(shè)計一個切比雪夫2型低通濾波器,它的Wp為500Hz,Ws為750Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=50dB,并畫出幅頻特性。clearall;clc;closeall;fp=500;fs=750;%設(shè)置濾波器的通帶和阻帶頻率Fs=8000;Fs2=Fs/2;%采樣頻率Wp=fp/Fs2;Ws=fs/Fs2;%把通帶和阻帶頻率歸一化Rp=3;Rs=50;%通帶波紋和阻帶衰減[n,Wn]=cheb2ord(Wp,Ws,Rp,Rs);%求取濾波器階數(shù)[b,a]=cheby2(n,Rs,Wn);%設(shè)計契比雪夫II型低通濾波器系數(shù)[db,mag,pha,grd,w]=freqz_m(b,a);%求濾波器的頻率響應(yīng)曲線plot(w*Fs2/pi,db);gridon;第104頁,課件共155頁,創(chuàng)作于2023年2月切比雪夫2型低通濾波器幅頻特性第105頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):設(shè)計一個切比雪夫2型低通濾波器,它的Wp為400Hz,Ws為800Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=45dB,并畫出幅頻特性。第106頁,課件共155頁,創(chuàng)作于2023年2月例:設(shè)計一個橢圓型低通濾波器,它的Wp為500Hz,Ws為750Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=50dB,并畫出幅頻特性。clearall;clc;closeall;fp=500;fs=750;%設(shè)置濾波器的通帶和阻帶頻率Fs=8000;Fs2=Fs/2;%采樣頻率Wp=fp/Fs2;Ws=fs/Fs2;%把通帶和阻帶頻率歸一化Rp=3;Rs=50;%通帶波紋和阻帶衰減[n,Wn]=ellipord(Wp,Ws,Rp,Rs);%求取濾波器階數(shù)[b,a]=ellip(n,Rp,Rs,Wn);%設(shè)計巴特沃斯型低通濾波器系數(shù)[db,mag,pha,grd,w]=freqz_m(b,a);%求濾波器的頻率響應(yīng)曲線plot(w*Fs2/pi,db);gridon;第107頁,課件共155頁,創(chuàng)作于2023年2月橢圓型低通濾波器幅頻特性第108頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):設(shè)計一個橢圓型低通濾波器,它的Wp為400Hz,Ws為800Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=45dB,并畫出幅頻特性。第109頁,課件共155頁,創(chuàng)作于2023年2月%pr5_5_1clearall;clc;closeall;fp=500;fs=750;%設(shè)置濾波器的通帶和阻帶頻率Fs=8000;Fs2=Fs/2;%采樣頻率Wp=fp/Fs2;Ws=fs/Fs2;%把通帶和阻帶頻率歸一化Rp=3;Rs=50;%通帶波紋和阻帶衰減[n,Wn]=cheb2ord(Wp,Ws,Rp,Rs);%求取濾波器階數(shù)[b,a]=cheby2(n,Rs,Wn);%設(shè)計契比雪夫II型低通濾波器系數(shù)[db,mag,pha,grd,w]=freqz_m(b,a);%求濾波器的頻率響應(yīng)曲線第110頁,課件共155頁,創(chuàng)作于2023年2月filedir=[];%指定文件路徑filename='bluesky3.wav';%指定文件名fle=[filedirfilename]%構(gòu)成路徑和文件名的字符串[s,fs]=wavread(fle);%讀入數(shù)據(jù)文件s=s-mean(s);%消除直流分量s=s/max(abs(s));%幅值歸一化N=length(s);%求出信號長度t=(0:N-1)/fs;%設(shè)置時間第111頁,課件共155頁,創(chuàng)作于2023年2月y=filter(b,a,s);%把語音信號通過濾波器wlen=200;inc=80;nfft=512;%設(shè)置幀長,幀移和nfft長win=hann(wlen);%設(shè)置窗函數(shù)d=stftms(s,win,nfft,inc);%原始信號的STFT變換fn=size(d,2);%獲取幀數(shù)frameTime=(((1:fn)-1)*inc+nfft/2)/Fs;%計算每幀對應(yīng)的時間--時間軸刻度W2=1+nfft/2;%計算頻率軸刻度n2=1:W2;freq=(n2-1)*Fs/nfft;d1=stftms(y,win,nfft,inc);%濾波后信號的STFT變換第112頁,課件共155頁,創(chuàng)作于2023年2月%作圖figure(1)plot(w/pi*Fs2,db,'k','linewidth',2)grid;axis([04000-1005]);title('低通濾波器的幅值響應(yīng)曲線')xlabel('頻率/Hz');ylabel('幅值/dB');figure(2)subplot211;plot(t,s,'k');title('純語音信號:男聲“藍(lán)天,白云”')xlabel(['時間/s'10'(a)']);ylabel('幅值')subplot212;imagesc(frameTime,freq,abs(d(n2,:)));axisxytitle('純語音信號的語譜圖')xlabel(['時間/s'10'(b)']);ylabel('頻率/Hz')第113頁,課件共155頁,創(chuàng)作于2023年2月m=256;LightYellow=[0.60.60.6];MidRed=[000];Black=[0.50.71];Colors=[LightYellow;MidRed;Black];colormap(SpecColorMap(m,Colors));figure(3)subplot211;plot(t,y,'k');title('濾波后的語音信號')xlabel(['時間/s'10'(a)']);ylabel('幅值')subplot212;imagesc(frameTime,freq,abs(d1(n2,:)));axisxytitle('濾波后語音信號的語譜圖')xlabel(['時間/s'10'(b)']);ylabel('頻率/Hz')m=256;LightYellow=[0.60.60.6];MidRed=[000];Black=[0.50.71];Colors=[LightYellow;MidRed;Black];colormap(SpecColorMap(m,Colors));ylim([01000]);第114頁,課件共155頁,創(chuàng)作于2023年2月第115頁,課件共155頁,創(chuàng)作于2023年2月第116頁,課件共155頁,創(chuàng)作于2023年2月第117頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí):1、設(shè)計一個巴特沃斯低通濾波器,它的Wp為750Hz,Ws為1000Hz,采樣頻率fs為8000Hz,Rp和Rs分別為3dB和50dB,并對bluesky3。Wav數(shù)據(jù)進(jìn)行濾波。2、設(shè)計一個橢圓型低通濾波器,它的Wp為750Hz,Ws為1000Hz,采樣頻率fs為8000Hz,Rp和Rs分別為3dB和50dB,并對bluesky3。Wav數(shù)據(jù)進(jìn)行濾波。第118頁,課件共155頁,創(chuàng)作于2023年2月5.5.2FIR低通、高通、帶通和帶阻濾波器的設(shè)計第119頁,課件共155頁,創(chuàng)作于2023年2月第120頁,課件共155頁,創(chuàng)作于2023年2月2.用窗函數(shù)設(shè)計FIR濾波器步驟第121頁,課件共155頁,創(chuàng)作于2023年2月第122頁,課件共155頁,創(chuàng)作于2023年2月第123頁,課件共155頁,創(chuàng)作于2023年2月3.用窗函數(shù)設(shè)計FIR濾波器的方法第124頁,課件共155頁,創(chuàng)作于2023年2月第125頁,課件共155頁,創(chuàng)作于2023年2月第126頁,課件共155頁,創(chuàng)作于2023年2月第127頁,課件共155頁,創(chuàng)作于2023年2月第128頁,課件共155頁,創(chuàng)作于2023年2月例:用窗函數(shù)法設(shè)計數(shù)字FIR低通濾波器,窗長N取偶數(shù):它的Wp為500Hz,Ws為1000Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=40dB,并畫出幅頻特性。通過查表,選漢寧窗:As=40;Fs=8000;Fs2=Fs/2;%阻帶最小衰減和采樣頻率fp=500;fs=1000;%通帶阻帶頻率wp=fp/Fs2*pi;ws=fs/Fs2*pi;%轉(zhuǎn)為圓頻率deltaw=ws-wp;%求取過渡帶wc=(wp+ws)/2;%求取截止頻率N0=ceil(6.2*pi/deltaw); %按漢寧窗計算所需濾波器長度N=N0+mod(N0,2);%采用第一類偶對稱濾波,窗長N為偶數(shù)h=fir1(N-1,wc/pi,hanning(N)); %用漢寧窗計算濾波器[db,mag,pha,grd,w]=freqz_m(h,1);%求濾波器的頻率響應(yīng)曲線plot(w*Fs2/pi,db);gridon;第129頁,課件共155頁,創(chuàng)作于2023年2月第130頁,課件共155頁,創(chuàng)作于2023年2月課堂練習(xí)用窗函數(shù)法設(shè)計數(shù)字FIR低通濾波器,窗長N取偶數(shù):它的Wp為600Hz,Ws為1100Hz,采樣頻率fs=8000Hz,Rp=3dB,Rs=42dB,并畫出幅頻特性。第131頁,課件共155頁,創(chuàng)作于2023年2月例:用窗函數(shù)法設(shè)計數(shù)字FIR帶通濾波器,窗長N取奇數(shù):它的Wp為[
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年飯店業(yè)主權(quán)轉(zhuǎn)讓協(xié)議
- 2024年重慶股權(quán)轉(zhuǎn)讓協(xié)議精簡
- 2024年冬季道路掃雪服務(wù)承包協(xié)議
- 2024屆安徽池州市高三年級寒假驗(yàn)收考試數(shù)學(xué)試題試卷
- 2023-2024學(xué)年浙江省效實(shí)中學(xué)高三下期末教學(xué)檢測試題數(shù)學(xué)試題試卷
- 化服務(wù)交易結(jié)算協(xié)議模板2024
- 2024年度裝修項(xiàng)目協(xié)議樣本
- 2024蝦池養(yǎng)殖權(quán)承包協(xié)議示例
- 2024掛靠項(xiàng)目管理協(xié)議樣本集萃
- 2024年天然氣服務(wù)協(xié)議范例
- 最新病歷書寫規(guī)范課件
- 一年級上冊語文全冊課件
- 《節(jié)能監(jiān)察的概念及其作用》
- 蔬菜會員卡策劃營銷推廣方案多篇
- KUKA機(jī)器人編程手冊
- DBJ53T-19-2007加芯攪拌樁技術(shù)規(guī)程
- 《樂理》課程標(biāo)準(zhǔn)(中職)
- #1機(jī)組整套啟動前質(zhì)量監(jiān)督檢查匯報材料
- 新人教版部編版二年級上冊語文期中復(fù)習(xí)課件
- 配電室綜合監(jiān)控系統(tǒng)完整方案
- 2022校園運(yùn)動會主題課件
評論
0/150
提交評論