綜合設計報告課程設計基于MATLAB的語音信號錄制采集和分析的程序設計_第1頁
綜合設計報告課程設計基于MATLAB的語音信號錄制采集和分析的程序設計_第2頁
綜合設計報告課程設計基于MATLAB的語音信號錄制采集和分析的程序設計_第3頁
綜合設計報告課程設計基于MATLAB的語音信號錄制采集和分析的程序設計_第4頁
綜合設計報告課程設計基于MATLAB的語音信號錄制采集和分析的程序設計_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、i學號:0809121055 20112012-學年 第 1 學期 綜合設計報告綜合設計報告題題 目:目:語音信號頻譜分析及濾波簡介 班班 級:級: 08 級電子信息班 姓姓 名:名: 指導教師:指導教師: 成成 績:績: 電氣工程系 2011 年 11 月 16 日ii課課 程程 設設 計計 任任 務務 書書學生班級: 08 電子信息班 學生姓名: 學號: 設計名稱:應用應用 matlabmatlab 對語音信號進行頻譜分析及濾波簡介對語音信號進行頻譜分析及濾波簡介起止日期: 2011 年 11 月 7 日至 2011 年 11 月 18 日 指導教師: 王銀花 摘要摘要隨著計算機和信息科學

2、的飛速發(fā)展,數字信號處理逐漸發(fā)展成為一門獨立的學科,成為信息科學的重要組成部分,在語音處理、雷達、圖像處理、通信、生物醫(yī)學工程等眾多領域中得到廣泛應用。 matlab 語言是一種廣泛應用于工程計算及數值分析領域的新型高級語言,matlab 功能強大、簡單易學、編程效率高,深受廣大科技工作者的喜愛。特別是 matlab 還具有信號分析工具箱,不需具備很強的編程能力,就可以很方便地進行語音信號分析、處理和設計。語音信號的抽樣、頻譜分析,濾波器的設計及語音信號的濾波,通過數字信號處理課程的理論知識的綜合運用。從實踐上初步實現對數字信號的處理。關鍵詞: 語音處理 抽樣 頻譜分析 濾波器目目 錄錄摘要摘

3、要.第一節(jié) 設計要求.1第二節(jié) 設計方案.1第二章第二章 語音信號的采集及加噪語音信號的采集及加噪.2第一節(jié) 語音信號的錄制.2第二節(jié) 語音信號的時域分析.3第三節(jié) 語音信號加噪和頻譜分析.5第三章第三章 濾波器設計濾波器設計.7第一節(jié) fir 和 iir 數字濾波器的選擇.7第二節(jié) 用 fir 濾波器語音信號進行濾波 .9一 濾波器的程序設計.9二 濾波前后信號比較.10第三節(jié) 比較回放語音信號 .12第四章第四章 心得體會心得體會.13參考文獻參考文獻.141第一章 課程設計方案提出第一節(jié)第一節(jié) 設計要求設計要求要求錄制一段的語音信號后,在 matlab 軟件中采集語音信號、回放語音信號并

4、畫出語音信號的時域波形和頻譜圖;對所采集的信號加入干擾噪聲,對加入噪聲進行播放,并進行時域和頻譜分析;對比及早前后的時域圖和頻譜圖,分析討論采用什么的濾波器進行濾除噪聲。第二節(jié)第二節(jié) 設計方案設計方案windows 自帶的錄音機聲音麥克風聲卡濾波采樣a/d 轉換 wav 圖 1.1 語音信號錄制流程圖首先,錄制一段語音信號(如圖 1.1);然后,利用 matlab 中的 wavread 命令來讀入(采集)語音信號,將它賦值給某一向量。再將該向量看作一個普通的信號,對其進行 fft 變換實現頻譜分析;隨后,利用 matlab 中的隨機函數(rand 或 randn)產生噪聲加入到語音信號中,模仿

5、語音信號被污染,并對其頻譜分析。最后;再依據實際情況對它進行濾波。對于波形圖與頻譜圖(包括濾波前后的對比圖)都可以用 matlab 畫出。我們還可以通過 sound 命令來對語音信號進行回放,以便在聽覺上來感受聲音的變化。2第二章第二章 語音信號的采集及加噪語音信號的采集及加噪第一節(jié)第一節(jié) 語音信號的錄制語音信號的錄制利用 pc 機上的聲卡和 windows 操作系統(tǒng)可以進行數字信號的采集。將話筒輸入計算機的語音輸入插口上,啟動錄音機。按下錄音按鈕,接著對話筒說話“語音信號處理”,說完后停止錄音,屏幕左側將顯示所錄聲音的長度,點擊放音按鈕,可以實現所錄音的重現。以文件名“shijiebei”保

6、存入 d: matlab work 中。文件存儲器的后綴默認為. wav ,這是 windows 操作系統(tǒng)規(guī)定的聲音文件存的標準。具體操作如下:a.打開 開始/程序/附件/娛樂/錄音機(如圖 3.1); 圖 3.1 b.用 windows media player 播放一首音樂并用 mic 對著耳機錄音或自已說話錄音(按鍵) ,到 10 秒時停止(按鍵) (如圖 3.1) ;3 圖 3.2 圖 3.3 c.將錄制文件加存為 d:/matlab7/work 中,文件名為shijiebei.wav(如圖 3.2、圖 3.3 和圖 3.4) ; 圖 3.4 第二節(jié)第二節(jié) 語音信號的時域分析語音信號的

7、時域分析在matlab軟件平臺下,利用matlab中的“wavread”命令來讀入(采集)語音信號,將它賦值給某一向量。再對其進行采樣,記住采樣頻率和采樣點數。通過使用wavread函數,可以深入理解采樣頻率、采樣位數等概念,下面介紹wavread 函數幾種調用格式。(1)y=wavread(file) ;讀取 file 所規(guī)定的 wav 文件,返回采樣值放在向量 y 中。(2)y,fs,nbits=wavread(file) ;采樣值放在向量 y 中,fs 表4示采樣頻率(hz) ,nbits 表示采樣位數。(3)y=wavread(file,n) ;讀取錢 n 點的采樣值放在向量 y 中。

8、(4)y=wavread(file,n1,n2) ;讀取從 n1 到 n2 點的采樣值放在向量 y 中。接下來,對語音信號 shijiebei.wav 進行采樣。其采樣程序如下: y,fs,nbits=wavered (e:shejishijiebei);即把語音信號加載入 matlab 仿真軟件平臺中。然后,畫出語音信號的時域波形,再對語音信號進行頻譜分析。matlab 提供了快速傅里葉變換算法 fft 計算 dft 的函數 fft,其調用格式如下:xk=fft(xn,n)參數 xn 為被變換的時域序列向量,n 是 dft 變換區(qū)間長度,當 n大于 xn 的長度時,fft 函數自動在 xn

9、后面補零。 ,當 n 小于 xn 的長度時,fft 函數計算 xn 的前 n 個元素,忽略其后面的元素。在本次設計中,我們利用 fft 對語音信號進行快速傅里葉變換,就可以得到信號的頻譜特性。其程序如下:y,fs,nbits=wavread ( e:shejishijiebei);sound(y,fs,nbits); %回放語音信號n= length (y) ; %求出語音信號的長度y=fft(y,n); %傅里葉變換subplot(2,1,1);plot(y);title(原始信號波形);5subplot(2,1,2);plot(abs(y);title(原始信號頻譜)程序運行結果如下圖:0

10、12345678x 104-1-0.500.51信 信 信 信 信 信 信 信 信012345678x 1040500100015002000信 信 信 信 信 信 信圖3.5 原始信號波形及頻譜第三節(jié)第三節(jié) 語音信號加噪和頻譜分析語音信號加噪和頻譜分析matlab 中產生高斯白噪聲非常方便,有兩個產生高斯白噪聲的兩個函數 。我們可以直接應用兩個函數:一個是 wgn,另一個是awgn。wgn 用于產生高斯白噪聲,awgn 則用于在某一信號中加入高斯白噪聲。也可直接用 randn 函數產生高斯分布序列。在本次課程設計中,我們是利用 matlab 中的隨機函數(rand 或randn)產生噪聲加入

11、到語音信號中,模仿語音信號被污染,并對其頻譜6分析。randn 函數有兩種基本調用格式:randn(n)和 randn(m,n),前者產生 nn 服從標準高斯分布的隨機數矩陣,后者產生 mn 的隨機數矩陣。在這里,我們選用 randn(m,n)函數。語音信號添加噪聲及其頻譜分析的主要程序如下:y,fs,nbits=wavread ( e:shejishijiebei);n = length (y) ; %求出語音信號的長度noise=0.01*randn(n,2); %隨機函數產生噪聲si=y+noise; %語音信號加入噪聲 sound(si);subplot(2,1,1);plot(si)

12、;title(加噪語音信號的時域波形);s=fft(si); %傅里葉變換subplot(2,1,2);plot(abs(s); title(加噪語音信號的頻域波形);程序運行結果如下圖:7圖3.6 加噪后的波形及頻譜分析第三章第三章 濾波器設計濾波器設計第一節(jié)第一節(jié) fir 和和 iir 數字濾波器數字濾波器的選擇的選擇iir 濾波器和 fir 濾波器的設計方法完全不同。iir 濾波器設計方法有間接法和直接法,間接法是借助于模擬濾波器的設計方法進行的。其設計步驟是:先設計過渡模擬濾波器得到系統(tǒng)函數 h(s) ,然后將h(s)按某種方法轉換成數字濾波器的系統(tǒng)函數 h(z)。fir 濾波器必須采

13、用間接法,常用的方法有窗函數法、頻率采樣發(fā)和切比雪夫等波紋逼近法。對于線性相位濾波器,經常采用 fir 濾波器。數字濾波器種類很多,根據其實現的網絡結構或者其沖激響應函數8的時域特性,可分為兩種,即有限沖激響應( fir,finite impulse response)濾波器和無限沖激響應( iir,infinite impulse response)濾波器。fir濾波器結構上主要是非遞歸結構,沒有輸出到輸入的反饋 ,系統(tǒng)函數h (z)在極點處收斂,極點全部在 z = 0處(因果系統(tǒng)) ,因而只能用較高的階數達到高的選擇性。 fir數字濾波器的幅頻特性精度較之于iir數字濾波器低,但是線性相位

14、,就是不同頻率分量的信號經過fir濾波器后他們的時間差不變,這是很好的性質。 fir數字濾波器是有限的單位響應也有利于對數字信號的處理,便于編程,用于計算的時延也小,這對實時的信號處理很重要。 fir濾波器因具有系統(tǒng)穩(wěn)定,易實現相位控制,允許設計多通帶(或多阻帶)濾波器等優(yōu)點收到人們的青睞。iir濾波器采用遞歸型結構,即結構上帶有反饋環(huán)路。iir濾波器運算結構通常由延時、乘以系數和相加等基本運算組成,可以組合成直接型、正準型、級聯型、并聯型四種結構形式,都具有反饋回路。同時,iir數字濾波器在設計上可以借助成熟的模擬濾波器的成果,如巴特沃斯、契比雪夫和橢圓濾波器等,在設計一個iir數字濾波器時

15、,我們根據指標先寫出模擬濾波器的公式,然后通過一定的變換,將模擬濾波器的公式轉換成數字濾波器的公式。下面我們著重介紹用窗函數法設計 fir 濾波器的步驟。如下:(1)根據對阻帶衰減及過渡帶的指標要求,選擇串窗數類型(矩形窗、三角窗、漢寧窗、漢明窗、凱塞窗等) ,并估計窗口長度 n。先按照阻帶衰減選擇窗函數類型。原則是在保證阻帶衰減滿足要求的情況下,盡量選擇主瓣的窗函數。(2)構造希望逼近的頻率響應函數。9(3)計算 h(n).。(4)加窗得到設計結果。接下來,我們根據語音信號的特點給出有關濾波器的技術指標:低通濾波器的性能指標:fp=1000hz,fc=1200hz,as=100db ,ap=

16、1db高通濾波器的性能指標:fp=3500hz,fc=4000hz,as=100db,ap=1db;帶通濾波器的性能指標:fp1=1200hz,fp2=3000hz,fc1=1000hz,fc2=3200hz,as=100db,ap=1db在 matlab 中,可以利用函數 fir1 設計 fir 濾波器,利用函數butter,cheby1 和 ellip 設計 iir 濾波器,利用 matlab 中的函數 freqz 畫出各步步器的頻率響應。hn=fir1(m,wc,window),可以指定窗函數向量 window。如果缺省 window 參數,則 fir1 默認為哈明窗。其中可選的窗函數有

17、rectangular barlrtt hamming hann blackman 窗,其相應的都有實現函數。函數 butter,cheby1 和 ellip 設計 iir 濾波器時都是默認的雙線性變換法,所以在設計濾波器時只需要代入相應的實現函數即可第二節(jié)第二節(jié) 用用 fir 濾波器語音信號進行濾波濾波器語音信號進行濾波一一 濾波器的程序設計濾波器的程序設計由頻譜圖可以看出信號能量集中在低頻部分,為了減少無用的高頻分量我設計了以下的 fir 低通濾波器將其濾除。10該設計采用窗函數法(漢明窗)來完成以下指標的低通濾波器。通帶截頻 fp=3000hz,阻帶截頻 fs=3500hz,通帶最大衰減

18、 0.3db,阻帶最小衰減 50db,采樣頻率 fs 為信號源采樣頻率 22050hz。源程序如下:wp=3000*2*pi;ws=3500*2*pi;ap=0.3;as=50;fs=22050;wp=wp/fs;ws=ws/fs; %歸一化通帶截頻,阻帶截頻wdelta=ws-wp; %過渡帶寬%由阻帶最小衰減指標確定選用漢明窗,并確定其階數n=ceil(6.6*pi/wdelta) nw=n; n=0:n-1;m=n-alpha+eps;%理想濾波器脈沖響應wc=(wp+ws)/2; %理想截頻 hd=sin(wc*m)./(pi*m); %采用漢明窗設計win=hamming(nw);h

19、=hd.*win; b=h; h,f=freqz(b,1,512,fs); %繪制濾波器的幅頻響應圖plot(f,20*log10(abs(h)xlabel(頻率);ylabel(幅度);title(濾波器幅頻特性);grid on;幅頻特性曲線如下所示:11020004000600080001000012000-120-100-80-60-40-20020信 信信 信信 信 信 信 信 信 信圖 3.7 濾波器幅頻特性曲線二二 濾波前后信號比較濾波前后信號比較源程序如下:x,fs,bits=wavread( e:shejishijiebei );%信號讀取sound(x,fs);y=fftf

20、ilt(b,y); %濾波輸出figure(2)subplot(2,1,1); plot(x),title(輸入信號)%繪制輸入信號subplot(2,1,2);plot(y) % 繪制輸出信號xlabel(時間/s),title(輸出信號)sound(y,fs);%輸入輸出頻譜x=fft(x);y=fft(y);12figure(3);subplot(2,1,1);plot(abs(x);xlabel(頻率);ylabel(幅度);title(輸入信號頻譜);grid on;subplot(2,1,2);plot(abs(y);xlabel(頻率);ylabel(幅度);title(輸出信號

21、頻譜);grid on;時域圖如下:012345678x 104-1-0.500.51信 信 信 信012345678x 104-1-0.500.51信 信 /s信 信 信 信圖 3.8 原信號與濾波后時域波形比較頻譜圖如下 1040500100015002000信 信信 信信 信 信 信 信 信012345678x 1040500100015002000信 信信 信信 信 信 信 信 信圖 3.9 原信號與濾波后信號頻譜圖比較第三節(jié)第三節(jié) 比較回放語音信號比較回放語音信號經過以上的加噪聲濾波處理后,可在 matlab 中用函數 sound 對聲音進行回放。其調用格式:sound(y,fs),sound(y)和 sound(y,fs,bits)??梢圆煊X濾波前后的聲音有明顯的變化。通過上面的頻譜圖可以很清晰地觀察到經過濾波后與濾波前存在明顯差別,濾波后的頻譜比加噪語音信號的頻譜清晰,濾波后的聲音顯得比較低沉,因為原始信號經過低

溫馨提示

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

最新文檔

評論

0/150

提交評論