田春環(huán),姜占才,李小航
(青海師范大學(xué) 物理系,青海 西寧810008)
一種新的子帶聲音強(qiáng)度參數(shù)及提取算法
田春環(huán),姜占才,李小航
(青海師范大學(xué) 物理系,青海 西寧810008)
為了使混合激勵線性預(yù)測語音編碼器(MELP)的應(yīng)用更接近實(shí)際,提出了一種基于短時(shí)幅度與短時(shí)平均幅度差函數(shù)的子帶聲音強(qiáng)度提取方法。該方法根據(jù)MELP聲碼器解碼語音的(MOS)評分得出最佳的線性組合系數(shù),進(jìn)而求出5個子帶的清/濁音強(qiáng)度,并將其植入MELP聲碼器中。仿真實(shí)驗(yàn)表明,該算法不僅與原算法具有相同的效果,而且算法復(fù)雜度低。
清/濁音強(qiáng)度;短時(shí)幅度;短時(shí)平均幅度差函數(shù);線性組合
高質(zhì)量的低速率實(shí)時(shí)語音壓縮編碼技術(shù)始終是語音編碼中重要的研究課題[1]。在2.4 kbps的速率上,美國國防部于1996年推出了新的美國聯(lián)邦標(biāo)準(zhǔn)混合激勵線性預(yù)測(MELP)算法[2]。該算法綜合了LPC和MBE算法的優(yōu)點(diǎn),采用了分帶LPC模型,并引入混合激勵、非周期脈沖、自適應(yīng)譜增強(qiáng)和脈沖散布濾波等技術(shù)。混合激勵模型克服了二元激勵合成模型中激勵源信息描述不準(zhǔn)確的缺陷,該模型采用子帶清/濁音強(qiáng)度調(diào)制五帶帶通濾波器得到整形濾波器,從而得到較為準(zhǔn)確的激勵信息。MELP及其改進(jìn)算法[3-14]雖然在合成語音的自然度和抗噪聲性能等方面有了很大的改善,但其帶通清/濁音強(qiáng)度最終都是通過求取自相關(guān)得到的。求取自相關(guān)過程中,乘法運(yùn)算多、計(jì)算復(fù)雜,因此增大了處理延時(shí)。為了使混合激勵線性預(yù)測語音編碼器的應(yīng)用更接近實(shí)際,本文提出了一種全新的子帶聲音強(qiáng)度參數(shù)及該參數(shù)的提取算法,該算法采用短時(shí)幅度和短時(shí)平均幅度差函數(shù)的第一最小值的線性組合表征子帶清/濁音強(qiáng)度,并將其植入MELP聲碼器中進(jìn)行了大量的仿真實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果說明該方法不僅與原方法的解碼語音有相當(dāng)?shù)脑捯糍|(zhì)量,而且運(yùn)算速度快。
1.1 聲音強(qiáng)度新參數(shù)提取的依據(jù)
為方便敘述,先對用到的字母作如下定義:N為幀長,w為矩形窗函數(shù);xw(m)表示x(m)經(jīng)過加窗處理后的信號,窗函數(shù)的長度為N;k為信號x(m)平移的移位量;m為當(dāng)前幀。
1.1.1 短時(shí)幅度
語音信號的短時(shí)幅度定義為:
Mn也是一幀語音信號能量大小的表征,是標(biāo)量,維數(shù)為1×1,它與短時(shí)能量的區(qū)別在于不論采樣值大小,不會因取二次方而造成較大的差異,在某些應(yīng)用領(lǐng)域中會帶來一些好處。此外,短時(shí)幅度可以區(qū)分清音和濁音,因?yàn)闈嵋舻哪芰恳惹逡舻哪芰看蟮枚唷?/p>
1.1.2 短時(shí)平均幅度差函數(shù)
短時(shí)平均幅度差函數(shù)的定義為:
對于周期性的x(n),γn(k)也呈現(xiàn)周期性。γn(k)為矢量,維數(shù)為1×N。與短時(shí)自相關(guān)函數(shù)相反的是,在周期的各整數(shù)倍點(diǎn)上γn(k)具有的是谷值,而不是峰值。
圖1中(a)為清音語音的短時(shí)平均幅度差函數(shù);(b)為濁音語音的短時(shí)平均幅度差函數(shù)。從圖中可以看出,短時(shí)平均幅度差函數(shù)谷值的大小相差比較多,所以可根據(jù)這一特點(diǎn)來判斷是清音還是濁音。
圖1 一幀語音信號短時(shí)平均幅度差函數(shù)
1.1.3 線性組合
用上述兩個參數(shù)單一的提取帶通清/濁音強(qiáng)度時(shí),都得設(shè)置門限,若門限設(shè)置的不合理,則提取出的帶通清/濁音強(qiáng)度會有誤差。因此,可以將這兩個特征參數(shù)進(jìn)行線性組合。文中提出的帶通清/濁音強(qiáng)度新參數(shù)提取算法的定義為:
其中,fd為每一子帶的的短時(shí)幅度,fdc為每一子帶的短時(shí)平均幅度差函數(shù)的最小值,α是一個插值參數(shù),α的取值決定了帶通清/濁音強(qiáng)度的好壞。而α參數(shù)無法事先確定,可能會選得過大或過小,況且信號是時(shí)變的。因此,求解此參數(shù)是一個逼近過程。
從語音庫中取出一段語音(長度為10秒左右的句子),用MATLAB語言對這段語音進(jìn)行編程,得到實(shí)驗(yàn)用MELP聲碼器。在實(shí)驗(yàn)環(huán)境下組織測試評聽,評聽人員預(yù)先不知道評聽內(nèi)容,測試小組由10人組成,其中6人是非專業(yè)成員,測試后,不同α取值下,基于參數(shù)的聲碼器解碼語音的MOS得分曲線如圖2所示。
1.2 新算法提取原理
MELP聲碼器在進(jìn)行語音幀的清/濁音(U/V)判別時(shí),將信號分為5個子帶,提取帶通清/濁音強(qiáng)度,分別進(jìn)行U/V判決,用參數(shù)Vi(i=1,2,…,5)表示,其值大于0.6時(shí)表示濁音,小于等于0.6時(shí)表示清音。Vi代表各子帶的聲音強(qiáng)度,為一個五維的矢量。子帶聲音強(qiáng)度新參數(shù)提取算法原理如圖3所示。
圖2 插值系數(shù)α與解碼語音的MOS得分曲線圖
圖3 新的子帶聲音強(qiáng)度提取算法原理圖
將輸入語音信號經(jīng)過一個截止頻率為100 Hz的高通濾波器,將低于100Hz頻率分量的信號濾掉,濾波器輸出的信號作為編碼器的輸入語音信號,其目的是為了防止50Hz電源噪聲干擾。提取子帶聲音強(qiáng)度首先要將語音信號濾波分成5個頻帶,即用5個六階Butterworth帶通濾波器將輸入語音分割為0~ 500Hz、500~1 000 Hz、1 000~2 000 Hz、2 000~3 000 Hz、3 000~ 4 000Hz5個子帶,求得每一子帶的短時(shí)幅度fd與短時(shí)幅度差函數(shù)fdc,fd為標(biāo)量,fdc為矢量,為能把兩特征值直接進(jìn)行組合,必須使兩特征值的維數(shù)一致,因此,求fdc矢量中的最小值,用求得的最小值與短時(shí)幅度進(jìn)行線性組合得到子帶聲音強(qiáng)度;組合系數(shù)根據(jù)插值系數(shù)α與聲碼器解碼語音的MOS評分得出。
2.1 實(shí)驗(yàn)方案
仿真實(shí)驗(yàn)分兩組進(jìn)行:1)對同一語音樣本,在一定的信噪比(18 dB)下,分別用新參數(shù)提取算法和原提取算法進(jìn)行仿真實(shí)驗(yàn);2)對同一語音樣本在不同信噪比(10 dB和7 dB)下,分別用新參數(shù)提取算法和原提取算法進(jìn)行仿真實(shí)驗(yàn)。
2.2 實(shí)驗(yàn)材料(語音樣本)
實(shí)驗(yàn)用語音樣本取自筆者導(dǎo)師建立的語音庫。其語料為短句、詞匯和長篇文章,用正常的語速朗讀、在實(shí)驗(yàn)室環(huán)境下錄制,輸入計(jì)算機(jī)轉(zhuǎn)換為8 kHz采樣、8 bit量化、線性PCM編碼的數(shù)字語音。語音庫大小為186 MB。實(shí)驗(yàn)室用的語音樣本是從語音庫中挑選的短句,加入高斯白噪聲后形成帶噪的語音。實(shí)驗(yàn)用語音樣本幀長、幀移均為160點(diǎn),幀間無重疊。
2.3 實(shí)驗(yàn)程序
對新參數(shù)提取算法按圖3的算法原理用matlab語言編程,以文件名xvbp.m存儲;同時(shí),對原算法編程,以文件名yvbp.m存儲;在計(jì)算機(jī)上仿真實(shí)驗(yàn)。通過客觀波形顯示和算法復(fù)雜度分析,評價(jià)算法的實(shí)際效果。
2.4 應(yīng)用仿真實(shí)驗(yàn)
實(shí)驗(yàn)選擇標(biāo)準(zhǔn)的MELP聲碼器(軟件),只將其中的提取子帶清/濁音強(qiáng)度部分置換為文中提出的新參數(shù)提取算法,其余部分保持原樣,分別得到兩個實(shí)驗(yàn)用聲碼器(軟件),編程,分別以文件名xmelp.m和ymelp.m存盤。通過顯示原始語音、含噪語音、原聲碼器解碼語音與新算法得到的解碼語音的波形,觀測效果。
部分實(shí)驗(yàn)結(jié)果如圖4和圖5所示。圖4是同一段語音在信噪比為10 dB時(shí),原提取算法與新提取算法的應(yīng)用實(shí)驗(yàn)結(jié)果。結(jié)果顯示,對信噪比為10分貝的含噪語音,新提取算法與原提取算法得到的解碼語音波形幾乎一致。圖5是同一段語音在信噪比為7 dB時(shí),基于兩種算法的應(yīng)用實(shí)驗(yàn)結(jié)果。結(jié)果顯示,對信噪比為7 dB的含噪語音,新提取算法得到的解碼語音波形幾乎逼近原提取算法得到的解碼語音波形。通過語音波形的客觀比較,可以看出,新提取算法與原提取算法的解碼語音具有相同的效果。且新提取算法得到的解碼語音可懂度和自然度較高。
2.5 算法復(fù)雜度分析
原提取子帶聲音強(qiáng)度算法的運(yùn)算量很大,其原因是乘法運(yùn)算所需要的時(shí)間較長,利用快速傅里葉變換等簡化計(jì)算方法都無法避免乘法運(yùn)算。而新參數(shù)提取算法中提取短時(shí)幅度和短時(shí)幅度差函數(shù)只需加、減法和取絕對值的運(yùn)算,與自相關(guān)函數(shù)的加法與乘法相比,其運(yùn)算量大大減少,明顯降低了提取算法的復(fù)雜度。
圖4 10 dB下新、原算法合成語音波形
圖5 7 dB下新、原算法合成語音波形
子帶聲音強(qiáng)度全新參數(shù)提取算法的基本思想是采用短時(shí)幅度和短時(shí)平均幅度差函數(shù)的第一最小值的線性組合表征子帶清/濁音強(qiáng)度。該算法代替了傳統(tǒng)的子帶聲音強(qiáng)度提取算法,得到的解碼語音與基于傳統(tǒng)算法的解碼語音具有相同的音質(zhì)效果,其算法不僅原理簡單、物理意義清晰、實(shí)現(xiàn)復(fù)雜度低,而且使混合激勵線性預(yù)測語音編碼器的應(yīng)用更接近實(shí)際。
[1]鮑長春.數(shù)字語音編碼原理[M].西安:西安電子科技大學(xué)出版社,2007.
[2]SUPPLEE L M,McCree A V.MELP:the new federal standard at 2400 bit/s[A].In:Proc ICASSP 97[C].Munich,Germany:1997,1 591-1594.
[3]姜占才,楊林.語音模糊特征提取及碼本訓(xùn)練算法[J].吉林大學(xué)學(xué)報(bào):信息科學(xué)版,2012,30(3):279-284.
[4]閔剛,張雄偉,楊吉斌.一種采用混合激勵的超低速率分段聲碼器[J].數(shù)據(jù)采集與處理,2009,5(24):680-685.
[5]馮曉榮,劉曉明,田雨.改進(jìn)的MELP低速率語音編碼器[J].計(jì)算機(jī)工程與應(yīng)用,2011,47(29):131-133,217.
[6]馬欣,劉常澍,李文元.一種改進(jìn)的2.4 kb/s混合激勵線性預(yù)測聲碼器方案[J].電路與系統(tǒng)學(xué)報(bào),2007,3(12):117-120.
[7]胡劍凌,徐盛,陳健.2.4kb/s MELP算法設(shè)計(jì)[J].上海交通大學(xué)學(xué)報(bào),2000,6(34):789-792.
[8]李強(qiáng),謝虹恩.改進(jìn)的基于MELP的非連續(xù)傳輸語音編碼算法[J].重慶郵電大學(xué)學(xué)報(bào):自然科學(xué)版,2014,5(26):636-641.
[9]韓瓊磊,郭立,楊帆.MELP解碼器系統(tǒng)的FPGA實(shí)現(xiàn)[J].計(jì)算機(jī)工程與應(yīng)用,2009,45(9):74-76.
[10]陳雙燕,張鐵軍,王東輝.基于一種可配置可擴(kuò)展處理器的MELP語音算法的改進(jìn)與實(shí)現(xiàn)[J].微電子學(xué)與計(jì)算機(jī),2006,6(23):42-44,48.
[11]唐駿,袁江南.基于ARM9的MELPe語音編碼算法優(yōu)化[J].數(shù)據(jù)采集與處理,2012,S1(27):61-65.
[12]華國剛,戴蓓蒨,張欽.一種改進(jìn)的MELP語音編碼方法[J].電路與系統(tǒng)學(xué)報(bào),2003,1(8):101-104.
[13]鐵滿霞,王都生.基于線性預(yù)測系數(shù)自適應(yīng)前后向量化的可變速率MELP語音編碼 [J].電子與信息學(xué)報(bào),2001,9(23):919-923.
[14]陳亮,張雄偉,陸惠娣.一種改善激勵源的1.2 kb/s語音編碼算法及其實(shí)時(shí)實(shí)現(xiàn)[J].解放軍理工大學(xué)學(xué)報(bào):自然科學(xué)版,2002,4(3):5-9.
A new subband voiced intensity parameter and extraction algorithm
TIAN Chun-huan,JIANG Zhan-cai,LIXiao-hang
(Departmentof Physics,Qinghai Normal University,Xining 810008,China)
In order tomake themixed excitation linear prediction speech coder(MELP)closer to the actualapplication,this paper proposes a method of subband voiced intensity extraction based on a short-time magnitude and short-time average magnitude difference function.The method calculate the linear combination of the two coefficient based on MOS score of decoding speech of MELP vocoder,and calculate 5 bandpass unvoiced/voiced intensity,apply it to the MELP vocoder. Simulation experiments show that the algorithm not only decoding speech with the original algorithm of decoding speech has the same effect,butalso has low algorithm complexity.
unvoiced/voiced intensity;short-time magnitude;short-time average magnitude difference function;linear combination
TN912.35
A
1674-6236(2016)20-0171-03
2015-11-02 稿件編號:201511003
國家社科基金項(xiàng)目資助(15XYY026)
田春環(huán)(1988—),女,山東菏澤人,碩士。研究方向:語音與圖像處理。