語音信號的頻譜分析和FIR濾波器的設(shè)計_第1頁
語音信號的頻譜分析和FIR濾波器的設(shè)計_第2頁
語音信號的頻譜分析和FIR濾波器的設(shè)計_第3頁
語音信號的頻譜分析和FIR濾波器的設(shè)計_第4頁
語音信號的頻譜分析和FIR濾波器的設(shè)計_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、 目     錄1 緒論 1.課題背景.(2) 2.本次課程設(shè)計的目的.(2)2 設(shè)計原理及實(shí)驗(yàn)工具 1.設(shè)計原理 (1)采樣頻率、位數(shù)及采樣定理.(3) (2)時域信號的FFT分析.(4) (3)基于窗函數(shù)的FIR數(shù)字濾波器設(shè)計法.(4) 2.實(shí)驗(yàn)工具.(5) 三仿真程序及頻譜分析 1.語音信號的頻譜分析.(5) 2.FFT頻譜分析.(7) 3.FIR數(shù)字低通濾波器的設(shè)計.(8) 4.FIR數(shù)字高通濾波器的設(shè)計.(10) 5.FIR數(shù)字帶通濾波器的設(shè)計.(13) 6.保存濾波后的聲音文件.(15)五設(shè)計總結(jié).(15)六參考文獻(xiàn).(16)1 緒

2、論1. 課題背景隨著信息時代和數(shù)字世界的到來,數(shù)字信號處理己成為當(dāng)今一門極其重要的學(xué)科和技術(shù)領(lǐng)域,數(shù)字信號處理在通信、語音、圖像、自動控制、醫(yī)療和家用電器等眾多領(lǐng)域得到了廣泛的應(yīng)用。任意一個信號都具有時域與頻域特性,信號的頻譜完全代表了信號,因而研究信號的頻譜就等于研究信號本身。通常從頻域角度對信號進(jìn)行分析與處理,容易對信號的特性獲得深入的了解。因此,信號的頻譜分析是數(shù)字信號處理技術(shù)中的一種較為重要的工具。在工程領(lǐng)域中,MATLAB是一種倍受程序開發(fā)人員青睞的語言,對于一些需要做大量數(shù)據(jù)運(yùn)算處理的復(fù)雜應(yīng)用以及某些復(fù)雜的頻譜分析算法MATLAB顯得游刃有余。2. 本次課程設(shè)計的目的(1) 掌握傅

3、里葉變換的物理意義,深刻理解傅里葉變換的內(nèi)涵(2) 了解matlab對聲音信號的處理指令(3)聊二級計算機(jī)存儲信號的方式及語音信號的特點(diǎn)(4)加深對采樣定理的理解(5)加深對信號分析工程應(yīng)用的理解,拓展學(xué)生在信號分析領(lǐng)域的綜合應(yīng)用能力(6)掌握用窗函數(shù)法設(shè)計FIR數(shù)字濾波器的原理和方法(7)掌握FIR濾波器的快速卷積實(shí)現(xiàn)原理。(8)學(xué)會調(diào)用MATLAB函數(shù)設(shè)計與實(shí)現(xiàn)FIR濾波器二實(shí)驗(yàn)原理、工具1.實(shí)驗(yàn)原理(1)采樣頻率、位數(shù)及采樣定理 采樣頻率:定義了每秒從連續(xù)信號中提取并組成離散信號的采樣個數(shù),用赫茲(Hz)來表示。采樣頻率的倒數(shù)是采樣周期,它是采樣之間的時間間隔,是指計算機(jī)每秒鐘采集多少個

4、聲音樣本,是描述聲音文件的音質(zhì)、音調(diào),衡量聲卡、聲音文件的質(zhì)量標(biāo)準(zhǔn),采樣頻率越高,即采樣的時間間隔越短,則在單位時間內(nèi)計算機(jī)得到的聲音樣本數(shù)據(jù)就越多,對聲音波形的表示也越精確。 采樣位數(shù):數(shù)值越大,解析度越高,錄制的回放的聲音數(shù)就越真實(shí)。由于語音信號是一種連續(xù)變化的模擬信號,而計算機(jī)只能處理和記錄二進(jìn)制的數(shù)字信號,因此,由自然音而得的音頻信號必須經(jīng)過采樣、量化和編碼,變成二進(jìn)制數(shù)據(jù)后才能送到計算機(jī)進(jìn)行再編輯和存儲。語音信號輸出時,則與上述過程相反,用計算機(jī)的聲音編輯工具進(jìn)行語音信號的錄制時,已經(jīng)利用了計算機(jī)上的A/D轉(zhuǎn)換器,將模擬的聲音信號轉(zhuǎn)化成離散的量化了的數(shù)字信號。話音時,量化了的數(shù)字信號

5、又通過D/A轉(zhuǎn)換器,把保存起來的數(shù)字?jǐn)?shù)據(jù)恢復(fù)成原來的模擬的語音信號采樣定理:采樣就是利用抽樣脈沖序列從連續(xù)信號中抽取一系列離散樣值構(gòu)成抽樣信號。抽樣的意義就在于能夠從抽樣信號中無失真地恢復(fù)元連續(xù)信號。在進(jìn)行模擬/數(shù)字信號的轉(zhuǎn)換過程中,當(dāng)采樣頻率不小于信號中最高頻率fm的2倍時,即fs>=2fm,則采樣之后的數(shù)字信號完整地保留了原始信號中的信息。(2) 時域信號的FFT分析 信號的頻譜分析就是計算機(jī)信號的傅里葉變換。FFT是一種時域和頻域均離散化的變換,是DFT的一種快速算法,是對變換式進(jìn)行一次次分解,使其成為若干小數(shù)據(jù)點(diǎn)的組合,從而減少運(yùn)算量。當(dāng)所處理的數(shù)據(jù)的長度為2的冪次時,采用基-2

6、算法進(jìn)行計算,計算速度會顯著增加。 FFT函數(shù)調(diào)用方式:1.Y=FFT(X); 2.YFFT(X,N); 3.YFFT(X,dim)或YFFT(X,N,dim)。(3) 基于窗函數(shù)的FIR數(shù)字濾波器設(shè)計法 用一定寬度窗函數(shù)截取無限脈沖響應(yīng)序列,獲得有限長的脈沖響應(yīng)序列,從而得到FIR濾波器,它是在時域進(jìn)行的由理想濾波器的頻率響應(yīng)推導(dǎo)出其單位沖激響應(yīng),再設(shè)計一個FIR數(shù)字濾波器的單位沖激響應(yīng)h(n)去逼近,它表示,由此得到的離散濾波器的系統(tǒng)傳遞函數(shù)為無限長序列,因此是物理不可實(shí)現(xiàn)的。為了使系統(tǒng)變?yōu)槲锢砜蓪?shí)現(xiàn),且使實(shí)際的FIR濾波器頻率響應(yīng)盡可能逼近理想濾波器的頻響特性,采用窗函數(shù)將無限脈沖響應(yīng)截

7、取一段h(n)來近似表示,可得。從而有:式中N表示窗口長度,這樣H(z)就是物理可實(shí)現(xiàn)的系統(tǒng)。并且從線性相位FIR濾波器的充要條件可知,為了獲得線性相位FIR數(shù)字濾波器的脈沖響應(yīng)h(n),那么h(n)應(yīng)有t=(N-1)/2的延遲,由于窗函數(shù)的選擇對結(jié)果起著重要的作用,針對不同的信號和不同的處理目的來確定窗函數(shù)的選擇才能收到良好的效果。2. 實(shí)驗(yàn)工具:MATLAB 7.03 設(shè)計過程1. 語音信號的頻譜分析(1) 利用錄音軟件錄制一段自己的聲音,保存為.wav格式,并將其保存在matlab的工作空間work中。Save and run ,得出頻譜分析圖(2) 程序:x1,fs,bits=wavr

8、ead('C:MATLAB7worksy.wav'); %讀取語音信號的數(shù)據(jù),賦給變量x1 figure(1) plot(x1) %做原始語音信號以44.1k采樣后的時域圖形 title('原始語音采樣后時域信號'); xlabel('時間軸 n'); ylabel('幅值 A'); figure(2) freqz(x1) %繪制原始語音信號采樣后的頻率響應(yīng)圖 title('原始語音信號采樣后頻率響應(yīng)圖'); x1,fs,bits=wavread('sy.wav'); %讀取語音信號的數(shù)據(jù),賦給變量

9、x1 sound(x1,fs); %播放語音信號 (3)頻譜圖2. FFT頻譜分析(1) 程序:x1,fs,bits=wavread('sy.wav'); %讀取語音信號的數(shù)據(jù),賦給變量x1y1=fft(x1,1024); %對采樣后信號做1024點(diǎn)FFT變換f=fs*(0:511)/1024;figure(1)subplot(2,1,1);plot(f,abs(y1(1:512);title('原始語音信號頻譜')xlabel('頻率/Hz');ylabel('幅值')subplot(2,1,2);plot(abs(y1(1:1

10、024) %采樣后信號的FFT頻譜圖title('原始語音信號FFT頻譜')xlabel('點(diǎn)數(shù)N');ylabel('幅值');(2) 頻譜圖3.FIR數(shù)字低通濾波器的設(shè)計(1)程序:fs=10000;x1=wavread('sy.wav');wp=2*pi*1000/fs;ws=2*pi*1200/fs;Rp=1;Rs=100;wdelta=ws-wp;N=ceil(8*pi/wdelta); %取整wn=(wp+ws)/2;b,a=fir1(N,wn/pi,hamming(N+1); %選擇窗函數(shù),并歸一化截止頻率figur

11、e(1)freqz(b,a,512);title('FIR低通濾波器');f2=filter(b,a,x1);figure(2)subplot(2,1,1)plot(x1)title('FIR低通濾波器濾波前的時域波形');subplot(2,1,2)plot(f2);title('FIR低通濾波器濾波后的時域波形');sound(f2,7000); %播放濾波后的語音信號F0=fft(f2,1024);f=fs*(0:511)/1024;figure(3)y2=fft(x1,1024);subplot(2,1,1);plot(f,abs(y2(

12、1:512);title('FIR低通濾波器濾波前的頻譜')xlabel('頻率/Hz');ylabel('幅值');subplot(2,1,2)F2=plot(f,abs(F0(1:512);title('FIR低通濾波器濾波后的頻譜')xlabel('頻率/Hz');ylabel('幅值');(2) 頻譜圖4. FIR高通濾波器的設(shè)計(1)程序fs=22050;x1=wavread('sy.wav');wp=2*pi*5000/fs;ws=2*pi*4800/fs;Rp=1;Rs

13、=100;wdelta=wp-ws;N=ceil(8*pi/wdelta); %取整wn=(wp+ws)/2;b,a=fir1(N,wn/pi,'high'); figure(1)freqz(b,a,512);title('FIR高通濾波器');f2=filter(b,a,x1);figure(2)subplot(2,1,1)plot(x1)title('FIR高通濾波器濾波前的時域波形');subplot(2,1,2)plot(f2);title('FIR高通濾波器濾波后的時域波形');sound(f2,20000); %播放濾

14、波后的語音信號F0=fft(f2,1024);f=fs*(0:511)/1024;figure(3)y2=fft(x1,1024);subplot(2,1,1);plot(f,abs(y2(1:512);title('FIR高通濾波器濾波前的頻譜')xlabel('頻率/Hz');ylabel('幅值');subplot(2,1,2)F2=plot(f,abs(F0(1:512);title('FIR高通濾波器濾波后的頻譜')xlabel('頻率/Hz');ylabel('幅值');(2) 頻譜圖5

15、. FIR帶通濾波器的設(shè)計(1) 程序fs=22050;x1=wavread('sy.wav');wp1=2*pi*1200/fs;wp2=2*pi*3000/fs;ws1=2*pi*1000/fs;ws2=2*pi*3200/fs;Rp=1;Rs=100;wp=(wp1+ws1)/2;ws=(wp2+ws2)/2;wdelta=wp1-ws1;N=ceil(8*pi/wdelta); %取整wn=wp ws;b,a=fir1(N,wn/pi,'bandpass'); figure(1)freqz(b,a,512);title('FIR帶通濾波器'

16、;);f2=filter(b,a,x1);figure(2)subplot(2,1,1)plot(x1)title('FIR帶通濾波器濾波前的時域波形');subplot(2,1,2)plot(f2);title('FIR帶通濾波器濾波后的時域波形');sound(f2,10000); %播放濾波后的語音信號F0=fft(f2,1024);f=fs*(0:511)/1024;figure(3)y2=fft(x1,1024);subplot(2,1,1);plot(f,abs(y2(1:512);title('FIR帶通濾波器濾波前的頻譜')xla

17、bel('頻率/Hz');ylabel('幅值');subplot(2,1,2)plot(f,abs(F0(1:512);title('FIR帶通濾波器濾波后的頻譜')xlabel('頻率/Hz');ylabel('幅值');(2) 頻譜圖4.在程序最后添加wavwrite(f2,'保存的名字')語句5 設(shè)計總結(jié) 本文主要是基于高級面向?qū)ο箝_發(fā)語言MATLAB的基本特征,以及MATLAB強(qiáng)大的工具箱功能,實(shí)現(xiàn)信號的預(yù)處理和頻譜分析。通過做應(yīng)用Matlab對語音信號進(jìn)行譜分析及濾波這個課程設(shè)計,加深了

18、我對數(shù)字信號處理理論知識,尤其是采樣頻率,頻譜特性和數(shù)字濾波器的設(shè)計;另一方面,使我在原來熟悉控制系統(tǒng)在Matlab運(yùn)用的基礎(chǔ)上進(jìn)一步學(xué)習(xí)Matlab軟件在信號分析和處理的運(yùn)用。在整個課程設(shè)計過程中,從分析設(shè)計題目到設(shè)計程序框圖再到具體的程序代碼的編寫,使我對課程設(shè)計有了比較熟悉的了解。分析課題題目:應(yīng)用Matlab對語音信號進(jìn)行譜分析及濾波,考慮到幾個方面的內(nèi)容:(1)加強(qiáng)對Matlab基礎(chǔ)知識的學(xué)習(xí),尤其是Matlab在信號處理方面的學(xué)習(xí),(通過實(shí)例說明,基于MATLAB可以很好的達(dá)到對語音信號的頻譜的分析處理。)這就需要多方面查找資料,如上互聯(lián)網(wǎng),圖書館等;(2)加強(qiáng)學(xué)習(xí)信號處理知識理論,尤其是FFT頻譜變換理論和各種數(shù)字濾波器設(shè)計理論;(3)要突出重點(diǎn),其重點(diǎn)是譜分析和數(shù)字

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論