譜相減MATLAB代碼以及信噪比計算_第1頁
譜相減MATLAB代碼以及信噪比計算_第2頁
譜相減MATLAB代碼以及信噪比計算_第3頁
譜相減MATLAB代碼以及信噪比計算_第4頁
譜相減MATLAB代碼以及信噪比計算_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、實驗二語音信號的頻域處理一、實驗?zāi)康?、要?1)掌握語音信號頻域分析方法(2) 了解語音信號頻域的特點(3) 了解譜減法作為頻域語音增強的原理與編程實現(xiàn)(4) 了解譜減法的缺點,并分析產(chǎn)生該缺點的原因二、實驗原理語音雖然是一個時變、非平穩(wěn)的隨機過程。但在短時間內(nèi)可近似看作是平穩(wěn)的。因此如果能從帶噪語音的短時譜中估計出“純凈”語音的短時譜,即可達到語音增強的目的。由于噪聲也是隨機過程,因此這種估計只能建立在統(tǒng)計模型基礎(chǔ)上。利用人耳感知對語音頻譜分量的相位不敏感的特性,這類語音增強算法主要針對短時譜的幅度估計。短時話幅度估計概述設(shè)一幀加窗后的帶噪語音為y(n)=s(n)d(n)OnN1(2.1)其

2、中s(n)為純凈語音,d(n)假設(shè)為平穩(wěn)加性高斯噪聲。將y(n)在一組基七(n)上展開,使展對系數(shù)為各不相關(guān)的隨機變量。設(shè)y(n)的相關(guān)函數(shù)為Ry(n,m),由KL展開得知(n)滿足(2.2)N1(K)k(n)-Ry(n,m):(m)m=0則y(n)的展開式為LN(2.3)y(n)=£Yk*kn)K=0N1Yk="y(n)kn)n=0如果y(n)的相關(guān)長度小于幀長N,則久(n)的近似函數(shù)為(2.4)巾1'2nnk)Q(n)=-j=exp.jJ2nINJ可見y(n)的展開過程實際上相當于離散博里葉交換,其展開系數(shù)(為傅里葉變換系數(shù)。由y(n)=s(n)+d(n),則有

3、:Yk=Sk+Nk。其中K=|Yk|expj"、Sk=|Sk|expj外、Nk分別為y(n)、s(n)及d(n)的傅里葉交換系數(shù)。由于假設(shè)噪聲是高斯分布的,其傅里葉系數(shù)Nk相當于多個高斯樣本的加權(quán)和,故可認為仍然為高斯分布。其均值為0,方差可通過無語音時對噪聲的分析而獲得。語音增強的任務(wù)就是利用已知的噪聲功率譜信息,從K中估計出&。由于人耳對相位不敏感,故只需估計出18k|,然后借用帶噪語音的相位,進行傅里葉逆變換就可得到增強的語音?;诙虝r譜幅度估計的方法的原理圖如圖2.1所示。圖2.1短時譜估計原理圖噪聲特性在短時譜幅(STSA)估計基礎(chǔ)上,人們提出了許多語音增強算法?;?/p>

4、本思想是利用輸入帶噪語音短時譜幅來估計清潔語音短時譜幅,結(jié)合帶噪語音相位信息,得到增強信號。運用短時傅里葉變換(STFT)和重疊相加是短時譜估計技術(shù)中最常用的方法。輸入信號y(n)的短時譜幅|Y(k)|與一個修正因子相乘,得到增強信號譜幅度|S(k)|(通常修正因子與噪聲信號d(n)譜幅估計密切相關(guān));或?qū)⒑胝Z音譜幅減去噪聲譜幅估計,得到增強信號譜幅,這些方法統(tǒng)稱為相減類型算法(subtractivetypealgorithms)0噪聲譜幅估計可以通過有聲、無聲檢測獲取。一般認為噪聲與信號不相關(guān),增強信號譜幅|S(k)|是清潔語音信號s(n)的譜幅估計。通常假設(shè)人耳對含噪語音相位產(chǎn)生的畸變不

5、敏感,所以進行IDFT恢復(fù)成時域信號時,含噪語音的相位一般不作處理。、使用儀器、材料微機(帶聲卡)、耳機,話筒。四、實驗步驟(1) 分析含噪語音信號的頻譜(幅度譜和相位譜)(2) 獲取噪聲信號頻譜(幅度譜)(3) 對含噪語音信號進行分幀并進行加窗處理(4) 將含噪語音信號譜和噪聲譜作為輸入,進行譜減法(5) 回復(fù)增強語音信號幀.(6) 對比輸入信號與增強信號波形,分析算法對其產(chǎn)生的影響五、實驗過程原始記錄(數(shù)據(jù),圖表,計算)假設(shè)y(n)為含噪語音離散時間序列,由清潔語音信號s(n)和非相關(guān)加性噪聲信號d(n)組成。y(n)可表示為y(n)=s(n)+d(n)(2.5)將輸入信號按幀處理,前后幀

6、之間重疊(一般為50%),對每幀含噪語音進行加窗處理,然后進行FFT變換,變換到頻率域。含噪語音的能量譜可以表示為(2.6)(2.7)|Y(k)|2M|S(k)|2+|D(k)|2其中Y(k)為N2小nY(k)=£y(n)eN=|Y(k)|e"k)n=0其中中(k)為含噪語音Y(k)的相位。由于沒法直接得到含噪語音中噪聲能量譜|D(k)|2,一般將無聲階段的數(shù)幀噪聲信號進行能量譜加權(quán)平均得到噪聲能量譜估計|D(k)|2o假設(shè)噪聲與語音信號不相關(guān),語音能量譜估計為(2.8)|S(k)|2=|Y(k)|2-|D>(k)|2其中清潔語音能量譜估計利。出丁咪嚴耳匕里崎伯W,咪

7、W日十晚嚴目匕里崎切仔仕左并,工1(3.4)臼目匕口現(xiàn)負值,為了避免能量譜出現(xiàn)負值,將這些負值設(shè)為零,這一處理稱為半波整流(half-waverectification)0通過半波整流,清潔語音能量譜估計|S(k)|2可表示為|S(k)|2=;|S(k)|0當|S(k)|20當|S(k)|,0(2.9)結(jié)合含噪語音相位信息,通過逆離散傅里葉變換(IDFT)得到時域清潔語音信號的估計信號?(n)S(n)=IDFT(|S(k)|ej9k)其中增強語音信號頻譜S(k)也可以通過時變?yōu)V波器G(k)重建S(k)=G(k)Y(k)式中時變?yōu)V波器(或稱為增益函數(shù))G(k)可表示為出(62、。.5(1-ct-

8、'',)|Y(k)|2G(k)=,(P嚴|Y(k)|2如果|8(k)|2:,1|Y(k)|2-:>":1(2.10)(2.11)(2.12)否則六:實驗結(jié)果,及分析規(guī)一化幅度值0-0.5-100511522.53T5X10*樣本數(shù)(個)1歸一化幅度值050-06(a)原始含噪語音2.5335樣本數(shù)(個)-100.511.52(b)譜相減增強語音1規(guī)一化幅度值0.50-0.5-100511,522533.5x104樣本數(shù)(個)歸-化幅度值05-05(c)原始含噪語音-100.511.522.5(d)譜相減增強語音335樣本數(shù)f個)圖2.2譜減法結(jié)果分析實驗結(jié)果:圖

9、2.2中(a),(c)為不同信噪比輸入含噪語音信號,圖2.2中(b),(d)為對應(yīng)增強語音信號。當信噪比較低時,降噪效果較差。并且引入音樂噪聲。算法缺陷分析:(1)不可避免的引入音樂噪聲。要有效地濾除含噪語音中的噪聲,需要準確地估計含噪語音中噪聲的頻譜。噪聲譜估計越準確,增強信號譜中音樂噪聲越小。然而,由于不能直接得到噪聲譜,在絕大多數(shù)譜相減算法中,通過加權(quán)平均無聲階段噪聲譜得到噪聲譜估計,這種噪聲譜估計與含噪語音中的瞬時噪聲譜存在差異,噪聲平穩(wěn)性越差,差異越大,由于這種差異的存在,譜相減不可避免地引入音樂噪聲。(2)半波、全波整流式(3.4)中負能量值的產(chǎn)生是由于噪聲譜估計發(fā)生了錯誤。這些負

10、值用半波整流(被設(shè)定為0)或全波整流(被設(shè)定為絕對值),這樣處理并沒有糾正這種錯誤,可能導(dǎo)致時域信號更進一步的失真。(3)用含噪語音的相位作為增強語音的相位在生成增強時域信號時,含噪語音的相位并沒有作任何修改。這是基于這樣一個事實,相位的失真對語音質(zhì)量下降造成的影響不大。當信噪比比較高(>5dB)時,相位失真確實對語音質(zhì)量的影響不大,然而,當信噪比較低時(<0dB)這種由于相位失真造成的語音質(zhì)量下降是可以感覺得到的。七、實驗參考程序代碼譜相減原程序代碼hanning=zeros(1,256);speech=zeros(1,32000);語音信號處理實驗2noise.wav'

11、);%噪聲;語音信號處理實驗2speech.wav');%純語音;hanning=zeros(1,256);noise=dd(10000:45000);speech=sp(25000:60000);e2=noise+speech;szeros=zeros(1,32000);soutput1=zeros(1,32000);j=sqrt(-1);a=3,b=0.01;Snoise=zeros(1,256);phase=zeros(1,256);forn=1:256hanning(n)=(1/2)*(1-cos(2*pi)*(n-1)/255);end%togetnoisespectralN

12、oise=zeros(1,256);Noise1=zeros(1,256);fori=1:3Noise1(1:256)=abs(fft(e2(1+i*256:256*(i+1).*hanning');Noise=Noise+Noise1/3;end%spectralsubtractionalgrithmfori=1:245%第i幀snoise=e2(i-1)*128+1:(i-1)*128+256).*hanning'phase=angle(fft(snoise);%togetnoisysignalspectralphaseSnoise=abs(fft(snoise);%tog

13、etnoisysignalspectralamplitudeforn=1:256if(Snoise(n)A2-Noise(n)A2)<0%thepowerofenhancedspeechmustbepositiveSout0(n)=0.1*Snoise(n);elseSout0(n)=(Snoise(n)A2-(Noise(n)*1.5)A2)A0.5;%powertypespectralsubtractionendS0(n)=Sout0(n)*(cos(phase(n)+j*sin(phase(n);%togetenhancedspeechspectralamplitudeendsou

14、t0=ifft(S0);szeros(i-1)*128+1):(i-1)*128+256)=real(sout0);soutput1=soutput1+szeros;szeros=zeros(1,32000);end%thefollowingisforSNRcalculationsp_energe=zeros(1,256);sn_energe=zeros(1,256);SN=zeros(1,256);in_SNR1=zeros(1,125);out_SNR1=zeros(1,125);snoise=zeros(1,256);fori=1:240snoise=speech(i-1)*128+1:

15、(i-1)*128+256).*hanning'%第i幀清潔語音存放到snoiseSN=noise(i-1)*128+1:(i-1)*128+256).*hanning"%第i幀清潔語音存放到SN%in_SNR1(i)sp_energe(i)=snoise(1:256)'*snoise(1:256);%第i幀清潔語音snoise的能量存放到sp_energe(i)sn_energe(i)=SN(1:256)'*SN(1:256);%第i幀皂聲SN的能量存放到sn_energe(i)in_SNR1(i)=10*log10(sp_energe(i)/sn_energe(i);%第i幀含噪語音信號輸入信噪比in_SNR1(i)SN=soutput1(i-1)*128+1:(i-1)*128+256).*hanning;%第i幀輸出信號存放SNsn_energe1(i)=SN(1:256)*SN(1:256),;%第i幀輸出信號SN能量out_SNR1(i)=10*lo

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論