版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 《數(shù)字信號處理課程設計》</p><p><b> 課程設計說明書</b></p><p> 系 (部) 電子與通信工程系 </p><p> 專業(yè)(班級) </p><p> 姓 名 </p&g
2、t;<p> 學 號 </p><p><b> 目錄</b></p><p><b> I.摘 要2</b></p><p><b> 1、任務與要求3</b></p><p> 2.實驗基本步驟5</p
3、><p> 2.1 語音信號的采集5</p><p> 2.2 語音信號的頻譜分析5</p><p> 2.3 設計數(shù)字濾波器和畫出其頻率響應5</p><p> 2.4 用濾波器對信號進行濾波5</p><p> 2.5 回放語音信號5</p><p> 3、程序的設計與實驗
4、仿真圖6</p><p> 3.1原始語音信號的頻譜的程序6</p><p> 3.2加噪聲的程序:7</p><p> 3.3高通濾波器設計程序:7</p><p> 3.4低通濾波器設計的程序9</p><p> 3.5帶通濾波器設計的程序11</p><p> 4工
5、作原理及仿真結果分析13</p><p> 4.1理論原理13</p><p> 4.2濾波器設計原理13</p><p> 5.結論與心得14</p><p><b> 6.參考文獻15</b></p><p><b> 摘 要</b></p>
6、;<p> 數(shù)字信號處理課程設計與《數(shù)字信號處理》課程配套,是電子、通信等專業(yè)的重要實踐環(huán)節(jié)。數(shù)字信號處理是每一個電子信息科學工作者必須掌握的重要知識。它采用計算機仿真軟件,以數(shù)值計算的方法對信號進行分析、變換、濾波、檢測、估計與識別等加工處理,以達到提取信息便于使用的目的。</p><p> 本文介紹了Matlab 軟件對信號進行基本分析和處理以及濾波器的設計與實現(xiàn)。Matlab語言是一種廣泛
7、應用于工程計算及數(shù)值分析領域的新型高級語言,Matlab功能強大、簡單易學、編程效率高,深受廣大科技工作者得喜愛。特別是Matlab還具有信號分析工具箱,不需具備很強的編程能力,就可以很方便地進行語音信號的分析、處理和設計。</p><p> 數(shù)字信號處理課程在現(xiàn)代科學中具有很大重要性及自身特點,理解與掌握課程中的基本概念、基本原理、基本分析方法,對用Matlab進行數(shù)字信號處理課程設計的思路、具有很大的幫助。
8、</p><p> 語音信號的處理與濾波的設計主要是用Matlab作為工具平臺,設計中涉及到聲音的錄制、播放、存儲和讀取,語音信號的抽樣、頻譜分析、濾波分析,濾波器的設計及語音信號的濾波,通過數(shù)字信號處理課程的理論知識的綜合運用。從實踐上初步實現(xiàn)對數(shù)字信號的處理。</p><p> 關鍵字:Matlab,濾波器,頻譜分析,語音信號</p><p><b&g
9、t; 1、任務與要求 </b></p><p><b> 2.實驗基本步驟</b></p><p> 2.1 語音信號的采集</p><p> 要求學生利用Windows下的錄音機,錄制一段自己的話音,時間在1 s內。然后在Matlab軟件平臺下,利用函數(shù)wavread對語音信號進行采樣,記住采樣頻率和采樣點數(shù)。通過wavr
10、ead函數(shù)的使用,學生很快理解了采樣頻率、采樣位數(shù)等概念。</p><p> 2.2 語音信號的頻譜分析</p><p> 要求學生首先畫出語音信號的時域波形;然后對語音號進行快速傅里葉變換,得到信號的頻譜特性,從而加深學生對頻譜特性的理解。其程序如下:</p><p> 2.3 設計數(shù)字濾波器和畫出其頻率響應</p><p> 給出
11、各濾波器的性能指標:</p><p> (1)低通濾波器性能指標 fb=1 000 Hz,fc=1 200 Hz,As=100 dB,Ap=1 dB。</p><p> (2)高通濾波器性能指標 fc=4 800 Hz,fb=5 000 Hz As=100 dB,Ap=1 dB。</p><p> (3)帶通濾波器性能指標 fb1=1 200 Hz,fb2=3
12、 000 Hz,fc1=1 000 Hz,fc2=3 200 Hz,As=100 dB,Ap=1 dB。</p><p> 要求學生用窗函數(shù)法和雙線性變換法設計上面要求的3種濾波器。在Matlab中,可以利用函數(shù)fir1設計FIR濾波器,可以利用函數(shù)butte, cheby1和ellip設計IIR濾波器;利用Matlab中的函數(shù)freqz畫出各濾波器的頻率響應。</p><p> 2.
13、4 用濾波器對信號進行濾波</p><p> 要求學生用自己設計的各濾波器分別對采集的信號進行濾波,在Matlab中,FIR濾波器利用函數(shù)fftfilt對信號進行濾波,IIR濾波器利用函數(shù)filter對信號進行濾波。</p><p> 2.5 回放語音信號</p><p> 在Matlab中,函數(shù)sound可以對聲音進行回放。其調用格式:sound(x,fs,
14、bits);可以感覺濾波前后的聲音有變化。</p><p> 3、程序的設計與實驗仿真圖</p><p> 3.1原始語音信號的頻譜的程序</p><p> 1. [x1,fs,bits]=wavread('5.wav');</p><p> sound(x1,fs,bits);</p><p>
15、; figure(1);</p><p> plot(x1);%做原始語音信號的時域圖形</p><p> title('原始語音信號');</p><p> xlabel('時間 t');</p><p> ylabel('音量 n');</p><p>
16、figure(2);</p><p> y1=fft(x1);%做length(x1)點的FFT</p><p> y1=fftshift(y1); %平移,是頻率中心為0</p><p> derta_fs = fs/length(x1); %設置頻譜的間隔,分辨率</p><p> plot([-fs/2:derta_fs: fs
17、/2-derta_fs],abs(y1));%畫出原始語音信號的頻譜圖</p><p> title('原始語音信號的頻譜');</p><p><b> gridon; </b></p><p><b> 仿真頻譜圖如下:</b></p><p> 圖3-1原始語音信號與原
18、始信號的頻譜圖</p><p> 3.2加噪聲的程序:</p><p><b> fs=22050;</b></p><p> x1=wavread('1.wav');</p><p> t=(0:length(x1)-1)/22050;</p><p> f=fs*(0
19、:1023)/2048;</p><p><b> Au=0.05;</b></p><p> d=[Au*cos(2*pi*3800*t)]'; %噪聲為3.8kHz的余弦信號</p><p><b> x2=x1+d;</b></p><p> y1=fft(x1,2048);
20、</p><p> y2=fft(x2,2048);</p><p><b> figure(1)</b></p><p> plot(t,x2)</p><p> grid on;axis tight;</p><p> title('加噪后的信號');</p&g
21、t;<p> xlabel('time(s)');</p><p> ylabel('幅度');</p><p><b> figure(2)</b></p><p> subplot(2,1,1);</p><p> plot(f,abs(y1(1:1024)))
22、;grid on;axis tight;</p><p> title('原始語音信號頻譜');</p><p> 圖3-2加噪后的信號圖</p><p> 3.3高通濾波器設計程序:</p><p> x1=wavread('1.wav');</p><p> t=(0:le
23、ngth(x1)-1)/22050;</p><p> f=fs*(0:1023)/2048;</p><p><b> Au=0.05;</b></p><p><b> fs=22050;</b></p><p> d=[Au*cos(2*pi*3800*t)]'; %噪聲為3
24、.8kHz的余弦信號</p><p><b> x2=x1+d;</b></p><p> Y=fft(x2,4096); %對信號做4096點FFT變換</p><p><b> fp=3000;</b></p><p><b> fc=2800;</b></p
25、><p><b> As=100;</b></p><p> Ap=1;fs=6500; %采樣頻率</p><p> wc=2*fc/fs; %阻帶截止頻率 </p><p> wp=2*fp/fs; %通帶截止頻率</p><p> [N,wn]=buttord(wc,wp,Ap,As)
26、; %估計濾波器最小階數(shù)</p><p> [b,a]=butter(N,wn,'high'); %設計濾波器</p><p> figure(1);</p><p> freqz(b,a,512,fs);</p><p> title('高通濾波'); </p><p>
27、x=filter(b,a,x2); %濾波</p><p> X=fft(x,4096);</p><p> figure(2);</p><p> subplot(2,1,1);</p><p> plot(abs(Y)); %濾波前信號頻譜</p><p> axis([0,4000,0,3]);<
28、/p><p> title('濾波前信號頻譜');</p><p> subplot(2,1,2);</p><p> plot(abs(X)); %濾波前信號頻譜</p><p> axis([0,4000,0,3]);</p><p> title('濾波后信號頻譜');<
29、;/p><p> figure(3);</p><p><b> plot(x);</b></p><p> title('還原語音');</p><p> sound(x); %播放語音信號</p><p> 圖3-3濾波前信號頻譜與高通濾波圖</p><
30、;p> 3.4低通濾波器設計的程序</p><p> [x1,fs,bits]=wavread('g:\5.wav');</p><p> sound(x1);</p><p> figure(1);</p><p> plot(x1);%做原始語音信號的時域圖形</p><p> t
31、itle('原始語音信號');</p><p> xlabel('時間 t');</p><p> ylabel('音量 n');</p><p> figure(2);</p><p> y1=fft(x1);%做length(x1)點的FFT</p><p>
32、 y1=fftshift(y1); %平移,是頻率中心為0</p><p> derta_fs = fs/length(x1); %設置頻譜的間隔,分辨率</p><p> plot([-fs/2:derta_fs: fs/2-derta_fs],abs(y1));%畫出原始語音號的頻譜</p><p> title('原始語音信號的頻譜')
33、;</p><p><b> grid on;</b></p><p> h=[0:1/8000:2 zeros(1,n-16001)];%取語音信號的采樣矩陣</p><p><b> t=h';%轉置</b></p><p> noise=0.04*sin(10000*pi*t)
34、;%sin函數(shù)產生噪聲</p><p> x2=x1+noise;%加噪聲</p><p> y2=fft(x2,1024);%對加噪信號做譜分析</p><p> figure(2);</p><p> subplot(2,1,1);plot(x2);title('加噪語音信號波形');%做加噪音信號波形時域圖<
35、;/p><p> subplot(2,1,2);plot(abs(y2(1:512)));axis([0 250 0 30]);title('加噪語音信號波形頻譜');%做加噪語音信號波形時域圖</p><p><b> fp=1000;</b></p><p><b> fc=1200;</b><
36、/p><p><b> As=100;</b></p><p><b> Ap=1;</b></p><p> wp=2*pi*fp/fs;</p><p> ws=2*pi*fc/fs;</p><p> [N,wn]=buttord(ws,wp,Ap,As);<
37、;/p><p> [b,a]=butter(N,wn);figure(3);</p><p> [h,w]=freqz(b,a); plot(w*8000*0.5/pi,abs(h));title('低通濾波器頻率響應');</p><p> z=filter(b,a,x2); %直接濾波實現(xiàn)</p><p> Z=f
38、ft(z,1024); %對濾波信號分析頻譜</p><p> figure(4);</p><p> subplot(2,1,1);plot(z);</p><p> title('加噪信號濾波后信號波形');%做加噪語音信號濾波后形時域圖</p><p> subplot(2,1,2);plot(abs(Z
39、(1:512)));</p><p> title('加噪信號濾波后頻譜');%做加噪語音信號濾波后頻譜圖</p><p><b> 仿真圖如下:</b></p><p> 圖3-4原始語音信號圖與頻譜圖</p><p> 3.5帶通濾波器設計的程序</p><p><
40、;b> Ft=8000; </b></p><p> Fp1=1200; </p><p><b> Fs1=1000;</b></p><p><b> Fp2=3000;</b></p><p><b> Fs2=3200;</b></p&
41、gt;<p><b> As=100;</b></p><p><b> Ap=1;</b></p><p> wp1=tan(pi*Fp1/Ft); </p><p> wp2=tan(pi*Fp2/Ft);</p><p> ws1=t
42、an(pi*Fs1/Ft);</p><p> ws2=tan(pi*Fs2/Ft);2</p><p> w=wp1*wp2/ws2;</p><p> bw=wp2-wp1;</p><p><b> wp=1;</b></p><p> ws=(wp1*wp2-w.^2)/(bw*
43、w);</p><p> [n12,wn12]=buttord(wp,ws,Ap,As,'s'); </p><p> [b12,a12]=butter(n12,wn12,'s'); </p><p> [num2,den2]=lp2bp(b12,a12,sqrt(wp1*wp2),bw);</
44、p><p> [num12,den12]=bilinear(num2,den2,0.5);</p><p> [h,w]=freqz(num12,den12); </p><p> plot(w*8000*0.5/pi,abs(h));</p><p> axis([0 4000 0 1.5]);<
45、/p><p> [y,fs,nbits]=wavread ('yes.wav');</p><p> n = length (y) ;</p><p> t=[0:1/8000:zeros(1,194431)]';</p><p> noise=0.04*sin(10000*pi*t); &l
46、t;/p><p> s=y+noise ; </p><p> S=fft(s); </p><p> z12=filter(num12,den12,s);</p><p> sound(z12);</p><p> m
47、12=fft(z12); </p><p> subplot(2,2,1);</p><p> plot(abs(S));</p><p> title('濾波前信號的頻譜');</p><p> subplot(2,2,2);</p><p> plot
48、(abs(m12));</p><p> title('濾波后信號的頻譜');</p><p> subplot(2,2,3);</p><p><b> plot(s);</b></p><p> title('濾波前信號的波形');</p><p>
49、subplot(2,2,4);</p><p> plot(z12);</p><p> title('濾波后的信號波形');</p><p><b> 仿真圖如下:</b></p><p> 圖3-5帶通濾波器濾波后的頻譜圖</p><p> 4工作原理及仿真結果分析&
50、lt;/p><p><b> 4.1理論原理</b></p><p> 本次課程設計牽扯的面很廣從信號的表示、運算及變換、系統(tǒng)的表示、運算及變換重點在于DFT變換和濾波器的設計。利用MATLAB對語音信號進行分析和處理,采集語音信號后,利用MATLAB軟件平臺進行頻譜分析;并對所采集的語音信號加入干擾噪聲,對加入噪聲的信號進行頻譜分析,設計合適的濾波器濾除噪聲,恢復原
51、信號。語音信號的“ 短時譜”對于非平穩(wěn)信號, 它是非周期的, 頻譜隨時間連續(xù)變化, 因此由傅里葉變換得到的頻譜無法獲知其在各個時刻的頻譜特性。如果利用加窗的方法從語音流中取出其中一個短斷, 再進行傅里葉變換, 就可以得到該語音的短時譜。</p><p> 4.2濾波器設計原理</p><p> 本次課程設計的重點是濾波器的設計。數(shù)字濾波器可分為無限長單位沖激響應(IIR)濾波器與有限長
52、單位沖激響應(FIR)濾波器。濾波器的系統(tǒng)函數(shù)可以表示為 </p><p> 本次試驗只設計了IIR巴特沃斯濾波器,對于數(shù)字低通、高通、帶通濾波器的設計,因為脈沖響應不變法的主要缺點是會產生頻譜混疊現(xiàn)象,使數(shù)字濾波器的頻響偏離模擬濾波器的頻響特性,通用方法為雙線性變換法。IIR的特點:(1)h(n)是無限長的。(2)結構上存在輸出到輸入的反饋,也就是結構上是遞歸型的,他的基本網絡結構有直接Ⅰ型、直接Ⅱ型、級聯(lián)型
53、和并聯(lián)型四種。常用的IIR濾波器有巴特沃思濾波器、切貝雪夫濾波器。</p><p> 在低通濾波器的設計基礎上,可以得到數(shù)字高通、帶通、帶阻濾波器的設計流程如下: </p><p> ?。?) 給定數(shù)字濾波器的設計要求(高通、帶阻、帶通) ; </p><p> ?。?) 轉換為模擬(高通、帶阻、帶通)濾波器的技術指標; </p><p>
54、 ?。?) 轉換為模擬低通濾波器的指標; </p><p> ?。?) 設計得到滿足第三步要求的低通濾波器傳遞函數(shù); </p><p> ?。?) 通過頻率轉換得到模擬(高通、帶阻、帶通)濾波器; </p><p> ?。?) 變換為數(shù)字(高通、帶阻、帶通)濾波器。</p><p><b> 5.結論與心得</b>&l
55、t;/p><p> 本次數(shù)字信號處理課程設計的時間比較長,給了我們充分的思考和獨立操作的空間。聽完老師對本次試驗的分析后,就積極的跑到圖書館借了一些相關的書籍,仔細翻閱了很多啟示。信號的錄制有很多種方法。特別是matlab自帶的錄音函數(shù),還有很多細致的功能,而我們只用了其中的一點點。對各種信號的調制和解調,開始覺的簡單,但做的時候并非如此。</p><p> 在這次的課程設計中,讓我重新認
56、識了數(shù)字信號處理這門課程的地位,它是通信系統(tǒng)的基礎,是我們專業(yè)很重要的一門課程。此次設計的濾波器的設計讓對通信系統(tǒng)有了一定的了解,不僅鍛煉了我獨立思考問題解決問題的能力,而且提高了我對所學知識的綜合應用能力。通過這次課程設計,我對matlab的操作又熟練了許多,而且還提高了我的編程能力。、</p><p><b> 參考文獻</b></p><p> [1] 現(xiàn)代
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字信號處理課程設計 (2)
- 數(shù)字信號處理課程設計2
- 數(shù)字信號處理課程設計報告 (2)
- 數(shù)字信號處理課程設計
- 數(shù)字信號處理課程設計
- 數(shù)字信號處理課程設計
- 數(shù)字信號處理課程設計
- 數(shù)字信號處理課程設計
- 數(shù)字信號處理課程設計
- 數(shù)字信號處理課程設計
- 數(shù)字信號處理課程設計報告
- 數(shù)字信號處理課程設計報告
- 數(shù)字信號處理課程設計報告
- 數(shù)字信號處理課程設計--離散時間信號處理
- 數(shù)字信號處理課程設計--使用matlab工具進行數(shù)字信號處理
- 數(shù)字信號處理課程設計-使用matlab工具進行數(shù)字信號處理
- 數(shù)字信號處理課程設計報告 (3)
- 數(shù)字信號處理(dsp)課程設計報告
- 數(shù)字信號處理課程設計項目報告
- 數(shù)字信號處理信號采樣與還原課程設計
評論
0/150
提交評論