国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于G.729的LSP矢量量化算法研究

2015-12-21 11:58:58王耿
電腦知識(shí)與技術(shù) 2015年27期
關(guān)鍵詞:碼本碼字搜索算法

王耿

摘要:G.729算法如果不經(jīng)過(guò)優(yōu)化直接在硬件平臺(tái)上運(yùn)行,效率是很低的,不能滿足實(shí)時(shí)通話的要求。算法的計(jì)算量主要消耗在預(yù)處理、LSP矢量量化、固定及自適應(yīng)碼書(shū)搜尋模塊。本研究在分析矢量量化原理的基礎(chǔ)上,針對(duì)LSP矢量量化模塊進(jìn)行優(yōu)化。實(shí)驗(yàn)結(jié)果證明,優(yōu)化后算法計(jì)算復(fù)雜度降低,編碼效率提高,合成語(yǔ)音質(zhì)量有明顯的改進(jìn)。

關(guān)鍵詞: G.729; LSP; 矢量量化; 優(yōu)化

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)28-0159-02

LSP Vectors Quantization Algorithm Based on G.729

WANG Geng

(School of Information and Electrical , Hubei University of Science and Technology, Xianning, 437100, China )

Abstract:If G.729 algorithm is run directly on the hardware platform without optimization, it has a very low efficiency, which can not meet the requirements of real-time call. Computational algorithm is mainly consumed in the pretreatment, LSP vector quantization, fixation and adaptive codebook search module. The paper is to optimize LSP vector quantization module, based on the analysis of vector quantization principle. Experimental results show that after the algorithm optimization, the synthesized speech quality improves significantly with the reduction of algorithm complexity and raising of the coding efficiency .

Key words:G.729; LSP; vector quantization; optimization;

1 引言

[G.729]協(xié)議源代碼非常龐大,算法相當(dāng)復(fù)雜[1],[G.729]算法如果不經(jīng)過(guò)優(yōu)化直接在硬件平臺(tái)上運(yùn)行,效率是很低的,不能滿足實(shí)時(shí)通話的要求,如果不在源代碼的基礎(chǔ)上對(duì)[G.729]算法采用有效的優(yōu)化方案,語(yǔ)音質(zhì)量在編解碼之后難以滿足用戶的需求。對(duì)于[G.729]算法的優(yōu)化工作可以從C語(yǔ)言級(jí)、匯編級(jí)以及算法級(jí)這三個(gè)層次來(lái)進(jìn)行。C語(yǔ)言級(jí)的優(yōu)化代碼的可讀性非常好,十分直觀,最大程度的反映了算法思想,但缺點(diǎn)是相對(duì)于匯編級(jí)、算法級(jí)優(yōu)化,優(yōu)化效果不明顯;匯編級(jí)的優(yōu)化效率很高,效果明顯,能夠改進(jìn)C語(yǔ)言級(jí)優(yōu)化過(guò)程中所存在的部分問(wèn)題,缺點(diǎn)是代碼可讀性不好,難于理解。在算法級(jí)這個(gè)層次的優(yōu)化措施非常多,基本是依據(jù)[G.729]算法的各個(gè)組成模塊給出與各模塊對(duì)應(yīng)的優(yōu)化方案。本文針對(duì)算法中的LSP矢量量化模塊采取了優(yōu)化。

2 矢量量化的基本原理

實(shí)現(xiàn)矢量量化的基本過(guò)程如下:首先,話音信號(hào)之中的任意一幀數(shù)據(jù)包含[k]維空間里的矢量,[k]個(gè)樣點(diǎn)存在于任意一幀數(shù)據(jù)之中,矢量由任意一幀參數(shù)之中的[k]參數(shù)構(gòu)成,此后再對(duì)該矢量采取量化。若[k=1],可以定義為標(biāo)量量化,此時(shí)矢量量化是一維矢量量化。采取標(biāo)量量化方法,可以將一維0到[∞]的范圍分割為多個(gè)量化區(qū)間,若量化前信號(hào)幅度落在臨近的區(qū)間,輸入信號(hào)通過(guò)量化以后,幅度值將取臨近的區(qū)間的中間值。對(duì)于多維矢量量化,若[k=M],[M]個(gè)量化區(qū)間構(gòu)成[k]維空間,[M]個(gè)量化區(qū)間對(duì)應(yīng)的邊界和要進(jìn)入的矢量進(jìn)行比較,量化間隔最近的中間邊界矢量就是輸入信號(hào)量化之后的值。

完成矢量量化[2]過(guò)程中有兩個(gè)問(wèn)題需要解決。第一,[M]個(gè)區(qū)間的邊界怎樣來(lái)區(qū)分。要解決此問(wèn)題要求有大量的話音消息矢量,結(jié)論要建立在大量實(shí)驗(yàn)的基礎(chǔ)上,也就是如何來(lái)創(chuàng)建碼本。可按照以下方法來(lái)實(shí)現(xiàn):對(duì)大量的話音信號(hào)的波形進(jìn)行統(tǒng)計(jì)分類,碼本可以通過(guò)界定劃分界限的中間矢量值來(lái)獲得。第二,如何獲得測(cè)度,當(dāng)對(duì)比兩個(gè)矢量的時(shí)候。測(cè)度是兩個(gè)矢量所間隔的距離,也可以說(shuō)是以兩個(gè)矢量中的一個(gè)作為基準(zhǔn)量時(shí)所測(cè)得的失真度。測(cè)度反映了要付出的代價(jià),如果用與碼書(shū)所代表的矢量來(lái)表示輸入矢量。

矢量量化器原理框圖[3]如圖1所示,量化過(guò)程如下:在編碼端k維輸入矢量。

[Xi]與碼書(shū)中的任意一個(gè)碼字一一做出比對(duì),并利用失真測(cè)度公式推算出碼字和k維輸入矢量[Xi]的失真。接著從碼本中找出失真最小的[Yjmin]的下標(biāo)[jmin],該下標(biāo)用于信道傳輸或存儲(chǔ)器。而在解碼端進(jìn)行解碼,要從接收到的碼本中找出碼字[Yjmin],必須要根據(jù)信道傳輸中對(duì)應(yīng)的標(biāo)號(hào)。由于信道傳輸?shù)膬H僅是矢量的下標(biāo)而不是矢量的內(nèi)容,所以保密性很好。并且對(duì)下標(biāo)進(jìn)行傳輸時(shí)傳輸碼率相對(duì)于傳輸矢量要大大降低。由圖1能夠看出,由于編碼端與解碼端均無(wú)反饋回路,能夠保證量化系統(tǒng)的穩(wěn)定性。

平均信噪比和碼本大小M是矢量量化系統(tǒng)中重要的兩個(gè)參量[4]。平均信噪比通過(guò)[SNR(dB)=10logEXN2/NEd(X,Y)]進(jìn)行計(jì)算。信噪比計(jì)算式中,[N]指的是矢量量化系統(tǒng)在編碼端輸入的矢量數(shù)在單位時(shí)間內(nèi),[EXN2]指的是在單位時(shí)間內(nèi)信號(hào)矢量的平均能量,[NEd(X,Y)]指的是單位時(shí)間內(nèi)輸入信號(hào)矢量和碼書(shū)矢量產(chǎn)生失真的平均值 (或定義為量化噪聲)。

3 LSP矢量量化算法的優(yōu)化

[G.729]算法中的[LSP]矢量量化部分采取了兩級(jí)預(yù)測(cè)分裂式量化碼本結(jié)構(gòu),計(jì)算復(fù)雜度在一定程度上減小了。輸入矢量[X]和碼字[Yj]所存在的失真可用公式(1)來(lái)表示:

[d(X,Yj)=i=1k(xi-yij)2] (1)

對(duì)于全搜索算法碼本當(dāng)中所有的碼字都要進(jìn)行搜尋,這樣會(huì)導(dǎo)致計(jì)算復(fù)雜,搜索時(shí)間變長(zhǎng),尤其是當(dāng)碼本空間逐漸增大時(shí),矢量維數(shù)也會(huì)隨之變大,加大了算法的復(fù)雜性。

本文提出基于部分失真搜索([PDS])和范數(shù)排序搜索([NOS])的[LSP]矢量量化的搜索算法。該算法前提保證算法的正確性,使算法的搜索次數(shù)和復(fù)雜度大大降低,編碼端的編碼效率能得到大大提升。

[PDS]計(jì)算輸入矢量和特定碼字所存在的失真,不間斷對(duì)疊加失真采取判斷,通過(guò)比較判斷大于還是小于最小失真,如大于最小失真,立即終止指定碼字與輸入矢量所存在的失真的計(jì)算。該算法的基本原理如下:

假定目前最小失真為[dmin=d(X,Yp),1≤p≤N],

若[i=0s(xi-yij)2≥dmin 0≤s≤k] (2)

則[d(X,Yj)≥d(X,YP)],碼字[yij]和輸入矢量[X]不是距離最近的碼字,于是把該碼字排除。之后要停止對(duì)后面碼字與輸入矢量存在失真的計(jì)算,從而對(duì)之后碼字失真進(jìn)行判斷,這個(gè)方法增加了[s]次比較運(yùn)算,但是少了[(k-s)]次乘法與[2(k-s)]加法的計(jì)算。

[NOS]是等價(jià)誤差測(cè)度搜索算法其中一種,采用了范數(shù)排序規(guī)則。[X]的范數(shù)用[X=i=1kx2i]表示, [Yj]的范數(shù)用[Yj=i=1ky2ij]表示,等價(jià)失真測(cè)度用公式(3)表示:

[d*(X,Yj)=d(X,Yj)-X2=Yj2-2l=1kxiyij] (3)

根據(jù)cauchy schwartz不等式[i=1kxiyij≤XYj] (4)

可以推出[X]與[Yj]的等價(jià)失真測(cè)度為

[d*(X,Yj)=d(X,Yj)-X2=Yj2-2l=1kxiyij≥Yj(Yj-2X)] (5)

那么范數(shù)排列搜索規(guī)則為:

若目前最小失真為[d*min=d*(X,Yp),1≤p≤N],若[Yj(Yj-2X)≥d*min],那么[d*(X,Yj)≥d*min],即[d(X,Yj)≥d*min]。

若[Yj(Yj-2X)≥d*min]成立,則當(dāng)[Yj

[NOS]可以快速的濾除碼字,但該算法是依據(jù)等價(jià)失真測(cè)度來(lái)判斷的,部分碼字沒(méi)有辦法濾除掉??勺龀鋈缦赂倪M(jìn):在公式(3)等式的兩邊加上[X2],推得:

[d(X,YJ)=X2+Yj2-2l=1kxiyij≥(X-Yj)2] (6)

改進(jìn)的范數(shù)排列搜索規(guī)則為:

設(shè)最小失真測(cè)度

[dmin=d(X,YP)]若[(X-Yj)2≥dmin] (7)

有 [d(X,Yj)≥d(X,YP)] (8)

由公式(2)式與公式(7)能夠看出,[G.729]全搜索算法在采用[PDS]與[NOS]相結(jié)合的搜索算法替換之后,加法與乘法運(yùn)算指令大幅減少,碼字能夠很快的濾除,搜尋碼字時(shí)間也大幅減少,達(dá)到了迅速搜索最優(yōu)逼近碼字的目的。

4 實(shí)驗(yàn)結(jié)果與分析

為了測(cè)試優(yōu)化前后算法的編碼效率,實(shí)驗(yàn)采用了一段48.315秒,,量化位數(shù)為16,采樣率為8kHz,563820bytes大小的聲音文件進(jìn)行編碼,分別計(jì)算優(yōu)化前后[G.729]編碼完成所要求的最短時(shí)長(zhǎng)。所用時(shí)間越長(zhǎng),則反映計(jì)算復(fù)雜度越高,編碼效率越低,而用時(shí)越短,反映計(jì)算復(fù)雜度越低,編碼效率越高。

參考文獻(xiàn):

[1] Coding of Speech at 8kbit/s Using Conjugate-structure Algebraic-code-excited Linear-Prediction[S].ITU-T Recommendation G.729,1996.

[2] MeClellan Stan,Gibson Jerry,D.Rutherford.Efficient Pitch Filter Encoding for Variable Rate Speech Processing[J].IEEE Transactions on Speech and Audio Processing,1999,7(l):18-29.

[3] 唐建.矢量量化碼書(shū)設(shè)計(jì)與矢量量化應(yīng)用研究[D].中國(guó)科學(xué)技術(shù)大學(xué),2006(10).

[4] 汪撼銘.嵌入式系統(tǒng)中語(yǔ)音編碼壓縮技術(shù)的研究與應(yīng)用[D].合肥工業(yè)大學(xué),2007.

猜你喜歡
碼本碼字搜索算法
Galois 環(huán)上漸近最優(yōu)碼本的構(gòu)造
免調(diào)度NOMA系統(tǒng)中擴(kuò)頻碼優(yōu)化設(shè)計(jì)
基于有限域上仿射空間構(gòu)造新碼本
改進(jìn)的和聲搜索算法求解凸二次規(guī)劃及線性規(guī)劃
放 下
幾類近似達(dá)到Welch界碼本的構(gòu)造
數(shù)據(jù)鏈系統(tǒng)中軟擴(kuò)頻碼的優(yōu)選及應(yīng)用
放下
基于汽車(chē)接力的潮流轉(zhuǎn)移快速搜索算法
基于逐維改進(jìn)的自適應(yīng)步長(zhǎng)布谷鳥(niǎo)搜索算法
延津县| 平潭县| 虞城县| 万载县| 新丰县| 屏边| 长垣县| 凤庆县| 阳原县| 长沙县| 兰坪| 如皋市| 新郑市| 九台市| 满洲里市| 大荔县| 五台县| 永济市| 金溪县| 富裕县| 凤城市| 承德市| 山阳县| 仁寿县| 蒙城县| 玛纳斯县| 陕西省| 驻马店市| 巴彦县| 瓦房店市| 眉山市| 商都县| 象州县| 奇台县| 赤峰市| 商城县| 正安县| 黄平县| 贺州市| 万盛区| 靖西县|