版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 《數(shù)字信號(hào)處理》</b></p><p><b> 課程設(shè)計(jì)報(bào)告</b></p><p> 基于MATLAB的語音去噪處理</p><p> 專 業(yè): 通信工程 </p><p> 班 級(jí): 通信1101班 </p><p>
2、; 組 次: </p><p> 基于MATLAB的語音去噪處理</p><p><b> 1、設(shè)計(jì)目的</b></p><p> ?。?)鞏固所學(xué)的數(shù)字信號(hào)處理理論知識(shí), 理解信號(hào)的采集、處理、加噪、去噪過程;</p><p> ?。?)綜合運(yùn)用專業(yè)及基礎(chǔ)知識(shí),解決實(shí)際工程技術(shù)問題的能力;&
3、lt;/p><p> ?。?)學(xué)習(xí)資料的收集與整理,學(xué)會(huì)撰寫課程設(shè)計(jì)報(bào)告。</p><p><b> 2、設(shè)計(jì)任務(wù)</b></p><p> (1)語音信號(hào)的錄制。</p><p> (2)在MATLAB平臺(tái)上讀入語音信號(hào)。</p><p> ?。?)繪制頻譜圖并回放原始語音信號(hào)。</p&
4、gt;<p> (4)利用MATLAB編程加入一段正弦波噪音,設(shè)計(jì)濾波器去噪。</p><p> ?。?)利用MATLAB編程加入一段隨機(jī)噪音信號(hào),設(shè)計(jì)FIR和IIR濾波器去噪,并分別繪制頻譜圖、回放語音信號(hào)。</p><p> ?。?)通過仿真后的圖像以及對(duì)語音信號(hào)的回放,對(duì)比兩種去噪方式的優(yōu)缺點(diǎn)。</p><p> 其大概流程框圖可如下表示:(
5、圖2-1)</p><p> 圖2-1 課程設(shè)計(jì)的流程</p><p><b> 3、設(shè)計(jì)原理</b></p><p><b> 3.1 去噪原理</b></p><p> 3.1.1 采樣定理</p><p> 在進(jìn)行模擬/數(shù)字信號(hào)的轉(zhuǎn)換過程中,當(dāng)采樣頻率fs.
6、max大于信號(hào)中,最高頻率fmax的2倍時(shí),即:fs.max>=2fmax,則采樣之后的數(shù)字信號(hào)完整地保留了原始信號(hào)中的信息,一般實(shí)際應(yīng)用中保證采樣頻率為信號(hào)最高頻率的5~10倍;采樣定理又稱奈奎斯特定理。 1924年奈奎斯特(Nyquist)就推導(dǎo)出在理想低通信道的最高大碼元傳輸速率的公式: 理想低通信道的最高大碼元傳輸速率=2W*log2 N (其中W是理想低通信道的帶寬,N是電平強(qiáng)度)為什么把采樣頻率設(shè)為8kHz?在數(shù)字通信
7、中,根據(jù)采樣定理, 最小采樣頻率為語音信號(hào)最高頻率的2倍</p><p> 頻帶為F的連續(xù)信號(hào) f(t)可用一系列離散的采樣值f(t1),f(t1±Δt),f(t1±2Δt),...來表示,只要這些采樣點(diǎn)的時(shí)間間隔Δt≤1/2F,便可根據(jù)各采樣值完全恢復(fù)原來的信號(hào)f(t)。 這是時(shí)域采樣定理的一種表述方式。 </p><p> 時(shí)域采樣定理的另一種表述方式是:當(dāng)時(shí)間
8、信號(hào)函數(shù)f(t)的最高頻率分量為fM時(shí),f(t)的值可由一系列采樣間隔小于或等于1/2fM的采樣值來確定,即采樣點(diǎn)的重復(fù)頻率f≥2fM。圖為模擬信號(hào)和采樣樣本的示意圖。 </p><p> 時(shí)域采樣定理是采樣誤差理論、隨機(jī)變量采樣理論和多變量采樣理論的基礎(chǔ)。對(duì)于時(shí)間上受限制的連續(xù)信號(hào)f(t)(即當(dāng)│t│>T時(shí),f(t)=0,這里T=T2-T1是信號(hào)的持續(xù)時(shí)間),若其頻譜為F(ω),則可在頻域上用一系列離散
9、的采樣值 </p><p><b> ?。?-1)</b></p><p> 采樣值來表示,只要這些采樣點(diǎn)的頻率間隔 </p><p><b> ?。?-2)</b></p><p> 3.1.2 采樣頻率</p><p> 采樣頻率,也稱為采樣速度或者采樣率,定義了每
10、秒從連續(xù)信號(hào)中提取并組成離散信號(hào)的采樣個(gè)數(shù),它用赫茲(Hz)來表示。采樣頻率的倒數(shù)是采樣周期或者叫作采樣時(shí)間,它是采樣之間的時(shí)間間隔。通俗的講采樣頻率是指計(jì)算機(jī)每秒鐘采集多少個(gè)聲音樣本,是描述聲音文件的音質(zhì)、音調(diào),衡量聲卡、聲音文件的質(zhì)量標(biāo)準(zhǔn)。</p><p> 采樣頻率只能用于周期性采樣的采樣器,對(duì)于非周期性采樣的采樣器沒有規(guī)則限制。 采樣頻率的常用的表示符號(hào)是 fs。 通俗的講采樣頻率是指計(jì)算機(jī)每秒鐘采集多
11、少個(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)。采樣位數(shù)和采樣率對(duì)于音頻接口來說是最為重要的兩個(gè)指標(biāo),也是選擇
12、音頻接口的兩個(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ì)于原始音頻的還原也越加精確. </p><p><b> 4、設(shè)計(jì)過程&
13、lt;/b></p><p> 4.1 語音文件在MATLAB平臺(tái)上的錄入與打開</p><p> 單擊自己的電腦開始程序,選擇所有程序,接著選擇附件,再選擇娛樂,最后選擇錄音。自己錄入“畢業(yè)設(shè)計(jì)”語音信號(hào),然后保存在MATLAB文件夾里面,命名為“wangqingtian.wav”。</p><p> 利用MATLAB中的wavread命令來讀入(采集
14、)語音信號(hào),將它賦值給某一向量。</p><p> [y,fs,bits]=wavread(' [N1 N2]);用于讀取語音,采樣值放在向量y中,fs表示采樣頻率(Hz),bits表示采樣位數(shù)。[N1 N2]表示讀取從N1點(diǎn)到N2點(diǎn)的值(若只有一個(gè)N的點(diǎn)則表示讀取前N點(diǎn)的采樣值)。</p><p> 4.2 原始語音信號(hào)頻譜分析及仿真</p><p>
15、 利用MATLAB中的wavread命令來讀入(采集)語音信號(hào),將它賦值給某一向量。再將該向量看作一個(gè)普通的信號(hào),對(duì)其進(jìn)行FFT變換實(shí)現(xiàn)頻譜分析,再依據(jù)實(shí)際情況對(duì)它進(jìn)行濾波。對(duì)于波形圖與頻譜圖(包括濾波前后的對(duì)比圖)都可以用 MATLAB畫出。我們還可以通過sound命令來對(duì)語音信號(hào)進(jìn)行回放,以便在聽覺上來感受聲音的變化。選擇設(shè)計(jì)此方案,是對(duì)數(shù)字信號(hào)處理的一次實(shí)踐。在數(shù)字信號(hào)處理的課程學(xué)習(xí)過程中,我們過多的是理論學(xué)習(xí),幾乎沒有進(jìn)行實(shí)踐
16、方面的運(yùn)用。這個(gè)課題正好是對(duì)數(shù)字語音處理的一次有利實(shí)踐,而且語音處理也可以說是信號(hào)處理在實(shí)際應(yīng)用中很大眾化的一方面。這個(gè)方案用到的軟件也是在數(shù)字信號(hào)處理中非常通用的一個(gè)軟件——MATLAB軟件。所以這個(gè)課題的設(shè)計(jì)過程也是一次數(shù)字信號(hào)處理在MATLAB中應(yīng)用的學(xué)習(xí)過程。課題用到了較多的MATLAB語句,而由于課題研究范圍所限,真正與數(shù)字信號(hào)有關(guān)的命令函數(shù)卻并不多。sound(x,fs,bits); 用于對(duì)聲音的回放。向量y則就代表了一個(gè)信
17、號(hào)(也即一個(gè)復(fù)雜的“函數(shù)表達(dá)式”)也就是說可以像處理一個(gè)信號(hào)表達(dá)式一樣處理這個(gè)聲音信號(hào)。</p><p> FFT的MATLAB實(shí)現(xiàn):</p><p> 在MATLAB的信號(hào)處理工具箱中函數(shù)FFT和IFFT用于快速傅立葉變換和逆變換。下面介紹這些函數(shù)。</p><p> 函數(shù)FFT用于序列快速傅立葉變換。</p><p> 函數(shù)的一種
18、調(diào)用格式為 y=fft(x)</p><p> 其中,x是序列,y是序列的FFT,x可以為一向量或矩陣,若x為一向量,y是x的FFT。且和x相同長(zhǎng)度。若x為一矩陣,則y是對(duì)矩陣的每一列向量進(jìn)行FFT。</p><p> 如果x長(zhǎng)度是2的冪次方,函數(shù)fft執(zhí)行高速基-2FFT算法;否則fft執(zhí)行一種混合基的離散傅立葉變換算法,計(jì)算速度較慢。</p><p> 函
19、數(shù)FFT的另一種調(diào)用格式為y=fft(x,N)</p><p> 式中,x,y意義同前,N為正整數(shù)。函數(shù)執(zhí)行N點(diǎn)的FFT。若x為向量且長(zhǎng)度小于N,則函數(shù)將x補(bǔ)零至長(zhǎng)度N。若向量x的長(zhǎng)度大于N,則函數(shù)截短x使之長(zhǎng)度為N。若x 為矩陣,按相同方法對(duì)x進(jìn)行處理。</p><p> 經(jīng)函數(shù)fft求得的序列y一般是復(fù)序列,通常要求其幅值和相位。MATLAB提供求復(fù)數(shù)的幅值和相位函數(shù):abs,an
20、gle,這些函數(shù)一般和 FFT同時(shí)使用。</p><p> 函數(shù)abs(x)用于計(jì)算復(fù)向量x的幅值,函數(shù)angle(x)用于計(jì)算復(fù)向量的相角,介于 和 之間,以弧度表示。函數(shù)unwrap(p)用于展開弧度相位角p ,當(dāng)相位角絕對(duì)變化超過 時(shí),函數(shù)把它擴(kuò)展至 。</p><p> 用MATLAB工具箱函數(shù)fft進(jìn)行頻譜分析時(shí)需注意:</p><p> ?。?)函數(shù)
21、fft返回值y的數(shù)據(jù)結(jié)構(gòu)對(duì)稱性</p><p> 一般而言,對(duì)于N點(diǎn)的x(n)序列的FFT是N點(diǎn)的復(fù)數(shù)序列,其點(diǎn)n=N/2+1對(duì)應(yīng)Nyquist頻率,作頻譜分析時(shí)僅取序列X(k)的前一半,即前N/2點(diǎn)即可。X(k)的后一半序列和前一半序列時(shí)對(duì)稱的。</p><p><b> ?。?)頻率計(jì)算</b></p><p> 若N點(diǎn)序列x(n)(n
22、=0,1,…,N-1)是在采樣頻率 下獲得的。它的FFT也是N點(diǎn)序列,即X(k)(k=0,1,2,…,N-1),則第k點(diǎn)所對(duì)應(yīng)實(shí)際頻率值為f=k*f /N.</p><p> ?。?)作FFT分析時(shí),幅值大小與FFT選擇點(diǎn)數(shù)有關(guān),但不影響分析結(jié)果。</p><p> 下面的一段程序是語音信號(hào)在MATLAB中的最簡(jiǎn)單表現(xiàn),它實(shí)現(xiàn)了語音的讀入打開,以及繪出了語音信號(hào)的波形頻譜圖。</p
23、><p> [x,fs,bits]=wavread('C:\Users\Administrator\Desktop\數(shù)字信號(hào)處理課程設(shè)計(jì)\1.wav’);</p><p> sound(x,fs,bits);</p><p> X=fft(x,4096);</p><p> magX=abs(X);</p><
24、p> angX=angle(X);</p><p> subplot(221);plot(x);title('原始信號(hào)波形');</p><p> subplot(222);plot(X); title('原始語音信號(hào)采樣后的頻譜圖‘)</p><p> subplot(223);plot(magX);title('原始
25、信號(hào)幅值');</p><p> subplot(224);plot(angX);title('原始信號(hào)相位');</p><p> 程序運(yùn)行可以聽到聲音,得到的圖形為:(</p><p> 圖4—1 原始語音波形、幅值、相位以及采樣后頻譜圖</p><p> 4.3 加噪語音信號(hào)頻譜分析及仿真</p&g
26、t;<p> (1)正弦波信號(hào)加入原始語音信號(hào)</p><p> 前面已經(jīng)介紹了MATLAB軟件相關(guān)知識(shí),那么我們?cè)趺丛跊]沒ATLAB平臺(tái)上實(shí)現(xiàn)對(duì)一段原始語音信號(hào)加入一個(gè)正弦波信號(hào)呢?</p><p> 下面一段程序?qū)崿F(xiàn)了在原始語音信號(hào)加入正弦波信號(hào)。程序見附錄5 </p><p> 分析此段程序可知,此程序是先對(duì)原始語音信號(hào)做時(shí)域波形分析和
27、頻譜分析,然后再對(duì)加噪的語音信號(hào)做時(shí)域波形分析和頻譜分析。</p><p> 首先通過MATLAB中調(diào)用和回放語音信號(hào)命令來實(shí)現(xiàn)對(duì)原始語音信號(hào)的調(diào)用和回放,程序如下:</p><p> [y,fs,bits]=wavread('C:\Users\Administrator\Desktop\數(shù)字信號(hào)處理課程設(shè)計(jì)\1.wav');</p><p>
28、 sound(y,fs)</p><p> 由于在MATLAB中,如要實(shí)現(xiàn)兩個(gè)信號(hào)的相加減,那么兩個(gè)信號(hào)的長(zhǎng)度和維度都要一樣才能相加減。程序中:n=length(y) 用于計(jì)算信號(hào)的長(zhǎng)度和選取變換的點(diǎn)數(shù)。然后用傅里葉變換到頻域:y_p=fft(y,n);通過函數(shù) f=fs*(0:n/2-1)/n;計(jì)算出對(duì)應(yīng)點(diǎn)的頻率,然后繪制出原始語音信號(hào)的時(shí)域波形和頻譜圖。圖形如下:(圖4—2)</p>&l
29、t;p> 圖4—2 原始語音信號(hào)采樣后時(shí)域波形和頻譜圖</p><p> 上段程序中,函數(shù)noise是頻率為3000Hz的正弦波信號(hào)噪音,語句y_z=y+noise實(shí)現(xiàn)了兩個(gè)信號(hào)的相加,然后繪制加噪后的語音信號(hào)時(shí)域波形和頻譜圖并回放加噪后的語音信號(hào)。加噪后的時(shí)域波形和頻譜圖如下:(圖4—3)</p><p> 圖4-3 加噪語音信號(hào)時(shí)域波形和頻譜圖</p><
30、;p> 如上所示,通過對(duì)加噪前和加噪后語音信號(hào)的圖像的對(duì)比和對(duì)語音信號(hào)回放的人耳感知可以知道,加入正弦波信號(hào)后頻譜圖和時(shí)域波形并沒有什么明顯的變化,而人耳聽到的聲音也幾乎沒有什么變化。</p><p> ?。?)隨機(jī)噪音信號(hào)加入原始語音信號(hào)</p><p> matlab函數(shù)randn:產(chǎn)生正態(tài)分布的隨機(jī)數(shù)或矩陣的函數(shù) </p><p> 產(chǎn)生均值為0,
31、方差 σ^2 = 1,標(biāo)準(zhǔn)差σ = 1的正態(tài)分布的隨機(jī)數(shù)或矩陣的函數(shù)。用法: Y = randn(n) 返回一個(gè)n*n的隨機(jī)項(xiàng)的矩陣。如果n不是個(gè)數(shù)量,將返回錯(cuò)誤信息。Y = randn(m,n) 或 Y = randn([m n]) 返回一個(gè)m*n的隨機(jī)項(xiàng)矩陣。Y = randn(m,n,p,...) 或 Y = randn([m n p...])產(chǎn)生隨機(jī)數(shù)組。
32、 Y = randn(size(A)) 返回一個(gè)和A有同樣維數(shù)大小的隨機(jī)數(shù)組。 randn返回一個(gè)每次都變化的數(shù)量。</p><p> 下面一段程序?qū)崿F(xiàn)了利用randn函數(shù)把一段隨機(jī)噪音信號(hào)加入原始語音信號(hào)的信號(hào)處理過程:見附錄2</p><p> 語句 L=length(y) n
33、oise=0.1*randn(L,2) y_z=y+noise;sound(y_z,fs)</p><p> 加噪后語音信號(hào)的時(shí)域波形、頻譜圖(圖4—4)</p><p> 圖4-4 加噪語音信號(hào)時(shí)域波形和頻譜圖</p><p> 通過對(duì)兩張圖片的對(duì)比,很明顯可以看加噪后的語音信號(hào)時(shí)域波形比原始語音信號(hào)渾濁了許多,在時(shí)間軸上可以明顯看出0—0.5S的幅值增大了
34、;通過對(duì)原始語音信號(hào)的頻譜圖與加噪后的語音信號(hào)頻譜圖的對(duì)比,也可以看出在頻率5000Hz以后的頻率幅值發(fā)生了明顯的增加。</p><p> 加噪后的語音信號(hào)在聽覺上比原始語音信號(hào)要渾濁很多,而且還有吱吱嘎嘎的混雜音。</p><p><b> 4.4 去噪及仿真</b></p><p> (1)FIR濾波器法去噪</p>&
35、lt;p> 通過對(duì)上一節(jié)中加噪語音信號(hào)和原始語音信號(hào)頻譜圖對(duì)比可以知道,噪音大部分是Hz大于5000的部分,故設(shè)計(jì)低通濾波器進(jìn)行濾波處理。接下來我們要用設(shè)計(jì)的FIR低通濾波器對(duì)上一節(jié)中加噪語音信號(hào)進(jìn)行濾波處理。</p><p> 用自己設(shè)計(jì)的FIR數(shù)字低通濾波器對(duì)加噪的語音信號(hào)進(jìn)行濾波時(shí),在Matlab中,F(xiàn)IR濾波器利用函數(shù)fftfilt對(duì)信號(hào)進(jìn)行濾波。函數(shù)fftfilt用的是重疊相加法實(shí)現(xiàn)線性卷積的
36、計(jì)算。調(diào)用格式為:y=fftfilter(h,x,M)。其中,h是系統(tǒng)單位沖擊響應(yīng)向量;x是輸入序列向量;y是系統(tǒng)的輸出序列向量;M是有用戶選擇的輸入序列的分段長(zhǎng)度,缺省時(shí),默認(rèn)的輸入向量的重長(zhǎng)度M=512。</p><p> 用設(shè)計(jì)好的FIR數(shù)字低通濾波器對(duì)加噪語音信號(hào)的濾波程序:見附錄3</p><p> 得到的圖像如下:(圖4—5)</p><p> 圖
37、4-5 FIR濾波前和濾波后波形及頻譜</p><p> 分析:從以上四圖可以很明顯和直觀的看出原始語音信號(hào)和加噪語音信號(hào)時(shí)域波形和頻譜圖的區(qū)別。加噪后的語音信號(hào)的時(shí)域波形比原始語音信號(hào)要模糊得多,頻譜圖則是在頻率5000Hz以后出現(xiàn)了明顯的變化。</p><p> 再通過濾波前的信號(hào)波形和頻譜圖的對(duì)比,可以明顯看出濾波后的波形開始變得清晰了,有點(diǎn)接近原始信號(hào)的波形圖了。濾波后信號(hào)的頻
38、譜圖也在5000Hz以后開始逐漸接近原始語音信號(hào)的頻譜圖。</p><p> 再從對(duì)語音信號(hào)的回放,人耳可以明顯辨別出加噪后的語音信號(hào)比較渾濁,還有很明顯嘎吱嘎吱的雜音在里面。濾波后,語音信號(hào)較加噪后的信號(hào)有了明顯的改善,基本可以聽清楚了,而且雜音也沒有那么強(qiáng)烈,但是聲音依然沒有原始語音信號(hào)那么清晰脆耳。</p><p> (2)IIR濾波器法去噪</p><p&g
39、t; 同樣,也設(shè)計(jì)一個(gè)IIR低通濾波器對(duì)加噪語音信號(hào)進(jìn)行內(nèi)部處理。程序見附錄4</p><p> 得到下面的圖形:如(圖4-6)</p><p> 圖4-6 IIR濾波前和濾波后波形及頻譜</p><p> 5、 MATLAB源程序?yàn)椋阂姼戒?lt;/p><p><b> 6、 數(shù)據(jù)分析</b></p>
40、<p> IIR數(shù)字濾波器采用遞歸型結(jié)構(gòu),即結(jié)構(gòu)上帶有反饋環(huán)路。IIR濾波器運(yùn)算結(jié)構(gòu)通常由延時(shí)、乘以系數(shù)和相加等基本運(yùn)算組成,可以組合成直接型、正準(zhǔn)型、級(jí)聯(lián)型、并聯(lián)型四種結(jié)構(gòu)形式,都具有反饋回路。由于運(yùn)算中的舍入處理,使誤差不斷累積,有時(shí)會(huì)產(chǎn)生微弱的寄生振蕩。 </p><p> (1)IIR數(shù)字濾波器的相位特性不好控制,對(duì)相位要求較高時(shí),需加相位校準(zhǔn)網(wǎng)絡(luò)。FIR濾波器則要求較低。</p&
41、gt;<p> ?。?)IIR濾波器運(yùn)算誤差大,有可能出現(xiàn)極限環(huán)振蕩,F(xiàn)IR相比之下運(yùn)算誤差較小,不會(huì)出現(xiàn)極限環(huán)振蕩。</p><p> ?。?)IIR幅頻特性精度很高,不是線性相位的,可以應(yīng)用于對(duì)相位信息不敏感的音頻信號(hào)上; </p><p> ?。?)與FIR濾波器的設(shè)計(jì)不同,IIR濾波器設(shè)計(jì)時(shí)的階數(shù)不是由設(shè)計(jì)者指定,而是根據(jù)設(shè)計(jì)者輸入的各個(gè)濾波器參數(shù)(截止頻率、通帶濾紋
42、、阻帶衰減等),由軟件設(shè)計(jì)出滿足這些參數(shù)的最低濾波器階數(shù)。在MATLAB下設(shè)計(jì)不同類型IIR濾波器均有與之對(duì)應(yīng)的函數(shù)用于階數(shù)的選擇。 </p><p> ?。?)IIR單位響應(yīng)為無限脈沖序列FIR單位響應(yīng)為有限的 </p><p> ?。?)FIR幅頻特性精度較之于iir低,但是線性相位,就是不同頻率分量的信號(hào)經(jīng)過FIR濾波器后他們的時(shí)間差不變。這是很好的性質(zhì)。 </p>&
43、lt;p> ?。?)IIR濾波器有噪聲反饋,而且噪聲較大,F(xiàn)IR濾波器噪聲較小。</p><p> FIR幅頻特性精度較之于iir低,但是線性相位,就是不同頻率分量的信號(hào)經(jīng)過FIR濾波器后他們的時(shí)間差不變。這是很好的性質(zhì)。</p><p><b> 7、總結(jié)</b></p><p> 語音信號(hào)處理是語音學(xué)與數(shù)字信號(hào)處理技術(shù)相結(jié)合的交
44、叉學(xué)科,課題在這里不討論語音學(xué),而是將語音當(dāng)做一種特殊的信號(hào),即一種“復(fù)雜向量”來看待。也就是說,課題更多的還是體現(xiàn)了數(shù)字信號(hào)處理技術(shù)。</p><p> 從課題的中心來看,課題“基于MATLAB的有噪聲語音信號(hào)處理”是希望將數(shù)字信號(hào)處理技術(shù)應(yīng)用于某一實(shí)際領(lǐng)域,這里就是指對(duì)語音及加噪處理。作為存儲(chǔ)于計(jì)算機(jī)中的語音信號(hào),其本身就是離散化了的向量,我們只需將這些離散的量提取出來,就可以對(duì)其進(jìn)行處理了。這一過程的實(shí)現(xiàn)
45、,用到了處理數(shù)字信號(hào)的強(qiáng)有力工具M(jìn)ATLAB。通過MATLAB里幾個(gè)命令函數(shù)的調(diào)用,很輕易的在實(shí)際語音與數(shù)字信號(hào)的理論之間搭了一座橋。</p><p> 課題的特色在于它將語音信號(hào)看作一個(gè)向量,于是就把語音數(shù)字化了。那么,就可以完全利用數(shù)字信號(hào)處理的知識(shí)來解決語音及加噪處理問題。我們可以像給一般信號(hào)做頻譜分析一樣,來對(duì)語音信號(hào)做頻譜分析,也可以較容易的用數(shù)字濾波器來對(duì)語音進(jìn)行濾波處理。通過比較加噪前后,語音的頻
46、譜和語音回放,能明顯的感覺到加入噪聲后回放的聲音與原始的語音信號(hào)有很大的不同,前者隨較尖銳的干擾嘯叫聲。從含噪語音信號(hào)的頻譜圖中可以看出含噪聲的語音信號(hào)頻譜,在整個(gè)頻域范圍內(nèi)分是布均勻。其實(shí),這正是干擾所造成的。通過濾波前后的對(duì)比,低通濾波后效果最好,高通濾波后的效果最差。由此可見,語音信號(hào)主要分布在低頻段,而噪聲主要分布在高頻段。</p><p><b> 8、收獲與體會(huì)</b><
47、/p><p> 本次課程設(shè)計(jì)選題及進(jìn)行過程中得到**老師等的悉心指導(dǎo)。對(duì)報(bào)告的書寫格式及內(nèi)容,老師多次幫助我分析思路,開拓視角。在我遇到困難的時(shí)候,老師給予我最大的支持和鼓勵(lì)。指導(dǎo)老師嚴(yán)謹(jǐn)求實(shí)的治學(xué)態(tài)度,踏實(shí)堅(jiān)韌的工作精神,值得我學(xué)習(xí)。在此,謹(jǐn)向**老師等致以誠摯的謝意。同時(shí)還要感謝我的同學(xué),尤其是我們同一課題的搭檔,我們花費(fèi)課很多的時(shí)間和精力。相互之間幫忙協(xié)作,上網(wǎng)搜索相關(guān)資料,到圖書館查閱相關(guān)文獻(xiàn),遇到難題,共
48、同商討。解決不了的問題,我們就像老師和其他同學(xué)虛心請(qǐng)教。最終,我們一起解決了一個(gè)又一個(gè)難題,雖然,我們有過爭(zhēng)吵,但是在真理面前,我們的行動(dòng)是一致的。在二周的課程設(shè)計(jì)過程中, 學(xué)院的機(jī)房工作人員給我們提供的便利的條件,天氣寒冷,實(shí)驗(yàn)室空調(diào)一直開放,我們覺得很溫暖,在此,表達(dá)對(duì)工作人員的謝意。在遇到課題技術(shù)難題時(shí),我和同組的同學(xué)到圖書館廣泛查閱相關(guān)資料,圖書館也熱情地老師幫助,在此,向他們表示致謝。當(dāng)然,我們也要感謝信息工程學(xué)院,感謝他們給
49、我們提供這次實(shí)習(xí)的機(jī)會(huì)。我院采取把理論知識(shí)與實(shí)踐相結(jié)合教學(xué)模式,讓學(xué)生的知識(shí)源于課堂而走出課堂,真正做到了“為了學(xué)生的一切,一切為了學(xué)生”。 </p><p> 最后,再次感謝所有幫助過我們的老師和同學(xué)!</p><p><b> 9、參考文獻(xiàn)</b></p><p> [1]樓順天,余衛(wèi).基于MATLAB的系統(tǒng)與設(shè)計(jì)——控制系統(tǒng)[M].
50、西安.西安電子科技大學(xué)出版社.</p><p> [2]云舟工作室.MATLAB教學(xué)建?;A(chǔ)教程[M].北京:人民郵電出版社,2001,7</p><p> [3]高西全,丁玉美.數(shù)字信號(hào)處理(第三版).西安:西安電子科技大學(xué)出版社</p><p> [4]張志涌,《精通MATLAB6.5》, 北京北航電子版,2002.12</p><p&
51、gt; [5]孫家廣,楊長(zhǎng)貴.,《計(jì)算機(jī)圖形學(xué)》, 清華大學(xué)出版社,1995.5</p><p> [6]閆敬文,《數(shù)字圖像處理MATLAB版》,國防工業(yè)出版社,2007.2</p><p><b> 附錄</b></p><p><b> 附錄1</b></p><p> [y,fs,b
52、its]=wavread('C:\Users\Administrator\Desktop\數(shù)字信號(hào)處理課程設(shè)計(jì)\1.wav');</p><p> sound(y,fs)</p><p> n=length(y)</p><p> y_p=fft(y,n);</p><p> f=fs*(0:n/2-1)/n;<
53、/p><p><b> figure(1)</b></p><p> subplot(2,1,1);</p><p><b> plot(y);</b></p><p> title('原始語音信號(hào)采樣后時(shí)域波形');</p><p> xlabel(&
54、#39;時(shí)間軸')</p><p> ylabel('幅值 A')</p><p> subplot(2,1,2);</p><p> plot(f,abs(y_p(1:n/2)));</p><p> title('原始語音信號(hào)采樣后的頻譜圖');</p><p>
55、xlabel('頻率Hz');</p><p> ylabel('頻率幅值');</p><p> noise=1*sin(2*pi*3000*n);</p><p> y_z=y+noise;</p><p> sound(y_z,fs)</p><p> L=length(
56、y_z);</p><p> y_zp=fft(y_z,L);</p><p> f=fs*(0:L/2-1)/L;</p><p><b> figure(2)</b></p><p> subplot(2,1,1);</p><p> plot(y_z);</p>&l
57、t;p> title('加噪語音信號(hào)時(shí)域波形');</p><p> xlabel('時(shí)間軸')</p><p> ylabel('幅值 A')</p><p> subplot(2,1,2);</p><p> plot(f,abs(y_zp(1:L/2)));</p&g
58、t;<p> title('加噪語音信號(hào)頻譜圖');</p><p> xlabel('頻率Hz');</p><p> ylabel('頻率幅值');</p><p><b> 附錄2</b></p><p> [y,fs,bits]=wavrea
59、d('C:\Users\Administrator\Desktop\數(shù)字信號(hào)處理課程設(shè)計(jì)\1.wav');</p><p> sound(y,fs)</p><p> n=length(y)</p><p> y_p=fft(y,n);</p><p> f=fs*(0:n/2-1)/n;</p><
60、;p><b> figure(1)</b></p><p> subplot(2,1,1);</p><p><b> plot(y);</b></p><p> title('原始語音信號(hào)采樣后的時(shí)域波形');</p><p> xlabel('時(shí)間軸
61、9;)</p><p> ylabel('幅值A(chǔ)')</p><p> subplot(2,1,2);</p><p> plot(f,abs(y_p(1:n/2)));</p><p> title('原始語音信號(hào)采樣后的頻譜圖');</p><p> xlabel('
62、;頻率Hz');</p><p> ylabel('頻率幅值');</p><p> L=length(y)</p><p> noise=0.1*randn(L,2);</p><p> y_z=y+noise;</p><p> sound(y_z,fs)</p>&
63、lt;p> n=length(y);</p><p> y_zp=fft(y_z,n);</p><p> f=fs*(0:n/2-1)/n;</p><p><b> figure(2)</b></p><p> subplot(2,1,1);</p><p> plot(y_
64、z);</p><p> title('加噪語音信號(hào)時(shí)域波形');</p><p> xlabel('時(shí)間軸')</p><p> ylabel('幅值A(chǔ)')</p><p> subplot(2,1,2);</p><p> plot(f,abs(y_zp(1
65、:n/2)));</p><p> title('加噪語音信號(hào)頻譜圖');</p><p> xlabel('頻率Hz');</p><p> ylabel('頻率幅值');</p><p><b> 附錄3</b></p><p> [y
66、,fs,bits]=wavread(C:\Users\Administrator\Desktop\數(shù)字信號(hào)處理課程設(shè)計(jì)\1.wav');</p><p> sound(y,fs)</p><p> n=length(y)</p><p> y_p=fft(y,n);</p><p> f=fs*(0:n/2-1)/n;<
67、/p><p><b> figure(1)</b></p><p> subplot(2,1,1);</p><p><b> plot(y);</b></p><p> title('原始語音信號(hào)采樣后的時(shí)域波形');</p><p> xlabel(
68、'時(shí)間軸')</p><p> ylabel('幅值A(chǔ)')</p><p> subplot(2,1,2);</p><p> plot(f,abs(y_p(1:n/2)));</p><p> title('原始語音信號(hào)采樣后的頻譜圖');</p><p>
69、xlabel('頻率Hz');</p><p> ylabel('頻率幅值');</p><p> L=length(y)</p><p> noise=0.1*randn(L,2);</p><p> y_z=y+noise;</p><p> sound(y_z,fs)&l
70、t;/p><p> n=length(y);</p><p> y_zp=fft(y_z,n);</p><p> f=fs*(0:n/2-1)/n;</p><p><b> figure(2)</b></p><p> subplot(2,1,1);</p><p&g
71、t; plot(y_z);</p><p> title('加噪語音信號(hào)時(shí)域波形');</p><p> xlabel('時(shí)間軸')</p><p> ylabel('幅值A(chǔ)')</p><p> subplot(2,1,2);</p><p> plot(f
72、,abs(y_zp(1:n/2)));</p><p> title('加噪語音信號(hào)頻譜圖');</p><p> xlabel('頻率Hz');</p><p> ylabel('頻率幅值');</p><p><b> Ft=5000;</b></p>
73、;<p><b> Fp=1000;</b></p><p><b> Fs=1200;</b></p><p> wp=2*Fp/Ft;</p><p> ws=2*Fs/Ft;</p><p><b> rp=1;</b></p>&l
74、t;p><b> rs=50;</b></p><p> p=1-10.^(-rp/20);</p><p> s=10.^(-rs/20);</p><p> fpts=[wp ws];</p><p> mag=[1 0];</p><p> dev=[p s];</p
75、><p> [n21,wn21,beta,ftype]=kaiserord(fpts,mag,dev);</p><p> b21=fir1(n21,wn21,Kaiser(n21+1,beta));</p><p> [h,w]=freqz(b21,1);</p><p> plot(w/pi,abs(h));</p>&
76、lt;p> title('FIR低通濾波器');</p><p> x=fftfilt(b21,y_z);</p><p> X=fft(x,n);</p><p> figure(4);</p><p> subplot(2,2,1);plot(f,abs(y_zp(1:n/2)));</p>
77、<p> title('濾波前信號(hào)的頻譜');</p><p> subplot(2,2,2);plot(f,abs(X(1:n/2)));</p><p> title('濾波后信號(hào)的頻譜');</p><p> subplot(2,2,3);plot(y_z);</p><p> tit
78、le('濾波前信號(hào)的時(shí)域波形')</p><p> subplot(2,2,4);plot(x);</p><p> title('濾波后信號(hào)的時(shí)域波形')</p><p> sound(x,fs,bits)</p><p><b> 附錄4</b></p><
79、p><b> Ft=8000;</b></p><p><b> Fp=1000;</b></p><p><b> Fs=1200;</b></p><p> wp=2*pi*Fp/Ft;</p><p> ws=2*pi*Fs/Ft;</p>
80、<p> fp=2*Ft*tan(wp/2);</p><p> fs=2*Fs*tan(wp/2);</p><p> [n11,wn11]=buttord(wp,ws,1,50,'s'); %求低通濾波器的階數(shù)和截止頻率</p><p> [b11,a11]=butter(n11,wn11,'s');
81、 %求S域的頻率響應(yīng)的參數(shù)</p><p> [num11,den11]=bilinear(b11,a11,0.5); %雙線性變換實(shí)現(xiàn)S域到Z域的變換</p><p> [h,w]=freqz(num11,den11); %根據(jù)參數(shù)求出頻率響應(yīng)</p><p> plot(w*8000*0.5/pi,abs(h));</p>&
82、lt;p> legend('用切比雪夫lchoby1設(shè)計(jì)');</p><p><b> grid;</b></p><p> [y,fs,nbits]=wavread ('C:\Users\Administrator\Desktop\數(shù)字信號(hào)處理課程設(shè)計(jì)\1.wav');</p><p> n =
83、 length (y) ; %求出語音信號(hào)的長(zhǎng)度</p><p> noise=0.01*randn(n,2); %隨機(jī)函數(shù)產(chǎn)生噪聲</p><p> s=y+noise; %語音信號(hào)加入噪聲</p><p> S=fft(s);
84、 %傅里葉變換</p><p> z11=filter(num11,den11,s);</p><p> sound(z11);</p><p> m11=fft(z11); %求濾波后的信號(hào)</p><p> subplot(2,2,1);</p><p&g
85、t; plot(abs(S),'g');</p><p> title('濾波前信號(hào)的頻譜');</p><p><b> grid;</b></p><p> subplot(2,2,2);</p><p> plot(abs(m11),'r');</p&
86、gt;<p> title('濾波后信號(hào)的頻譜');</p><p><b> grid;</b></p><p> subplot(2,2,3);</p><p><b> plot(s);</b></p><p> title('濾波前信號(hào)的波形&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--基于 matlab 的語音去噪處理
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--語音信號(hào)濾波去噪
- 數(shù)字信號(hào)處理課程設(shè)計(jì)---基于matlab的語音信號(hào)濾波處理
- 基于matlab的語音信號(hào)濾波處理——數(shù)字信號(hào)處理課程設(shè)計(jì)
- 基于matlab的語音信號(hào)濾波處理——數(shù)字信號(hào)處理課程設(shè)計(jì)
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--基于matlab有噪聲語音信號(hào)處理
- 基于matlab的數(shù)字信號(hào)處理課程設(shè)計(jì)
- 數(shù)字信號(hào)課程設(shè)計(jì)--語音數(shù)字信號(hào)處理與分析及matlab實(shí)現(xiàn)
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--基于matlab的數(shù)字圖像處理
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--使用matlab工具進(jìn)行數(shù)字信號(hào)處理
- 數(shù)字信號(hào)處理課程設(shè)計(jì)-使用matlab工具進(jìn)行數(shù)字信號(hào)處理
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--基于 matlab 的音樂信號(hào)處理和分析
- 基于matlab的數(shù)字信號(hào)處理與分析課程設(shè)計(jì)
- 《數(shù)字信號(hào)處理》課程設(shè)計(jì)--基于matlab的音樂信號(hào)處理和分析
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--用matlab對(duì)語音信號(hào)進(jìn)行分析及處理
- 數(shù)字信號(hào)處理課程設(shè)計(jì)報(bào)告
- 數(shù)字信號(hào)處理課程設(shè)計(jì)--語音信號(hào)的處理與濾波
- 數(shù)字信號(hào)處理課程設(shè)計(jì)報(bào)告
- 數(shù)字信號(hào)課程設(shè)計(jì)--數(shù)字信號(hào)處理
- 數(shù)字信號(hào)處理課程設(shè)計(jì)-基于fir的有噪聲語音信號(hào)處理
評(píng)論
0/150
提交評(píng)論