用MATLAB實現(xiàn)語音信號的時域分析.doc_第1頁
用MATLAB實現(xiàn)語音信號的時域分析.doc_第2頁
用MATLAB實現(xiàn)語音信號的時域分析.doc_第3頁
用MATLAB實現(xiàn)語音信號的時域分析.doc_第4頁
用MATLAB實現(xiàn)語音信號的時域分析.doc_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

實驗一、用MATLAB實現(xiàn)語音信號的時域分析1. 實驗?zāi)康挠^察并驗證語音信號的時域特性,理解并掌握典型的語音信號時域分析方法和時域特征,為深入學(xué)習(xí)語音信號處理的各種應(yīng)用奠定基礎(chǔ)。2. MATLAB程序代碼(1) 由麥克風(fēng)采集語音數(shù)據(jù),將采集的數(shù)據(jù)存成WAV文件(采樣率為8000Hz),存在本人的文件夾中。所用程序代碼為:clear;close all;Fs=8000;y=wavrecord(5*Fs,Fs,double);wavwrite(y,f:a);soundview(y,Fs,name) (2)讀取WAV文件,顯示語音信號的波形。所用程序代碼為:x = wavread(f:a.wav);figure;plot(x);axis(0,size(x,1),-0.35,0.3); %坐標(biāo)軸范圍title(語音信號時域波形);xlabel(樣點數(shù)); ylabel(幅度);(3) 讀取WAV文件,計算并顯示語音的短時能量(窗函數(shù)為矩形窗,幀長為20)。所用程序代碼為:x = wavread(f:a.wav); x = double(x);f = enframe(x,20, 100); energy = sum(abs(f), 2); subplot(2,2,1);plot(x); axis(0,size(x,1),-0.7,0.9);title(語音信號時域波形);xlabel(樣點數(shù)); ylabel(幅度);subplot(2,2,2);plot(energy); title(語音信號的短時能量); legend(幀長LEN = 20);f = enframe(x,20, 200); energy = sum(abs(f), 2); subplot(2,2,3);plot(energy); title(語音信號的短時能量); legend(幀長LEN = 100);f = enframe(x,20, 400); energy = sum(abs(f), 2); subplot(2,2,4);plot(energy); title(語音信號的短時能量); legend(幀長LEN = 200); (4)讀取WAV文件,計算并顯示語音的短時過零率(窗函數(shù)為矩形窗,幀長為256,幀移為128),所用程序代碼為:x = wavread(f:a.wav); x = double(x);LEN =100;INC=100;f = enframe(x, LEN, INC); %分幀% 計算短時過零率z = zeros(size(f,1),1); difs =0.01; for i=1:size(f,1)s=f(i,:); for j=1:(length(s)-1)if s(j)* s(j+1)difs; z(i)= z(i)+1;endendendsubplot(2,1,1); plot(x); axis(0,size(x,1),-0.35,0.3);title(語音信號時域波形); xlabel(樣點數(shù)); ylabel(幅度);subplot(2,1,2);plot(z); title(語音信號的短時過零率);xlabel(幀數(shù)); ylabel(短時過零率);(5) 讀取WAV文件,當(dāng)窗函數(shù)為矩形窗、幀長為20時,計算一幀濁音的短時自相關(guān)函數(shù)所用的程序代碼為: x = wavread(f:a.wav); x = double(x);LEN = 100;INC= 100;f = enframe(x, LEN, INC); ff=f(72,:); %選取一幀濁音信號 ff=ff.*rectwin(length(ff); % 計算短時自相關(guān)N=LEN; R=zeros(1,N);for k=1:NR(k)= sum(ff(k:N).*ff(1:N-k+1);endfor k=1:NR1(k)= R(k)/R(1); endsubplot(2,1,1);plot(ff); axis(0,N,-0.5,0.5)title(加矩形窗的語音幀); xlabel(樣點數(shù)); ylabel(幅度);subplot(2,1,2); plot(R1); axis(0,N,-1,1)title(加矩形窗的短時自相關(guān)函數(shù)); xlabel(k); ylabel(R(k);3. 實驗結(jié)果及其分析(1) 本實驗利用8000Hz的采樣頻率對輸入的語音信號進行采樣,采樣點數(shù)為40000個,持續(xù)時間為4秒,存儲格式為double。之后將數(shù)字語音數(shù)據(jù)寫入F盤的a.wav文件,這段波形是讀音為ke的波形,并通過放音設(shè)備進行回放?;胤诺腉UI界面如圖1所示,通過該界面可以觀察采集的語音信號。圖1 用soundview函數(shù)顯示的語音信號(2)本實驗將L盤的a.wav文件讀取出來,并顯示文件中的語音信號波形,顯示的波形如圖2所示。該波形是漢語拼音“ke”的時域波形。從圖2可以看出,K是清音,它的波形峰值較低;e是濁音,它的波形峰值較高。圖2 語音“ke”的時域波形(3) 本實驗將L盤的a.wav文件讀取出來,當(dāng)幀長取不同值時計算語音信號的短時能量,如圖3所示。從圖3可以看出,濁音短時能量大,短時平均幅度大,短時過零率低,濁音具有較強的能量值,音段內(nèi)隱藏信息的能力高。清音短時能量小,短時平均幅度小,能量值較低,音段內(nèi)隱藏信息的能力較低;圖3 不同幀長對應(yīng)的短時能量(4)本實驗首先讀取a.wav中的語音數(shù)據(jù),之后計算每一幀的短時過零率,最后將原始語音信號和短時過零率顯示出來,如圖4所示。從圖4可以看出,清音的過零率較高,濁音的過零率較低。圖4 短時過零率(5)本實驗首先讀取a.wav中的語音數(shù)據(jù),之后對數(shù)據(jù)進行分幀加窗處理,幀長為256,幀移為128。選取其中的一幀濁音(第*幀)并計算這幀的短時自相關(guān)函數(shù)。當(dāng)窗函數(shù)分別為矩形窗和漢明窗時,截取的語音信號和短時自相關(guān)函數(shù)如圖5和圖6所示。從圖5和圖6可以看出,矩形窗能夠比漢明窗更明顯的顯示出第一個峰值。當(dāng)窗函數(shù)為矩形窗,不同幀長(幀移=幀長)的一幀濁音對應(yīng)的短時自相關(guān)函數(shù)如圖7和圖8所示。從圖7和圖8可以看出,幀長越長,越容易區(qū)分其最大值。當(dāng)窗函數(shù)為矩形窗,幀長為256,幀移為128,選取一幀清音,獲得的短時自相關(guān)函數(shù)如圖9所示。從圖5和圖9可以看出,濁音具有明顯的周期性,清音無明顯周期。圖5 加矩形窗的短時

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論