[精品論文]語音信號(hào)分析課程設(shè)計(jì)報(bào)告-語音信號(hào)處理系統(tǒng)設(shè)計(jì)_第1頁
[精品論文]語音信號(hào)分析課程設(shè)計(jì)報(bào)告-語音信號(hào)處理系統(tǒng)設(shè)計(jì)_第2頁
[精品論文]語音信號(hào)分析課程設(shè)計(jì)報(bào)告-語音信號(hào)處理系統(tǒng)設(shè)計(jì)_第3頁
[精品論文]語音信號(hào)分析課程設(shè)計(jì)報(bào)告-語音信號(hào)處理系統(tǒng)設(shè)計(jì)_第4頁
[精品論文]語音信號(hào)分析課程設(shè)計(jì)報(bào)告-語音信號(hào)處理系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩25頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、課件之家精心整理資料-歡迎你的欣賞信號(hào)與線性系統(tǒng)課程設(shè)計(jì)報(bào)告課題三 語音信號(hào)處理系統(tǒng)設(shè)計(jì)班級(jí):姓名:學(xué)號(hào):成績:指導(dǎo)教師:日期:目 錄摘要2關(guān)鍵詞21課程設(shè)計(jì)的目的、意義32設(shè)計(jì)任務(wù)及技術(shù)指標(biāo)33 設(shè)計(jì)方案論證33.1 設(shè)計(jì)理論依據(jù)33.1.1 采樣定理33.1.2 采樣頻率33.1.3 采樣位數(shù)與采樣頻率43.2 語音信號(hào)的分析及處理方法43.2.1 語音的錄入與打開43.2.2 時(shí)域信號(hào)的FFT分析43.2.3 濾波器設(shè)計(jì)53.2.4 IIR濾波器與FIR濾波器的性能比較73.2.5語音信號(hào)特征參數(shù)提取74 設(shè)計(jì)內(nèi)容84.1語音信號(hào)分析84.1.1 原始語音信號(hào)分析84.1.2對(duì)原始信號(hào)重

2、采樣并回放94.1.3對(duì)原始信號(hào)加入干擾噪聲并分析114.1.4濾波器設(shè)計(jì)及其特性分析124.1.5對(duì)帶噪信號(hào)濾波并分析134.2 圖形用戶界面154.2.1圖形用戶界面概念154.2.2圖形用戶界面設(shè)計(jì)154.2.3圖形用戶界面制作154.2.4圖形用戶界面的設(shè)計(jì)程序164.3 對(duì)語音信號(hào)部分時(shí)域參數(shù)計(jì)算234.3.1對(duì)語音信號(hào)進(jìn)行分幀234.3.2計(jì)算語音信號(hào)的短時(shí)能量244.3.3計(jì)算語音信號(hào)的短時(shí)平均過零率254.3.4計(jì)算語音信號(hào)的短時(shí)自相關(guān)函數(shù)265 實(shí)驗(yàn)結(jié)果與分析276 總結(jié)28參考文獻(xiàn)28課題三 語音信號(hào)處理系統(tǒng)設(shè)計(jì)摘要:數(shù)字信號(hào)處理是將信號(hào)以數(shù)字方式表示并處理的理論和技術(shù)。數(shù)

3、字信號(hào)處理與模擬信號(hào)處理是信號(hào)處理的子集。數(shù)字信號(hào)處理的目的是對(duì)真實(shí)世界的連續(xù)模擬信號(hào)進(jìn)行測量或?yàn)V波。因此在進(jìn)行數(shù)字信號(hào)處理之前需要將信號(hào)從模擬域轉(zhuǎn)換到數(shù)字域,這通常通過模數(shù)轉(zhuǎn)換器實(shí)現(xiàn)。而數(shù)字信號(hào)處理的輸出經(jīng)常也要變換到模擬域,這是通過數(shù)模轉(zhuǎn)換器實(shí)現(xiàn)的。數(shù)字信號(hào)處理的算法需要利用計(jì)算機(jī)或?qū)S锰幚碓O(shè)備如數(shù)字信號(hào)處理器(DSP)和專用集成電路(ASIC)等。數(shù)字信號(hào)處理技術(shù)及設(shè)備具有靈活、精確、抗干擾強(qiáng)、設(shè)備尺寸小、造價(jià)低、速度快等突出優(yōu)點(diǎn),這些都是模擬信號(hào)處理技術(shù)與設(shè)備所無法比擬的。數(shù)字信號(hào)處理的核心算法是離散傅立葉變換(DFT),是DFT使信號(hào)在數(shù)字域和頻域都實(shí)現(xiàn)了離散化,從而可以用通用計(jì)算機(jī)

4、處理離散信號(hào)。而使數(shù)字信號(hào)處理從理論走向?qū)嵱玫氖强焖俑盗⑷~變換(FFT),F(xiàn)FT的出現(xiàn)大大減少了DFT的運(yùn)算量,使實(shí)時(shí)的數(shù)字信號(hào)處理成為可能、極大促進(jìn)了該學(xué)科的發(fā)展。MATLAB是矩陣實(shí)驗(yàn)室(Matrix Laboratory)的簡稱,和Mathematica、Maple并稱為三大數(shù)學(xué)軟件。它在數(shù)學(xué)類科技應(yīng)用軟件中在數(shù)值計(jì)算方面首屈一指。MATLAB可以進(jìn)行矩陣運(yùn)算、繪制函數(shù)和數(shù)據(jù)、實(shí)現(xiàn)算法、創(chuàng)建用戶界面、連接其他編程語言的程序等,主要應(yīng)用于工程計(jì)算、控制設(shè)計(jì)、信號(hào)處理與通訊、圖像處理、信號(hào)檢測、金融建模設(shè)計(jì)與分析等領(lǐng)域。MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達(dá)式與數(shù)學(xué)、工程中常用的形式

5、十分相似,故用MATLAB來解算問題要比用C,F(xiàn)ORTRAN等語言完相同的事情簡捷得多,并且mathwork也吸收了像Maple等軟件的優(yōu)點(diǎn),使MATLAB成為一個(gè)強(qiáng)大的數(shù)學(xué)軟件。在新的版本中也加入了對(duì)C,F(xiàn)ORTRAN,C+ ,JAVA的支持。可以直接調(diào)用,用戶也可以將自己編寫的實(shí)用程序?qū)氲組ATLAB函數(shù)庫中方便自己以后調(diào)用,此外許多的MATLAB愛好者都編寫了一些經(jīng)典的程序,用戶可以直接進(jìn)行下載就可以用。關(guān)鍵詞:語音信號(hào),MATLAB,濾波,GUI,時(shí)域參數(shù)1課程設(shè)計(jì)的目的、意義 本設(shè)計(jì)課題主要研究語音信號(hào)初步分析的軟件實(shí)現(xiàn)方法、濾波器的設(shè)計(jì)及應(yīng)用。通過完成本課題的設(shè)計(jì),擬主要達(dá)到以下

6、幾個(gè)目的:(1)了解MATLAB軟件的特點(diǎn)和使用方法。(2)掌握利用MATLAB分析信號(hào)和系統(tǒng)的時(shí)域、頻域特性的方法;(3)掌握數(shù)字濾波器的設(shè)計(jì)方法及應(yīng)用。(4)了解語音信號(hào)的特性及分析方法。(5)通過本課題的設(shè)計(jì),培養(yǎng)學(xué)生運(yùn)用所學(xué)知識(shí)分析和解決實(shí)際問題的能力。2設(shè)計(jì)任務(wù)及技術(shù)指標(biāo)設(shè)計(jì)一個(gè)簡單的語音信號(hào)分析系統(tǒng),實(shí)現(xiàn)對(duì)語音信號(hào)時(shí)域波形顯示、進(jìn)行頻譜分析,利用濾波器濾除噪聲、對(duì)語音信號(hào)的參數(shù)進(jìn)行提取分析等功能。采用MATLAB設(shè)計(jì)語言信號(hào)分析相關(guān)程序,并且利用GUI設(shè)計(jì)圖形用戶界面。具體任務(wù)是:(1)采集語音信號(hào)。(2)對(duì)原始語音信號(hào)加入干擾噪聲,對(duì)原始語音信號(hào)及帶噪語音信號(hào)進(jìn)行時(shí)頻域分析。(3

7、)針對(duì)語音信號(hào)頻譜及噪聲頻率,設(shè)計(jì)合適的數(shù)字濾波器濾除噪聲。(4)對(duì)噪聲濾除前后的語音進(jìn)行時(shí)頻域分析。(5)對(duì)語音信號(hào)進(jìn)行重采樣,回放并與原始信號(hào)進(jìn)行比較。(6)對(duì)語音信號(hào)部分時(shí)域參數(shù)進(jìn)行提取。(7)設(shè)計(jì)圖形用戶界面(實(shí)現(xiàn)以上功能)。3 設(shè)計(jì)方案論證3.1 設(shè)計(jì)理論依據(jù)3.1.1 采樣定理在進(jìn)行模擬/數(shù)字信號(hào)的轉(zhuǎn)換過程中,當(dāng)采樣頻率fs.max大于信號(hào)中,最高頻率fmax的2倍時(shí),即:fs.max=2fmax,則采樣之后的數(shù)字信號(hào)完整地保留了原始信號(hào)中的信息,一般實(shí)際應(yīng)用中保證采樣頻率為信號(hào)最高頻率的510倍;采樣定理又稱奈奎斯特定理。 1924年奈奎斯特(Nyquist)就推導(dǎo)出在理想低通信

8、道的最高大碼元傳輸速率的公式:理想低通信道的最高大碼元傳輸速率=2W*log2 N (其中W是理想低通信道的帶寬,N是電平強(qiáng)度)3.1.2 采樣頻率采樣頻率是指計(jì)算機(jī)每秒鐘采集多少個(gè)聲音樣本,是描述聲音文件的音質(zhì)、音調(diào),衡量聲卡、聲音文件的質(zhì)量標(biāo)準(zhǔn)。采樣頻率越高,即采樣的間隔時(shí)間越短,則在單位時(shí)間內(nèi)計(jì)算機(jī)得到的聲音樣本數(shù)據(jù)就越多,對(duì)聲音波形的表示也越精確。采樣頻率與聲音頻率之間有一定的關(guān)系,根據(jù)奎斯特理論,只有采樣頻率高于聲音信號(hào)最高頻率的兩倍時(shí),才能把數(shù)字信號(hào)表示的聲音還原成為原來的聲音。這就是說采樣頻率是衡量聲卡采集、記錄和還原聲音文件的質(zhì)量標(biāo)準(zhǔn)。3.1.3 采樣位數(shù)與采樣頻率采樣位數(shù)即采

9、樣值或取樣值,用來衡量聲音波動(dòng)變化的參數(shù),是指聲卡在采集和播放聲音文件時(shí)所使用數(shù)字聲音信號(hào)的二進(jìn)制位數(shù)。采樣頻率是指錄音設(shè)備在一秒鐘內(nèi)對(duì)聲音信號(hào)的采樣次數(shù),采樣頻率越高聲音的還原就越真實(shí)越自然。采樣位數(shù)和采樣率對(duì)于音頻接口來說是最為重要的兩個(gè)指標(biāo),也是選擇音頻接口的兩個(gè)重要標(biāo)準(zhǔn)。無論采樣頻率如何,理論上來說采樣的位數(shù)決定了音頻數(shù)據(jù)最大的力度范圍。每增加一個(gè)采樣位數(shù)相當(dāng)于力度范圍增加了6dB。采樣位數(shù)越多則捕捉到的信號(hào)越精確。對(duì)于采樣率來說你可以想象它類似于一個(gè)照相機(jī),44.1kHz意味著音頻流進(jìn)入計(jì)算機(jī)時(shí)計(jì)算機(jī)每秒會(huì)對(duì)其拍照達(dá)441000次。顯然采樣率越高,計(jì)算機(jī)攝取的圖片越多,對(duì)于原始音頻的

10、還原也越加精確。3.2 語音信號(hào)的分析及處理方法3.2.1 語音的錄入與打開在MATLAB中,y,fs,nbits=wavread(filename);用于讀取語音,采樣值放在向量y中,fs表示采樣頻率(Hz),nbits表示采樣位數(shù)。 sound(y,fs,bits); 用于對(duì)聲音的回放。向量y則就代表了一個(gè)信號(hào)(也即一個(gè)復(fù)雜的“函數(shù)表達(dá)式”)也就是說可以像處理一個(gè)信號(hào)表達(dá)式一樣處理這個(gè)聲音信號(hào)。3.2.2 時(shí)域信號(hào)的FFT分析FFT即為快速傅氏變換,是離散傅氏變換的快速算法,它是根據(jù)離散傅氏變換的奇、偶、虛、實(shí)等特性,對(duì)離散傅立葉變換的算法進(jìn)行改進(jìn)獲得的。在MATLAB的信號(hào)處理工具箱中函

11、數(shù)FFT和IFFT用于快速傅立葉變換和逆變換。函數(shù)FFT用于序列快速傅立葉變換,其調(diào)用格式為y=fft(x),其中,x是序列,y是序列的FFT,x可以為一向量或矩陣,若x為一向量,y是x的FFT且和x相同長度;若x為一矩陣,則y是對(duì)矩陣的每一列向量進(jìn)行FFT。如果x長度是2的冪次方,函數(shù)fft執(zhí)行高速基2FFT算法,否則fft執(zhí)行一種混合基的離散傅立葉變換算法,計(jì)算速度較慢。函數(shù)FFT的另一種調(diào)用格式為y=fft(x,N),式中,x,y意義同前,N為正整數(shù)。函數(shù)執(zhí)行N點(diǎn)的FFT,若x為向量且長度小于N,則函數(shù)將x補(bǔ)零至長度N;若向量x的長度大于N,則函數(shù)截短x使之長度為N;若x 為矩陣,按相同

12、方法對(duì)x進(jìn)行處理。3.2.3 濾波器設(shè)計(jì)1. 模擬濾波器設(shè)計(jì)原理(1)模擬巴特沃思濾波器原理 巴特沃斯濾波器具有單調(diào)下降的幅頻特性:在小于截止頻率的范圍內(nèi),具有最平幅度的響應(yīng),而在后,幅頻響應(yīng)迅速下降。巴特沃思低通濾波器幅度平方函數(shù)為: 式中N為濾波器階數(shù),為3dB截止角頻率。將幅度平方函數(shù)寫成s的函數(shù): 該幅度平方函數(shù)有2N個(gè)等間隔分布在半徑為的圓上的極點(diǎn), 為了形成穩(wěn)定的濾波器,取左半平面的N個(gè)極點(diǎn)構(gòu)成,即: 為使設(shè)計(jì)統(tǒng)一,將頻率歸一化,得到歸一化極點(diǎn),相應(yīng)的歸一化系統(tǒng)函數(shù)為: 多項(xiàng)式形式為: (2)模擬切比雪夫?yàn)V波器原理 切比雪夫?yàn)V波器的幅頻特性具有等波紋特性,有兩種形式,在通帶內(nèi)等波紋

13、、阻帶單調(diào)的是I型濾波器,在通帶內(nèi)單調(diào)、在阻帶內(nèi)等波紋的是II濾波器。以I型濾波器為例。切比雪夫?yàn)V波器的幅度平方函數(shù)為: 為小于1的正數(shù),表示通帶內(nèi)幅度波動(dòng)的程度。p稱為通帶截止頻率。令=/p,稱為對(duì)p的歸一化頻率。CN(x)為N階切比雪夫多項(xiàng)式。幅度平方函數(shù)的極點(diǎn)是分布在bp為長半軸,ap為短半軸的橢圓上的點(diǎn)。同樣取s平面左半平面的極點(diǎn)構(gòu)成: 進(jìn)行歸一化,得到: 其中 , 2. 模擬濾波器數(shù)字化原理將模擬濾波器轉(zhuǎn)化為數(shù)字濾波器在工程上常用的有脈沖響應(yīng)不變法和雙線性變換法。脈沖響應(yīng)不變法時(shí)一種時(shí)域上的轉(zhuǎn)換方法,它是數(shù)字濾波器的單位取樣響應(yīng)在抽樣點(diǎn)上等于模擬濾波器的單位沖激響應(yīng),即: 設(shè)模擬濾波

14、器只有單階極點(diǎn),其系統(tǒng)函數(shù)為: 對(duì)進(jìn)行拉氏反變換得到,對(duì)進(jìn)行等間隔抽樣,得到,對(duì)進(jìn)行Z變換,得到數(shù)字濾波器系統(tǒng)函數(shù): 這種方法s和z的關(guān)系是:。該方法的優(yōu)點(diǎn)是頻率坐標(biāo)變換時(shí)線性的切數(shù)字濾波器的單位脈沖響應(yīng)完全模仿模擬濾波器的單位沖激響應(yīng),時(shí)域特性逼近好;缺點(diǎn)是會(huì)產(chǎn)生頻譜混疊現(xiàn)象,適合低通、帶通濾波器的設(shè)計(jì),不適合高通、帶阻濾波器的設(shè)計(jì)。 雙線性變換法為了克服頻譜混疊現(xiàn)象,采用非線性頻率壓縮方法,將整個(gè)頻率軸上的頻率范圍壓縮到之間,再用轉(zhuǎn)換到Z平面上。這種方法s和z的關(guān)系是:。該方法克服了頻譜混疊現(xiàn)象,但帶來了頻率坐標(biāo)變換的非線性:,由模擬濾波器系統(tǒng)函數(shù)轉(zhuǎn)換為數(shù)字濾波器系統(tǒng)函數(shù)公式為: 3.數(shù)字

15、高通、帶通、帶阻濾波器的設(shè)計(jì)這些濾波器可以借助于模擬濾波器的頻率變換設(shè)計(jì)一個(gè)所需類型的模擬濾波器, 再通過雙線性變換法將其轉(zhuǎn)換成所需類型的數(shù)字濾波器。首先確定所需類型數(shù)字濾波器的技術(shù)指標(biāo);然后將數(shù)字濾波器技術(shù)指標(biāo)按照公式轉(zhuǎn)換成所需類型濾波器的模擬域技術(shù)指標(biāo);將所需類型濾波器的模擬域技術(shù)指標(biāo)轉(zhuǎn)換成低通濾波器技術(shù)指標(biāo);設(shè)計(jì)歸一化模擬低通濾波器;去歸一化得到模擬低通濾波器的系統(tǒng)函數(shù);將模擬低通濾波器轉(zhuǎn)換為所需類型的模擬濾波器;最后通過雙線性變換法轉(zhuǎn)換成所需類型的數(shù)字濾波器。3.2.4 IIR濾波器與FIR濾波器的性能比較FIR:Finite Impulse response,有限沖擊響應(yīng)IIR:In

16、finite Impulse response,無限沖擊響應(yīng)從性能上來說,IIR濾波器傳輸函數(shù)的極點(diǎn)可位于單位圓內(nèi)的任何地方,因此可用較低的階數(shù)獲得高的選擇性,所用的存貯單元少,所以經(jīng)濟(jì)而效率高。但是這個(gè)高效率是以相位的非線性為代價(jià)的。選擇性越好,則相位非線性越嚴(yán)重。相反,F(xiàn)IR濾波器卻可以得到嚴(yán)格的線性相位,然而由于FIR濾波器傳輸函數(shù)的極點(diǎn)固定在原點(diǎn),所以只能用較高的階數(shù)達(dá)到高的選擇性;對(duì)于同樣的濾波器設(shè)計(jì)指標(biāo),F(xiàn)IR濾波器所要求的階數(shù)可以比IIR濾波器高5-10倍,結(jié)果,成本較高,信號(hào)延時(shí)也較大;如果按相同的選擇性和相同的線性要求來說,則IIR濾波器就必須加全通網(wǎng)絡(luò)進(jìn)行相位較正,同樣要大

17、增加濾波器的節(jié)數(shù)和復(fù)雜性。整體來看,IIR濾波器達(dá)到同樣效果階數(shù)少,延遲小,但是有穩(wěn)定性問題,非線性相位;FIR濾波器沒有穩(wěn)定性問題,線性相位,但階數(shù)多,延遲大。3.2.5語音信號(hào)特征參數(shù)提取1.短時(shí)能量及短時(shí)平均幅度(1)定義短時(shí)能量函數(shù)和短時(shí)平均幅度函數(shù)是基于語音信號(hào)幅度的變化。清音段幅度小,其能量集中于高頻段;濁音段幅度較大,其能量集中于低頻段。短時(shí)能量函數(shù)對(duì)信號(hào)電平值過于敏感。由于需要計(jì)算信號(hào)樣值的平方和,在實(shí)際應(yīng)用中(如定點(diǎn)設(shè)備)很容易溢出,所以可以用平均幅度函數(shù)來代替短時(shí)能量函數(shù)。短時(shí)能量函數(shù)定義: 短時(shí)平均幅度函數(shù)定義: (2)作用(a) 區(qū)分清/濁音:En、Mn大,對(duì)應(yīng)濁音;

18、En、Mn小,對(duì)應(yīng)清音。(b) 在信噪比高的情況下,能進(jìn)行有聲/無聲判決:無聲時(shí),背景噪聲的En、Mn?。挥新晻r(shí),En、Mn顯著增大。判決時(shí)可設(shè)置一個(gè)門限。2.短時(shí)平均過零率(1)過零率定義:信號(hào)跨越橫軸的情況。對(duì)于連續(xù)信號(hào),觀察語音時(shí)域波形通過橫軸的情況;對(duì)于離散信號(hào),相鄰的采樣值具有不同的代數(shù)符號(hào),也就是樣點(diǎn)改變符號(hào)的次數(shù)。 (2)短時(shí)平均過零率對(duì)于語音信號(hào),是寬帶非平穩(wěn)信號(hào),考察其短時(shí)平均過零率。 其中sgn.為符號(hào)函數(shù), (3)作用(a) 區(qū)分清/濁音:濁音平均過零率低,集中在低頻端;清音平均過零率高,集中在高頻端。(b) 從背景噪聲中找出是否有語音,以及語音的起點(diǎn)。3.短時(shí)自相關(guān)函數(shù)

19、相關(guān)函數(shù)用于確定兩個(gè)信號(hào)在時(shí)域內(nèi)的相似性。常用的物理量為自相關(guān)函數(shù)和互相關(guān)函數(shù)。當(dāng)兩個(gè)信號(hào)的互相關(guān)函數(shù)大時(shí),則說明一個(gè)信號(hào)可能是另一個(gè)信號(hào)的時(shí)間滯后或提前;當(dāng)互相關(guān)函數(shù)為0時(shí),則兩個(gè)信號(hào)完全不同。自相關(guān)函數(shù)用于研究信號(hào)本身,如波形的同步性和周期性。(1)自相關(guān)函數(shù)定義 (2)自相關(guān)函數(shù)特點(diǎn)(a) 當(dāng)時(shí)域信號(hào)為周期信號(hào)時(shí),自相關(guān)函數(shù)也是周期性函數(shù),兩者具有同樣的周期。(b) Rn(k)為偶函數(shù), Rn(k)Rn(k)(c) Rn(0)最大, Rn(0) |Rn(k)|, Rn(0)=En,對(duì)于確定信號(hào), Rn(0)是信號(hào)能量;對(duì)于隨機(jī)信號(hào)或周期信號(hào), Rn(0)是平均功率。(3)作用(a) 區(qū)分

20、清/濁音。濁音語音的自相關(guān)函數(shù)具有一定的周期性。清音語音的自相關(guān)函數(shù)不具有周期性,類似噪聲。(b) 估計(jì)濁音語音信號(hào)的周期,即估計(jì)基音周期。4 設(shè)計(jì)內(nèi)容4.1語音信號(hào)分析4.1.1 原始語音信號(hào)分析設(shè)計(jì)程序如下:x,fs,nbits=wavread(chi1.wav);fs=16000;sound(x,fs)X=fft(x);N=length(x);n=0:N-1;q=n*2*pi/N;figure(1)subplot(2,1,1);plot(x);title(original signal wave);subplot(2,1,2);plot(q/pi,abs(X); title(origin

21、al signal spectrum)結(jié)果如圖:4.1.2對(duì)原始信號(hào)重采樣并回放fs=8khz時(shí)的的程序:x,fs,nbits=wavread(chi1.wav);fs=8000;y=decimate(x,2);sound(y,fs)X=fft(y);N=length(y);n=0:N-1;q=n*2*pi/N;figure(9)subplot(2,1,1);plot(y);title(fs=8khz wave);subplot(2,1,2);plot(q/pi,abs(X); title(fs=8khz spectrum);結(jié)果如圖:fs=4khz時(shí)的程序:x,fs,nbits=wavrea

22、d(chi1.wav);y=decimate(x,4);fs=4000;sound(y,fs)X=fft(y);N=length(y);n=0:N-1;q=n*2*pi/N;figure(10)subplot(2,1,1);plot(y);title(fs=4khz wave);subplot(2,1,2);plot(q/pi,abs(X); title(fs=4khz spectrum);結(jié)果如圖:4.1.3對(duì)原始信號(hào)加入干擾噪聲并分析設(shè)計(jì)程序如下:x,fs,nbits=wavread(chi1.wav);fs=16000; n=0:length(x)-1;x1=x+0.01*cos(0.8

23、*pi*n);sound(x1,fs)X=fft(x1);N=length(x);n=0:N-1;q=n*2*pi/N;figure(2)subplot(2,1,1);plot(x1);title(signal wave with noise);subplot(2,1,2);plot(abs(X); title(signal spectrum with noise);結(jié)果如圖:4.1.4濾波器設(shè)計(jì)及其特性分析設(shè)計(jì)程序如下:wp=0.7*pi;ws=0.75*pi;Rp=1;Rs=35;Fs=16000;Ts=1/Fs;wp1=2/Ts*tan(wp/2); %將模擬指標(biāo)轉(zhuǎn)換成數(shù)字指標(biāo)ws1=2

24、/Ts*tan(ws/2); N,Wn=buttord(wp1,ws1,Rp,Rs,s); %選擇濾波器的最小階數(shù)Z,P,K=buttap(N); %創(chuàng)建butterworth模擬濾波器Bap,Aap=zp2tf(Z,P,K);b,a=lp2lp(Bap,Aap,Wn); bz,az=bilinear(b,a,Fs); %用雙線性變換法實(shí)現(xiàn)模擬濾波器到數(shù)字濾波器的轉(zhuǎn)換db,mag,pha,w=freqz_m(bz,az);figure(3)subplot(2,1,1)plot(w*Fs/(2*pi),abs(mag)gridxlabel(Hz)ylabel(fuzhi)title(Butter

25、worth)subplot(2,1,2)plot(w*Fs/(2*pi),pha)gridxlabel(Hz)ylabel(fuzhi)title(Butterworth)freqz_m函數(shù)的設(shè)計(jì)程序如下:function db,mag,pha,w=freqz_m(b,a);H,w=freqz(b,a,1000,whole); %在0-2*pi之間選取N個(gè)點(diǎn)計(jì)算頻率響應(yīng)H=(H(1:501); %頻率響應(yīng) w=(w(1:501); %頻率mag=abs(H); %響應(yīng)幅度db=20*log10(mag+eps)/max(mag); %增益pha=angle(H); %相位 結(jié)果如圖:4.1.5

26、對(duì)帶噪信號(hào)濾波并分析設(shè)計(jì)程序如下:x,fs,nbits=wavread(chi1.wav);fs=16000; n=0:length(x)-1;x1=x+0.01*cos(0.8*pi*n);wp=0.7*pi;ws=0.75*pi;Rp=1;Rs=35;Fs=16000;Ts=1/Fs;wp1=2/Ts*tan(wp/2); %將模擬指標(biāo)轉(zhuǎn)換成數(shù)字指標(biāo)ws1=2/Ts*tan(ws/2); N,Wn=buttord(wp1,ws1,Rp,Rs,s); %選擇濾波器的最小階數(shù)Z,P,K=buttap(N); %創(chuàng)建butterworth模擬濾波器Bap,Aap=zp2tf(Z,P,K);b,a

27、=lp2lp(Bap,Aap,Wn); bz,az=bilinear(b,a,Fs); %用雙線性變換法實(shí)現(xiàn)模擬濾波器到數(shù)字濾波器的轉(zhuǎn)換f1=filter(bz,az,x1);figure(4)subplot(2,1,1)plot(f1); %畫出濾波后的時(shí)域圖title(signal wave after filter);sound(f1,fs); %播放濾波后的信號(hào)F0=fft(f1);N=length(x);n=0:N-1;q=n*2*pi/N;subplot(2,1,2)F1=plot(q/pi,abs(F0); %畫出濾波后的頻譜圖title(signal spectrum afte

28、r filter)xlabel(Hz);ylabel(fuzhi);結(jié)果如圖:42 圖形用戶界面4.2.1圖形用戶界面概念圖形用戶界面或圖形用戶接口(Graphical User Interface,GUI)是指采用圖形方式顯示的計(jì)算機(jī)操作環(huán)境用戶接口。與早期計(jì)算機(jī)使用的命令行界面相比,圖形界面對(duì)于用戶來說更為簡便易用。GUIDE是MATLAB提供的圖形用戶界面開發(fā)環(huán)境,提供了一系列用于創(chuàng)建圖形用戶界面的工具,從而簡化界面布局和編程工作。4.2.2圖形用戶界面設(shè)計(jì)1GUI設(shè)計(jì)模板在MATLAB主窗口中,選擇File菜單中的New菜單項(xiàng),再選擇其中的GUI命令,就會(huì)顯示圖形用戶界面的設(shè)計(jì)模板。M

29、ATLAB為GUI設(shè)計(jì)一共準(zhǔn)備了4種模板,分別是Blank GUI(默認(rèn)) 、GUI with Uicontrols(帶控件對(duì)象的GUI模板) 、GUI with Axes and Menu(帶坐標(biāo)軸與菜單的GUI模板)與Modal Question Dialog(帶模式問話對(duì)話框的GUI模板)。當(dāng)用戶選擇不同的模板時(shí),在GUI設(shè)計(jì)模板界面的右邊就會(huì)顯示出與該模板對(duì)應(yīng)的GUI圖形。2GUI設(shè)計(jì)窗口在GUI設(shè)計(jì)模板中選中一個(gè)模板,然后單擊OK按鈕,就會(huì)顯示GUI設(shè)計(jì)窗口。選擇不同的GUI設(shè)計(jì)模式時(shí),在GUI設(shè)計(jì)窗口中顯示的結(jié)果是不一樣的。GUI設(shè)計(jì)窗口由菜單欄、工具欄、控件工具欄以及圖形對(duì)象設(shè)計(jì)

30、區(qū)等部分組成。GUI設(shè)計(jì)窗口的菜單欄有File、Edit、View、Layout、Tools和Help 6個(gè)菜單項(xiàng),使用其中的命令可以完成圖形用戶界面的設(shè)計(jì)操作。3GUI設(shè)計(jì)窗口的基本操作在GUI設(shè)計(jì)窗口創(chuàng)建圖形對(duì)象后,通過雙擊該對(duì)象,就會(huì)顯示該對(duì)象的屬性編輯器。例如,創(chuàng)建一個(gè)Push Button對(duì)象,并設(shè)計(jì)該對(duì)象的屬性值。4.2.3 圖形用戶界面制作MATLAB中圖形用戶界面的制作有兩種方法:M文件和GUIDE,本設(shè)計(jì)采用GUIDE的方法制作GUI。1.新建一個(gè)空白GUI模板:進(jìn)入MATLAB程序界面以后執(zhí)行FileNewGUI過程,即可進(jìn)入2.選擇空白模板選項(xiàng)條,單擊OK,一個(gè)空白GUI

31、模板生成3.拖拉白色框的右下角調(diào)整界面大小,現(xiàn)在就可以開始設(shè)計(jì)GUI功能界面了。從左邊控件框選擇所需要的控件放置在GUI面板中,然后對(duì)各個(gè)控件進(jìn)行編輯,包括位置、大小、顏色、名稱以及編寫回調(diào)函數(shù)等。本設(shè)計(jì)主要用到按鈕、文本框和文本標(biāo)簽,現(xiàn)分別介紹。4.按鈕設(shè)計(jì):按鈕鍵又稱命令按鈕或按鈕,是小的長方形屏幕對(duì)象,常常在對(duì)象本身標(biāo)有文本。將鼠標(biāo)指針移至對(duì)象,單擊鼠標(biāo)按鈕執(zhí)行由回調(diào)字符串所定義的動(dòng)作。單擊空間框左側(cè)的Push Button按鈕,在圖形編輯框中確定其位置后單擊鼠標(biāo)左鍵即可放置現(xiàn)在開始編寫回調(diào)函數(shù),確定按鈕功能。在按鈕上單擊鼠標(biāo)右鍵,選擇view- callbackscallback即可在

32、M文件中找到該按鈕的回調(diào)函數(shù)位置。然后編寫功能函數(shù),本設(shè)計(jì)中該按鈕的功能是繪制原始波形,那么只需要讀取語音信號(hào)并畫出波形。文本框設(shè)計(jì):用戶可通過鍵盤輸入字符串,為程序提供參數(shù)。為使文本框能輸入數(shù)據(jù)并使用,需在function edit1_Callback(hObject, eventdata, handles)下編寫如下程序:input = str2num(get(hObject,String); if (isempty(input) set(hObject,String,0)endguidata(hObject, handles);6.文本標(biāo)簽設(shè)計(jì):顯示固定字符串,只需雙擊文本標(biāo)簽,在str

33、ing里添加文本即可。本次課程設(shè)計(jì)的最終圖形用戶界面如下圖所示:4.2.4圖形用戶界面的設(shè)計(jì)程序function varargout = system(varargin)gui_Singleton = 1;gui_State = struct(gui_Name, mfilename, . gui_Singleton, gui_Singleton, . gui_OpeningFcn, system_OpeningFcn, . gui_OutputFcn, system_OutputFcn, . gui_LayoutFcn, , . gui_Callback, );if nargin & isch

34、ar(varargin1) gui_State.gui_Callback = str2func(varargin1);endif nargout varargout1:nargout = gui_mainfcn(gui_State, varargin:);else gui_mainfcn(gui_State, varargin:);endfunction system_OpeningFcn(hObject, eventdata, handles, varargin)handles.output = hObject;guidata(hObject, handles);function varar

35、gout = system_OutputFcn(hObject, eventdata, handles) varargout1 = handles.output;%此部分實(shí)現(xiàn)原始語音信號(hào)的播放與分析function pushbutton1_Callback(hObject, eventdata, handles)global sysx,fs,nbits=wavread(sys);fs=16000;sound(x,fs)X=fft(x);N=length(x);n=0:N-1;q=n*2*pi/N;subplot(2,2,2);plot(x);title(original signal wave

36、);subplot(2,2,4);plot(q/pi,abs(X); title(original signal spectrum)%此部分實(shí)現(xiàn)采樣頻率為8khz的語音信號(hào)的播放與分析function pushbutton2_Callback(hObject, eventdata, handles)global sysx,fs,nbits=wavread(sys);fs=8000;y=decimate(x,2);sound(y,fs)X=fft(y);N=length(y);n=0:N-1;q=n*2*pi/N;figure(9)subplot(2,1,1);plot(y);title(fs=

37、8khz信號(hào)波形);subplot(2,1,2);plot(q/pi,abs(X); title(fs=8khz信號(hào)頻譜);%此部分實(shí)現(xiàn)采樣頻率為4khz的語音信號(hào)的播放與分析function pushbutton3_Callback(hObject, eventdata, handles)global sysx,fs,nbits=wavread(sys);y=decimate(x,4);fs=4000;sound(y,fs)X=fft(y);N=length(y);n=0:N-1;q=n*2*pi/N;figure(10)subplot(2,1,1);plot(y);title(fs=4kh

38、z wav);subplot(2,1,2);plot(q/pi,abs(X); title(fs=4khz spectrum);%此部分實(shí)現(xiàn)對(duì)原始語音信號(hào)添加噪聲并對(duì)加噪后的語音信號(hào)進(jìn)行分析function pushbutton4_Callback(hObject, eventdata, handles)global sysx,fs,nbits=wavread(sys);fs=16000; n=0:length(x)-1;x1=x+0.01*cos(0.8*pi*n);sound(x1,fs)X=fft(x1);N=length(x);n=0:N-1;q=n*2*pi/N;figure(2)s

39、ubplot(2,1,1);plot(x1);title(signal wave with noise);subplot(2,1,2);plot(abs(X); title(signal spectrum with noise);%此部分是巴特沃斯濾波器的設(shè)計(jì)程序function pushbutton5_Callback(hObject, eventdata, handles)global input1 input2 input3 input4wp=input1*pi;ws=input2*pi;Rp=input3;Rs=input4;Fs=16000;Ts=1/Fs;wp1=2/Ts*tan(

40、wp/2); ws1=2/Ts*tan(ws/2); N,Wn=buttord(wp1,ws1,Rp,Rs,s); Z,P,K=buttap(N); Bap,Aap=zp2tf(Z,P,K);b,a=lp2lp(Bap,Aap,Wn); bz,az=bilinear(b,a,Fs); db,mag,pha,w=freqz_m(bz,az);figure(3)subplot(2,1,1)plot(w*Fs/(2*pi),abs(mag)gridxlabel(Hz)ylabel(fuzhi)title(Butterworth)subplot(2,1,2)plot(w*Fs/(2*pi),pha)g

41、ridxlabel(Hz)ylabel(fuzhi)title(Butterworth)%此部分是對(duì)加噪信號(hào)進(jìn)行濾波并對(duì)濾波后的信號(hào)進(jìn)行分析function pushbutton6_Callback(hObject, eventdata, handles)global sysx,fs,nbits=wavread(sys);fs=16000; n=0:length(x)-1;x1=x+0.01*cos(0.8*pi*n);global input1 input2 input3 input4wp=input1*pi;ws=input2*pi;Rp=input3;Rs=input4;Fs=16000

42、;Ts=1/Fs;wp1=2/Ts*tan(wp/2); ws1=2/Ts*tan(ws/2); N,Wn=buttord(wp1,ws1,Rp,Rs,s); Z,P,K=buttap(N); Bap,Aap=zp2tf(Z,P,K);b,a=lp2lp(Bap,Aap,Wn); bz,az=bilinear(b,a,Fs); f1=filter(bz,az,x1);figure(4)subplot(2,1,1)plot(f1); %畫出濾波后的時(shí)域圖title(signal wave after filter);sound(f1,fs); %播放濾波后的信號(hào)F0=fft(f1);N=leng

43、th(x);n=0:N-1;q=n*2*pi/N;subplot(2,1,2)F1=plot(q/pi,abs(F0); %畫出濾波后的頻譜圖title(signal spectrum after filter)xlabel(Hz);ylabel(fuzhi);%此部分用于輸入通帶截止頻率wpfunction edit1_Callback(hObject, eventdata, handles)global input1input1 = str2num(get(hObject,String); if (isempty(input1) set(hObject,String,0)endguidat

44、a(hObject, handles);function edit1_CreateFcn(hObject, eventdata, handles)if ispc set(hObject,BackgroundColor,white);else set(hObject,BackgroundColor,get(0,defaultUicontrolBackgroundColor);end%此部分用于輸入阻帶截止頻率wsfunction edit2_Callback(hObject, eventdata, handles)global input2input2 = str2num(get(hObject

45、,String); if (isempty(input2) set(hObject,String,0)endguidata(hObject, handles);function edit2_CreateFcn(hObject, eventdata, handles)if ispc set(hObject,BackgroundColor,white);else set(hObject,BackgroundColor,get(0,defaultUicontrolBackgroundColor);end%此部分用于輸入通帶最小衰減Rpfunction edit3_Callback(hObject,

46、eventdata, handles)global input3input3 = str2num(get(hObject,String); if (isempty(input3) set(hObject,String,0)endguidata(hObject, handles);function edit3_CreateFcn(hObject, eventdata, handles)if ispc set(hObject,BackgroundColor,white);else set(hObject,BackgroundColor,get(0,defaultUicontrolBackgroun

47、dColor);end%此部分用于輸入阻帶最小衰減Rsfunction edit4_Callback(hObject, eventdata, handles)global input4input4 = str2num(get(hObject,String); if (isempty(input4) set(hObject,String,0)endguidata(hObject, handles);function edit4_CreateFcn(hObject, eventdata, handles)if ispc set(hObject,BackgroundColor,white);else

48、 set(hObject,BackgroundColor,get(0,defaultUicontrolBackgroundColor);end%此部分用于實(shí)現(xiàn)對(duì)任意語音信號(hào)的打開function pushbutton7_Callback(hObject, eventdata, handles)FileName,PathName = uigetfile(*.wav,Select the M-file);global sys;sys=PathName,FileName;%此部分由于對(duì)語音信號(hào)進(jìn)行分幀function pushbutton8_Callback(hObject, eventdata,

49、handles)global sysx,fs,nbits=wavread(sys);fs=16000;len=400;inc=80;f=enframe(x,len,inc);figure(5)plot(f(20,:)%此部分用于計(jì)算語音信號(hào)的短時(shí)能量function pushbutton9_Callback(hObject, eventdata, handles)global sysx,fs,nbits=wavread(sys);fs=16000;len=400;inc=80;f=enframe(x,len,inc);for i=1:196e(i)=0;endfor i=1:196 for j

50、=1:400 e(i)=e(i)+f(i,j)2; endendfigure(6) plot(e)%此部分用于計(jì)算語音信號(hào)的短時(shí)平均過零率function pushbutton10_Callback(hObject, eventdata, handles)global sysx,fs,nbits=wavread(sys);fs=16000;len=400;inc=80;f=enframe(x,len,inc);for i=1:196z(i)=0;endfor i=1:196 for j=2:400 z(i)=0.5*(z(i)+abs(sgn(f(i,j)-sgn(f(i,j-1); endendfigure(7) plot(z)%此部分用于計(jì)算語音信號(hào)的短時(shí)自相關(guān)函數(shù)function pushbutton11_Callback(hObject, eventdata, handles)global sysx,fs,nbits=wavread(sys);fs=16000;xn=x;Rn=auto_correlation(xn);figure(8)plot(Rn)4.3 對(duì)語音信號(hào)部分時(shí)域參數(shù)計(jì)算4.3.1對(duì)語音信號(hào)進(jìn)行分

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論