專(zhuān)利名稱(chēng):1kb/s線譜頻率參數(shù)的一步插值預(yù)測(cè)矢量量化方法
技術(shù)領(lǐng)域:
1kb/s線譜頻率參數(shù)的一步插值預(yù)測(cè)矢量量化方法,屬于語(yǔ)音信號(hào)處理,可應(yīng)用于中低速率語(yǔ)音編碼和參數(shù)語(yǔ)音合成系統(tǒng)中。
對(duì)于低速率語(yǔ)音編碼,人們希望用盡可能少的比特?cái)?shù)量化LSF參數(shù),達(dá)到透明量化的指標(biāo)。標(biāo)量量化是常見(jiàn)的一種LSF參數(shù)量化方法,這種方法是對(duì)每一個(gè)LSF參數(shù)分別量化,若要達(dá)到平均譜失真小于1dB,則每幀至少需要32比特。在低速率語(yǔ)音編碼情況下,比如在5kb/s以下速率,分配給LSF參數(shù)的比特?cái)?shù)比較少,這時(shí)標(biāo)量量化顯然不是適合的方法。
由于矢量量化在相同的比特?cái)?shù)下能比標(biāo)量量化給出更低的量化失真,所以,在低速率語(yǔ)音編碼和參數(shù)語(yǔ)音合成中,LSF參數(shù)的量化主要采用矢量量化的方法,但直接應(yīng)用矢量量化方法會(huì)存在碼書(shū)存儲(chǔ)量大、計(jì)算復(fù)雜度高等問(wèn)題。為了克服這些問(wèn)題,人們大多采用各種次優(yōu)矢量量化方法,如,多級(jí)矢量量化、分裂矢量量化和預(yù)測(cè)矢量量化等。但這些方法透明量化LSF參數(shù)所需的比特率都較高,一般都在1kb/s以上。
本發(fā)明是基于矢量量化原理,利用LSF參數(shù)的幀間和幀內(nèi)相關(guān)性,在幀內(nèi)采用一步預(yù)測(cè)和在幀間采用一步內(nèi)插的方法設(shè)計(jì)了一種1kb/s LSF參數(shù)的矢量量化器,對(duì)通過(guò)一步內(nèi)插預(yù)測(cè)過(guò)程消除冗余度的LSF預(yù)測(cè)殘差矢量r(n)進(jìn)行矢量量化。
本發(fā)明矢量量化的工作過(guò)程是在計(jì)算機(jī)處理器中完成,其技術(shù)方案如
圖1所示。
圖1中ω(n)為去除均值的第n幀LSF矢量, 為去除均值的第n幀LSF的量化矢量, 為第n幀ω(n)的預(yù)測(cè)矢量,r(n)為第n幀LSF的預(yù)測(cè)誤差矢量, 為第n幀量化的LSF預(yù)測(cè)誤差矢量,k1(n)和k2(n)分別表示第n幀兩個(gè)LSF殘差碼書(shū)的碼矢量標(biāo)號(hào)。圖1的工作原理如下編碼端
首先,將第n幀量化的第i-1個(gè)線譜頻率 與第n-1幀量化的第i個(gè)線譜頻率 的加權(quán)和作為第n幀的第i個(gè)線譜頻率的預(yù)測(cè)值 ,即ω~i(n)=αiω^i-1(n)+βi(ω)^i(n-1),i=1,2,···,p]]>式中αi和βi稱(chēng)為權(quán)系數(shù)。由于本發(fā)明僅考慮了第n幀與第n-1幀的LSF相關(guān)性以及第n幀的第i個(gè)LSF和第i-1個(gè)LSF的相關(guān)性,所以稱(chēng)上述加權(quán)求和過(guò)程為一步內(nèi)插預(yù)測(cè)過(guò)程,一步內(nèi)插是指將第n-1幀量化的第i個(gè)線譜頻率 乘以權(quán)系數(shù)βi,一步預(yù)測(cè)是指將第n幀量化的第i-1個(gè)線譜頻率 乘以權(quán)系數(shù)αi,所以,我們又稱(chēng)αi和βi為幀內(nèi)預(yù)測(cè)系數(shù)和幀間內(nèi)插系數(shù)。權(quán)系數(shù)αi和βi可以從訓(xùn)練序列中估計(jì)出來(lái),并在量化器中保持為常數(shù)。αi和βi的具體估計(jì)方法為令第i個(gè)LSF的平方預(yù)測(cè)誤差為Ei=Σn=1Nf[ri(n)]2=Σn=1Nf[ωi(n)-αiω^i-1(n)-βiω^i(n-1)]2]]>式中Nf為L(zhǎng)SF訓(xùn)練矢量的總數(shù),ri(n)為r(n)的第i個(gè)元素。估計(jì)時(shí)用原始數(shù)據(jù)ωi(n)代替量化數(shù)據(jù) 。根據(jù)最小二乘估計(jì)原理,令Ei/αi=0和Ei/βi=0,并解二元一次方程,得系數(shù)αi和βi為αi=(Σn=1Nfωi(n)ωi-1(n))(Σn=1Nfωi(n-1)ωi(n-1))-(Σn=1Nfωi(n)ωi(n-1))(Σn=1Nfωi(n-1)ωi-1(n))(Σn=1Nfωi-1(n)ωi-1(n))(Σn=1Nfωi(n-1)ωi(n-1))-(Σn=1Nfωi-1(n)ωi(n-1))2,i=2,3,···,10,]]>βi=(Σn=1Nfωi(n)ωi(n-1))(Σn=1Nfωi-1(n)ωi-1(n))-(Σn=1Nfωi(n)ωi-1(n))(Σn=1Nfωi-1(n)ωi(n-1))(Σn=1Nfωi-1(n)ωi-1(n))(Σn=1Nfωi(n-1)ωi(n-1))-(Σn=1Nfωi-1(n)ωi(n-1))2,i=2,3,···,10,]]>
α1=0.0β1=Σn=1Nfωi(n)ωi(n-1)Σn=1Nfωi(n-1)ωi(n-1)]]>第二,將輸入量化器的無(wú)偏線譜頻率ωi(n)與其預(yù)測(cè)值 相減,得到LSF殘差矢量r(n)。預(yù)測(cè)誤差ri(n)的動(dòng)態(tài)范圍比ωi(n)的動(dòng)態(tài)范圍減小了很多,因而非常適合于作為量化的對(duì)象以提高量化的效率,這一點(diǎn)可以從圖2和圖3的歸一化統(tǒng)計(jì)直方圖中看出。其中,圖2是ωi(n)的統(tǒng)計(jì)直方圖,圖3是ri(n)的統(tǒng)計(jì)直方圖,橫坐標(biāo)表示歸一化的LSF預(yù)測(cè)誤差。
第三,將預(yù)測(cè)誤差矢量r(n)分裂成兩個(gè)子矢量,令前四個(gè)分量構(gòu)成一個(gè)子矢量,后六個(gè)分量構(gòu)成一個(gè)子矢量,這兩個(gè)子矢量分別與兩個(gè)10bit碼書(shū)中的碼矢量進(jìn)行Paliwal加權(quán)失真比較,得到兩個(gè)重構(gòu)的殘差子矢量 i=1,…,4和 i=5,…,10,這里k1(n)和k2(n)分別表示進(jìn)入信道的兩個(gè)殘差碼書(shū)的碼矢量標(biāo)號(hào),將這兩個(gè)重構(gòu)的殘差子矢量合并,得到重建的殘差矢量 圖1中的LSF殘差碼書(shū)由1個(gè)4維矢量碼書(shū)和1個(gè)6維矢量碼書(shū)構(gòu)成,每個(gè)碼書(shū)均包含1024個(gè)碼矢量,即各為10比特碼書(shū)。4維矢量碼書(shū)由r(n)的前4個(gè)元素的訓(xùn)練序列獲得,6維矢量碼書(shū)由r(n)的后6個(gè)元素的訓(xùn)練序列獲得。4維和6維預(yù)測(cè)殘差碼書(shū)均采用傳統(tǒng)的LBG算法訓(xùn)練,訓(xùn)練數(shù)據(jù)為漢語(yǔ)語(yǔ)音,長(zhǎng)度約為1個(gè)小時(shí),采樣率為8kHz,精度為16位線性PCM。
4維和6維殘差輸入矢量分別與4維和6維殘差碼書(shū)中的每一個(gè)碼矢量進(jìn)行失真比較時(shí),使用的失真測(cè)度為E1=Σi=14[CiWi(ri(n)-r^i(n)(k1(n)))]2]]>和E2=Σi=510[CiWi(ri(n)-r^i(n)(k2(n)))]2]]>式中Ci和Wi為Paliwal加權(quán)因子,γ=0.15為Paliwal經(jīng)驗(yàn)常數(shù)。
第四,將重構(gòu)的殘差矢量 加上預(yù)測(cè)矢量 得到LSF的無(wú)偏重構(gòu)矢量 ,該重構(gòu)矢量 將用于下一幀的一步內(nèi)插預(yù)測(cè)。
譯碼端首先,譯碼端根據(jù)收到的標(biāo)號(hào)k1(n)和k2(n),通過(guò)查表從兩個(gè)碼書(shū)中找到對(duì)應(yīng)的重構(gòu)殘差子矢量 i=1,…,4和 i=5,…,10,將這兩個(gè)重構(gòu)的殘差子矢量合并,得到重建的殘差矢量 第二,用一步內(nèi)插預(yù)測(cè)過(guò)程得到LSF的預(yù)測(cè)矢量 第三,將 加上預(yù)測(cè)矢量 得到LSF的無(wú)偏重構(gòu)矢量 第四,將 加上LSF的均值,得到最終恢復(fù)的LSF參數(shù)。該均值是事先從所有LSF訓(xùn)練矢量集中計(jì)算得到的,在量化器中為常數(shù)。
獲得了透明的量化結(jié)果,滿(mǎn)足了低速率語(yǔ)音編碼對(duì)聲道參數(shù)進(jìn)行透明量化的要求。
譯碼端當(dāng)收到來(lái)自編碼端的碼矢量標(biāo)號(hào)k1(n)和k2(n)后,同編碼端一樣,按如下邏輯得到譯碼的無(wú)偏LSF矢量ω~1(n)=β1ω^1(n-1)]]>ω^1(n)=r^1(n)(k1(n))+ω~1(n)]]>
for i=2 to 4ω~i(n)=αiω^i-1(n)+βiω^i(n-1)]]>ω^i(n)=r^i(n)(k1(n))+ω~i(n)]]>endfor i=5 to 10ω~i(n)=αiω^i-1(n)+βiω^i(n-1)]]>ω^i(n)=r^i(n)(k2(n))+ω~i(n)]]>end最后重建的LSF矢量為ωi(n)(q)=ω‾i+ω^i(n),i=1,2,···10]]>實(shí)驗(yàn)效果本發(fā)明用訓(xùn)練語(yǔ)音外的500秒漢語(yǔ)語(yǔ)音產(chǎn)生2500個(gè)LSF矢量,經(jīng)過(guò)圖1所示的矢量量化器量化,按國(guó)際通用的譜失真計(jì)算方法,當(dāng)每幀分配20比特(4維和6維殘差碼書(shū)各用10比特)用于量化LSF參數(shù)時(shí),得到的平均譜失真為0.94dB,譜失真介于2dB和4dB之間的幀的百分比僅為1.998%(<2%),而譜失真大于4dB的幀的百分比為零,圖4給出了譜失真統(tǒng)計(jì)直方圖,這些數(shù)據(jù)說(shuō)明,本發(fā)明中的LSF參數(shù)一步插值預(yù)測(cè)矢量量化方法在1kb/s(=幀速率×比特/幀=50×20)達(dá)到了透明的量化性能。
權(quán)利要求
1.1kb/s線譜頻率參數(shù)的一步插值預(yù)測(cè)矢量量化方法,包含在計(jì)算機(jī)處理器中完成對(duì)語(yǔ)音信號(hào)的線譜頻率參數(shù)(LSF)進(jìn)行量化,本發(fā)明的特征在于基于矢量量化原理,利用LSF參數(shù)的幀間和幀內(nèi)相關(guān)性,在幀內(nèi)采用一步預(yù)測(cè)和在幀間采用一步內(nèi)插的方法設(shè)計(jì)了一種1kb/s LSF參數(shù)的矢量量化器,對(duì)通過(guò)一步內(nèi)插預(yù)測(cè)過(guò)程消除冗余度的LSF預(yù)測(cè)殘差矢量r(n)進(jìn)行矢量量化,矢量量化的工作流程如下編碼過(guò)程首先,將第n幀量化的第i-1個(gè)線譜頻率 與第n-1幀量化的第i個(gè)線譜頻率 的加權(quán)和作為第n幀的第i個(gè)線譜頻率的預(yù)測(cè)值 ,即ω~i(n)=αiω^i-1(n)+βiω^i(n-1),i=1,2,···,p]]>式中αi和βi稱(chēng)為權(quán)系數(shù),又稱(chēng)αi和βi為幀內(nèi)預(yù)測(cè)系數(shù)和幀間內(nèi)插系數(shù);一步內(nèi)插預(yù)測(cè)過(guò)程是指僅考慮第n幀與第n-1幀的LSF相關(guān)性以及第n幀的第i個(gè)LSF和第i-1個(gè)LSF的相關(guān)性的加權(quán)求和過(guò)程;一步內(nèi)插是指將第n-1幀量化的第i個(gè)線譜頻率 乘以權(quán)系數(shù)βi;一步預(yù)測(cè)是指將第n幀量化的第i-1個(gè)線譜頻率 乘以權(quán)系數(shù)αi;根據(jù)最小二乘原理,權(quán)系數(shù)αi和βi可以從LSF的訓(xùn)練序列中計(jì)算出來(lái),并在量化器中保持為常數(shù);第二,將輸入量化器的無(wú)偏線譜頻率ωi(n)與其預(yù)測(cè)值 相減,得到LSF殘差矢量r(n);第三,將預(yù)測(cè)誤差矢量r(n)分裂成兩個(gè)子矢量,令前四個(gè)分量構(gòu)成一個(gè)子矢量,后六個(gè)分量構(gòu)成一個(gè)子矢量,這兩個(gè)子矢量分別與兩個(gè)10bit碼書(shū)中的碼矢量進(jìn)行Paliwal加權(quán)失真比較,得到兩個(gè)重構(gòu)的殘差子矢量 i=1,…,4和 i=5,…,10;這里k1(n)和k2(n)分別表示進(jìn)入信道的兩個(gè)殘差碼書(shū)的碼矢量標(biāo)號(hào),將這兩個(gè)重構(gòu)的殘差子矢量合并,得到重建的殘差矢量 第四,將重構(gòu)的殘差矢量 加上預(yù)測(cè)矢量 得到LSF的無(wú)偏重構(gòu)矢量 ,該重構(gòu)矢量 將用于下一幀的一步內(nèi)插預(yù)測(cè)過(guò)程;譯碼過(guò)程首先,譯碼端根據(jù)收到的標(biāo)號(hào)k1(n)和k2(n),通過(guò)查表從兩個(gè)碼書(shū)中找到對(duì)應(yīng)的重構(gòu)殘差子矢量 i=1,…,4和 i=5,…,10,將這兩個(gè)重構(gòu)的殘差子矢量合并,得到重建的殘差矢量 第二,用一步內(nèi)插預(yù)測(cè)過(guò)程得到LSF的預(yù)測(cè)矢量 第三,將 加上預(yù)測(cè)矢量 得到LSF的無(wú)偏重構(gòu)矢量 第四,將 加上LSF的均值,得到最終恢復(fù)的LSF參數(shù)。
全文摘要
1kb/s線譜頻率參數(shù)的一步插值預(yù)測(cè)矢量量化方法,屬于語(yǔ)音信號(hào)處理,可應(yīng)用于中低速率語(yǔ)音編碼和參數(shù)語(yǔ)音合成系統(tǒng)中。本發(fā)明矢量量化的工作過(guò)程是在計(jì)算機(jī)處理器中完成,其特征在于,基于矢量量化原理,利用LSF參數(shù)的幀間和幀內(nèi)相關(guān)性,在幀內(nèi)采用一步預(yù)測(cè)和在幀間采用一步內(nèi)插的方法設(shè)計(jì)了一種1kb/s LSF參數(shù)的矢量量化器,對(duì)通過(guò)一步內(nèi)插預(yù)測(cè)過(guò)程消除冗余度的LSF預(yù)測(cè)殘差矢量進(jìn)行矢量量化,獲得了透明的量化結(jié)果,滿(mǎn)足了低速率語(yǔ)音編碼對(duì)聲道參數(shù)進(jìn)行透明量化的要求。
文檔編號(hào)G10L19/00GK1420487SQ0215667
公開(kāi)日2003年5月28日 申請(qǐng)日期2002年12月19日 優(yōu)先權(quán)日2002年12月19日
發(fā)明者鮑長(zhǎng)春 申請(qǐng)人:北京工業(yè)大學(xué)