資源描述:
《基于.matlab算法的數(shù)字變聲器》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫(kù)。
1、WORD格式可編輯基于MATLAB算法的數(shù)字變聲器【摘要】變聲器的原理是通過(guò)改變輸入聲音頻率,進(jìn)行改變聲音的音色、音調(diào),使輸出聲音在感官上與原聲音不同。變聲器是借助對(duì)聲音音色和音調(diào)的雙重復(fù)合改變,實(shí)現(xiàn)輸出聲音的改變。通過(guò)自己發(fā)聲,共振峰頻率的改變是基于重采樣實(shí)現(xiàn)的。同時(shí)用LPC倒譜分析法分析共振峰的范圍,通過(guò)MATLAB編寫程序并構(gòu)置GUI界面。實(shí)驗(yàn)中通過(guò)MATLAB軟件對(duì)采集來(lái)的語(yǔ)言信號(hào)進(jìn)行頻譜分析,討論不同人之間的噪音源參數(shù)和共振峰參數(shù),通過(guò)對(duì)不同人語(yǔ)言信號(hào)頻率和幅度的改變來(lái)實(shí)現(xiàn)不同人之間的語(yǔ)音轉(zhuǎn)換?!娟P(guān)鍵詞】短時(shí)自相關(guān)法;LPC倒譜;語(yǔ)音信號(hào);matl
2、abGUI;1引言隨著生活水平的提高,科技的不斷進(jìn)步,很多人為了娛樂(lè),從而希望改變自己的聲音;還有如今的許多的訪問(wèn)節(jié)目為了保護(hù)被訪問(wèn)者,都對(duì)聲音進(jìn)行了相應(yīng)的處理。本設(shè)計(jì)通過(guò)編寫matlab程序,借助對(duì)聲音音色和音調(diào)的雙重復(fù)合改變,實(shí)現(xiàn)輸出聲音的改變。共振峰頻率的改變是基于重采樣實(shí)現(xiàn)的,從重采樣原理知道,這也同時(shí)印發(fā)了基頻的變化,為保證基頻變化和共振峰頻率變化的獨(dú)立、互不相關(guān),在基頻移動(dòng)時(shí)必須考慮抵消重采樣帶來(lái)的偏移,理論上只要基頻檢測(cè)足夠精確,確實(shí)可以保證基頻改變和共振峰頻率改變間的互不相關(guān)。保證變聲效果的自然度主要是沒(méi)有采用基因檢測(cè)將基因移動(dòng)和共振峰變化徹
3、底隔離的緣故。本次課程設(shè)計(jì)就是運(yùn)用我們所學(xué)到的理論知識(shí),用MATLAB軟件來(lái)實(shí)現(xiàn)對(duì)語(yǔ)音信號(hào)的變聲處理,理論聯(lián)系實(shí)際,從而更好地掌握以及運(yùn)用所學(xué)習(xí)的知識(shí)。2數(shù)字變聲器的原理與算法2.1基本原理語(yǔ)音科學(xué)家將人類發(fā)聲過(guò)程視作一個(gè)由聲門源輸送的氣流經(jīng)以聲道、口、鼻腔組成的濾波器調(diào)制而成的。人類語(yǔ)音可分為有聲語(yǔ)音和無(wú)聲語(yǔ)音,前者是由聲帶振動(dòng)激勵(lì)的脈沖信號(hào)經(jīng)聲腔調(diào)制變成不同的音,它是人類語(yǔ)言中元音的基礎(chǔ),聲帶振動(dòng)的頻率稱為基頻。無(wú)聲語(yǔ)音則是聲帶保持開啟狀態(tài),禁止振動(dòng)引發(fā)的。一般來(lái)說(shuō),由聲門振動(dòng)決定的基頻跟說(shuō)話人的性別特征有關(guān),如下表,而無(wú)聲語(yǔ)音則沒(méi)有體現(xiàn)這個(gè)特征。說(shuō)話人
4、的個(gè)性化音色和語(yǔ)音的另外一個(gè)聲學(xué)參數(shù)——共振峰頻率的分布有關(guān)。兒童由于聲道短,其共振峰頻率高于成年人,成年女性的聲道一般短于成年男性,所以女性的共振峰頻率一般高于男性。在進(jìn)行性別變聲時(shí),主要考慮基音周期、基頻和共振峰頻率的變化。其中男生、女生和童聲的基頻、共振峰的關(guān)系如圖1所示;基音周期改變時(shí),基頻、共振峰同時(shí)變化,若伸展既有男變女、女變童,反之亦可。本實(shí)驗(yàn)是基于打開一種聲音進(jìn)行相關(guān)參數(shù)提取,修改接近于女聲、男聲或童聲,實(shí)現(xiàn)聲音的變換。圖1人群基頻與共振峰的關(guān)系2.2實(shí)現(xiàn)過(guò)程及算法采用線性預(yù)測(cè)參數(shù)合成法。線性預(yù)測(cè)參數(shù)合成法利用LPC語(yǔ)音分析方法,通過(guò)分析自然
5、專業(yè)知識(shí)整理分享WORD格式可編輯語(yǔ)音樣本,計(jì)算出LPC系數(shù),就可以建立信號(hào)產(chǎn)生模型,從而合成出語(yǔ)音。大致流程如圖2所示。圖2制作流程2.2.1基于短時(shí)自相關(guān)法的基音周期估值對(duì)語(yǔ)言信號(hào)進(jìn)行低通濾波,然后進(jìn)行自相關(guān)計(jì)算。在低通濾波時(shí),采用巴特沃斯濾波器。根據(jù)人的說(shuō)話特征設(shè)定相應(yīng)指標(biāo)參數(shù),對(duì)本段語(yǔ)音設(shè)計(jì)算出巴特沃斯模擬濾波器的階數(shù)N為5,3dB截止頻率c,c=(100.1ap-1)-12n,算出c為0.175,歸一化低通原型系統(tǒng)函數(shù)為:Ga(p)=1p5+b4p4+b3p3+b2p2+b1p+b0其中b0=1.0000,b1=3.2361,b2=5.2361,b
6、3=5.2361,b4=3.2361將p=s/c帶人Ga(p)中,得到低通濾波器,Hs=Ωc5s5+b4Ωc2s4+b2Ωc3s2+b1Ωc4s+b0Ωc5根據(jù)設(shè)定的濾波器編寫matlab程序,當(dāng)信號(hào)經(jīng)過(guò)低通濾波器后,對(duì)原始信號(hào)濾波產(chǎn)生結(jié)果如下圖2所示,低通濾波后,保留基音頻率,然后再用8kHz采樣頻率進(jìn)行采樣,采樣序列為x(n),然后進(jìn)行下一步的自相關(guān)計(jì)算。圖3原始信號(hào)低通濾波2.2.2語(yǔ)音信號(hào)的短時(shí)自相關(guān)函數(shù)定義語(yǔ)音信號(hào)自相關(guān)函數(shù)如下:Rnk=n=0n=k-n-1xnnxn(n+k)其中k為信號(hào)延遲點(diǎn)數(shù):xnn專業(yè)知識(shí)整理分享WORD格式可編輯為語(yǔ)音信號(hào)
7、;N為語(yǔ)音幀長(zhǎng)度。經(jīng)過(guò)低通濾波之后,取160個(gè)樣點(diǎn)數(shù),幀長(zhǎng)取10ms,對(duì)每幀語(yǔ)音求短時(shí)自相關(guān),取得自相關(guān)最大點(diǎn)數(shù),自相關(guān)函數(shù)在基音周期處表現(xiàn)為峰值,這些峰值點(diǎn)之間的間隔的平均值就是基音周期。2.2.3LPC倒譜法提取共振峰通過(guò)線性預(yù)測(cè)分析得到合成濾波器的系統(tǒng)函數(shù)為HZ=11-i=1paiz-i其沖擊響應(yīng)為h(n),ai為預(yù)測(cè)系數(shù)。然后求h(n)的倒譜(n),首先根據(jù)同態(tài)分析方法,有(z)=logH(z),因?yàn)镠(z)是最小相位的,即在單位圓內(nèi)是解析的,所以(z)可以展開成級(jí)數(shù)形式,即(z)=n=1∞(n)z-n,也就是說(shuō)(z)的逆變換(n)是存在的,設(shè)(n)
8、=0,將等式兩端分別對(duì)z-1求導(dǎo),得到:n=1∞n(