專利名稱:球面矢量量化編解碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及量化編碼技術(shù)領(lǐng)域,更具體地,涉及針對高斯分布數(shù)據(jù)的球面矢量量 化編解碼方法。
背景技術(shù):
在量化編碼中,矢量量化方法在相同的編碼比特數(shù)下能獲得比標(biāo)量量化方法更低 的量化失真。格型矢量量化器是以空間網(wǎng)格中的格點(diǎn)作為矢量量化器來對信號進(jìn)行量化。 它具有低存儲空間、低運(yùn)算復(fù)雜度、高量化精度等優(yōu)點(diǎn),因此已成為當(dāng)前移動音頻編解碼領(lǐng) 域廣泛采用的技術(shù)。有學(xué)者理論上證明,格型矢量量化配合基于概率的熵編碼可以獲得最 佳的矢量量化器,因此,2003年至今,基于概率模型的格型矢量量化成為研究的熱點(diǎn)。將概率模型應(yīng)用于格型矢量量化的一種常見方法是,使用某種映射對輸入待量化 數(shù)據(jù)進(jìn)行處理,使其符合某種特定的分布,然后使用符合這種分布的格型矢量量化器進(jìn)行 量化。其中,高斯分布是常見的一種分布,通常采用球型矢量量化器。然而,由于滿足高斯 分布的數(shù)據(jù)中,小能量矢量占了絕大多數(shù),而球型量化采用均勻的格,在量化小能量矢量時 相對誤差較大。因此對于滿足高斯分布的數(shù)據(jù),傳統(tǒng)的格型矢量量化器性能仍有待提高。
發(fā)明內(nèi)容
本發(fā)明針對現(xiàn)有量化方法的不足,提出一種適合高斯分布數(shù)據(jù)的球面矢量量化技 術(shù)方案,目的是通過提高占絕大多數(shù)的小能量矢量的量化性能,實(shí)現(xiàn)整體量化性能是提高。本發(fā)明提供的球面矢量量化編碼方法技術(shù)方案采用球面量化碼本參與量化,所述 球面量化碼本從D維空間的格型矢量量化碼本中進(jìn)行球面截斷得到,包括由D維空間中的 某個超球面或球面上以及附近的空間格點(diǎn)組成的外圍球?qū)?,外圍球?qū)觾?nèi)部包含中空區(qū)域, 其中D大于或等于2,當(dāng)D等于2時球面退化成環(huán);編碼過程包括以下步驟,步驟1. 1、對D維的輸入待量化矢量進(jìn)行壓擴(kuò),得到在球面量化碼本范圍內(nèi)的壓擴(kuò) 后矢量和對應(yīng)的壓擴(kuò)參數(shù);步驟1. 2、對步驟1. 1中所得壓擴(kuò)參數(shù)進(jìn)行量化,得到壓擴(kuò)參數(shù)的量化索引;步驟1. 3、對步驟1. 1中所得壓擴(kuò)后矢量,使用球面量化碼本對其進(jìn)行量化,得到 壓擴(kuò)后矢量的量化索引;步驟1. 4、將步驟1. 2所得壓擴(kuò)后矢量的量化索引,以及步驟1. 3所得對應(yīng)的壓擴(kuò) 參數(shù)的量化索引寫入碼流。而且,所述球面量化碼本在超球面或球面的中心設(shè)置中心球,外圍球?qū)雍椭行那?之間是中空區(qū)域。本發(fā)明提供的相應(yīng)球面矢量量化解碼方法技術(shù)方案采用球面量化碼本參與反量 化,所述球面量化碼本從D維空間的格型矢量量化碼本中進(jìn)行球面截斷得到,包括由D維空 間中的某個超球面或球面上以及附近的空間格點(diǎn)組成的外圍球?qū)樱鈬驅(qū)觾?nèi)部包含中空 區(qū)域,其中D大于或等于2,當(dāng)D等于2時球面退化成環(huán);解碼過程包括以下步驟,
步驟2. 1、從碼流中提取壓擴(kuò)后矢量的量化索引,以及對應(yīng)的壓擴(kuò)參數(shù)的量化索 引;步驟2. 2、根據(jù)步驟2. 1所得壓擴(kuò)后矢量的量化索引,通過查找球面量化碼本得出 對應(yīng)的量化后的壓擴(kuò)后矢量;步驟2. 3、根據(jù)步驟2. 1所得壓擴(kuò)參數(shù)的量化索引,通過查找壓擴(kuò)參數(shù)量化碼本得 到量化后的壓擴(kuò)參數(shù);步驟2. 4、根據(jù)步驟2. 3所得量化后的壓擴(kuò)參數(shù),對步驟2. 2所得量化后的壓擴(kuò)后 矢量,通過逆壓擴(kuò)重建量化后的待量化矢量,量化后的待量化矢量為D維。而且,所述球面量化碼本在超球面或球面的中心設(shè)置中心球,外圍球?qū)雍椭行那?之間是中空區(qū)域。本發(fā)明的技術(shù)方案對滿足高斯分布的矢量數(shù)據(jù)采用球面矢量量化方案進(jìn)行量化, 提高了量化質(zhì)量和效率,并提供了相應(yīng)反量化方案,實(shí)用簡便。
圖1為本發(fā)明的球面量化碼本示意圖;圖2為本發(fā)明實(shí)施例的球面矢量量化裝置工作示意圖;圖3為本發(fā)明實(shí)施例的球面矢量逆量化裝置工作示意圖。
具體實(shí)施例方式本發(fā)明提供了針對高斯分布數(shù)據(jù)的球面矢量量化編碼方法,以及相應(yīng)的球面矢量 量化解碼方法。具體實(shí)施時,可以由本領(lǐng)域技術(shù)人員采用計算機(jī)軟件手段根據(jù)所提供技術(shù) 方案實(shí)現(xiàn)自動化量化編解碼。由于在編解碼應(yīng)用中,往往還將編解碼軟件方法固化形成編 解碼裝置,本發(fā)明也提供了相應(yīng)的球面矢量量化裝置和球面矢量逆量化裝置。以下結(jié)合附圖和實(shí)施例做詳細(xì)說明。實(shí)施例在本發(fā)明方法前提下進(jìn)行實(shí)施,給出了詳細(xì)的實(shí)施方式與具體的操作過 程,但本發(fā)明的實(shí)現(xiàn)不限于該實(shí)施例。通常格型矢量量化的碼本一般都是球型或者金字塔形,因?yàn)楦裥褪噶苛炕拇a本 是使用數(shù)學(xué)方法生成的布滿D維空間的格點(diǎn),實(shí)際應(yīng)用中量化比特數(shù)是有限的,因而需要 對碼本進(jìn)行截斷。球型截斷,就是采用超球面,從碼本截取D維球。金字塔型截斷,使用超 錐,也就是D維錐,對碼本進(jìn)行截斷。本發(fā)明則創(chuàng)造性地設(shè)計了球面量化碼本。所述球面量 化碼本從D維空間的格型矢量量化碼本中進(jìn)行球面截斷得到,包括由D維空間中的某個超 球面(3維以上時稱為超球面)或球面上以及附近的空間格點(diǎn)組成的外圍球?qū)?,其中D大于 或等于2,當(dāng)D等于2時球面退化成環(huán)。外圍球?qū)涌梢灾话ㄒ粋€面上的格點(diǎn),也可以包括 一個面上及其周圍的格點(diǎn),容許超球面或球面附近的空間格點(diǎn)加入外圍球?qū)?,相?dāng)于球面 可以有一定厚度。換言之,外圍球?qū)涌梢园ú恢挂粚痈顸c(diǎn)。但球面內(nèi)不能是實(shí)心的,也就 是說外圍球?qū)觾?nèi)部必須包含中空區(qū)域。考慮到某些情況,如對應(yīng)的壓擴(kuò)參數(shù)如果采用增益 因子的話,就會面臨無窮大的問題,本發(fā)明進(jìn)一步提出,可以在在超球面或球面的中心設(shè)置 中心球,此時中空區(qū)域處于外圍球?qū)雍椭行那蛑g,如圖1所示3維空間內(nèi)球面的截面。這 樣,可以提供臨界值,避免壓擴(kuò)參數(shù)理論上可以達(dá)到無窮大,造成大大提高數(shù)據(jù)率的狀況。中心球的半徑可以具體實(shí)施時由本領(lǐng)域技術(shù)人員根據(jù)經(jīng)驗(yàn)設(shè)定,可以包括一些小值點(diǎn),最 簡單的是直接設(shè)定為1個點(diǎn),即超球面或球面的中心點(diǎn)。參與量化和反量化的球面量化碼 本是一致的,實(shí)施時其空間維度D和輸入待量化矢量的維數(shù)是一樣的。編碼方案 步驟1. 1、對輸入待量化矢量⑴進(jìn)行壓擴(kuò),得到壓擴(kuò)后矢量⑵和對應(yīng)的壓擴(kuò)參 數(shù)(3)。壓擴(kuò)的主要目的是將不在球面量化碼本范圍內(nèi)的待量化矢量,通過某種算法進(jìn)行變 換,使壓擴(kuò)后的待量化矢量在球面量化碼本范圍之內(nèi)。一般現(xiàn)有壓擴(kuò)的目標(biāo)都是縮小,而本 發(fā)明實(shí)施壓擴(kuò)時,為了將不在球面量化碼本范圍內(nèi)的待量化矢量壓縮到范圍內(nèi),同時提供 縮小和放大的作用。實(shí)施壓擴(kuò)時可以采用的方法有很多,使用增益因子、線性/非線性變換、各種函數(shù) 映射均可,例如采用對數(shù)函數(shù)進(jìn)行壓擴(kuò)。實(shí)施例采取了一種基于矢量能量的線性壓擴(kuò)方法, 針對每一個輸入的D維待量化矢量X,其中&是乂的第i維分量,i = 1,2,…,D。通過計 算待量化矢量X的能量計算壓擴(kuò)參數(shù)G,對待量化矢量X進(jìn)行壓擴(kuò),得到壓擴(kuò)后矢量X計算 公式如下G=挪 ErefX=XfG
D其中E為待量化矢量X的能量,E=K,Eeef為參考能量。
i=\為節(jié)約資源起見,本身就在球面量化碼本范圍內(nèi)的輸入待量化矢量實(shí)際上可以不 進(jìn)行壓擴(kuò)操作,直接進(jìn)行下一步。實(shí)施例處理方式為,壓擴(kuò)前判斷先輸入待量化矢量是否在 中心球,如果否則進(jìn)行壓擴(kuò);如果是,將壓擴(kuò)后矢量設(shè)為零矢量,對應(yīng)壓擴(kuò)參數(shù)為1,進(jìn)行下 一步。在外圍球?qū)拥妮斎氪炕噶繀⑴c壓擴(kuò),這樣程序比較簡便,計算出來的壓擴(kuò)參數(shù)一 般會為1。步驟1. 2、對步驟1. 1中所得壓擴(kuò)參數(shù)(3)進(jìn)行量化,得到壓擴(kuò)參數(shù)的量化索引 ⑷。實(shí)施例采用壓擴(kuò)參數(shù)量化碼本對待量化的壓擴(kuò)參數(shù)G進(jìn)行量化,該碼本可由訓(xùn)練 得到,查找碼本得到量化后的壓擴(kuò)參數(shù);的量化索引KG,或量化索引KG的編碼KG'。步驟1. 3、對步驟1. 1中所得壓擴(kuò)后矢量(2),使用球面量化碼本對其進(jìn)行量化,得 到壓擴(kuò)后矢量的量化索引(5)。實(shí)施例采用D維空間中的某個球面上或球面附近的格點(diǎn)作為球面量化碼本,通過
搜索最近的碼字作為壓擴(kuò)后矢量7的量化結(jié)果7得到對應(yīng)的量化索引K,或者將量化索
引K用熵編碼等編碼方法編碼后,輸出量化索引K的編碼K'。步驟1. 4、將步驟1. 2所得的壓擴(kuò)后矢量的量化索引(5),以及步驟1. 2所得的對 應(yīng)的壓擴(kuò)參數(shù)的量化索引(4)寫入碼流。實(shí)施例將步驟1. 3所得量化后的壓擴(kuò)后矢量;所對應(yīng)的量化索引K,或者量化索引K的編碼K'寫入碼流;將步驟1. 2所得量化后的壓擴(kuò)參數(shù)0;所對應(yīng)的量化索引KG,或者
量化索引KG的編碼KG'寫入碼流。 解碼方案步驟2. 1、從碼流中提取壓擴(kuò)后矢量的量化索引(5),以及對應(yīng)的壓擴(kuò)參數(shù)的量化 索引⑷。實(shí)施例從碼流中提取本方案解碼所需的參數(shù),即編碼時寫入碼流的量化索引,包
Λ
括量化后的壓擴(kuò)后矢量7的量化索引K或量化索引K的編碼K',以及量化后的壓擴(kuò)參
yi
數(shù)(^;的量化索引KG或量化索引KG的編碼KG'。步驟2. 2、根據(jù)步驟2. 1所得壓擴(kuò)后矢量的量化索引(5),通過查找球面量化碼本 得出對應(yīng)的量化后的壓擴(kuò)后矢量(6);
Λ實(shí)施例根據(jù)量化后的壓擴(kuò)后矢量;的量化索引K查找球面量化碼本,得到對應(yīng)的
yi
Λ
量化后的壓擴(kuò)后矢量7顯然,解碼時所用球面量化碼本與編碼時步驟1. 2所用球面量化
Λ ο
碼本一致。如果解碼端在步驟2. 1得到的是量化索引的編碼K',先解碼得到量化索引K即可。步驟2. 3、根據(jù)步驟2. 1所得壓擴(kuò)參數(shù)的量化索引(4),通過查找壓擴(kuò)參數(shù)量化碼 本得到量化后的壓擴(kuò)參數(shù)(7);實(shí)施例根據(jù)量化后的壓擴(kuò)參數(shù)0;的量化索引KG,通過查找壓擴(kuò)參數(shù)量化碼本,得
到量化后的壓擴(kuò)參數(shù)。如果解碼端在步驟2. 1得到的是量化索引KG的編碼KG',先解碼
先得到量化索引KG即可。顯然,此碼本要與步驟1. 2中量化壓擴(kuò)參數(shù)使用的碼本一致。步驟2. 4、根據(jù)步驟2. 3得到的量化后的壓擴(kuò)參數(shù)(7),對步驟2. 2所得的量化后 的壓擴(kuò)后矢量(6),通過逆壓擴(kuò)重建量化后的待量化矢量(8)。具體實(shí)施時,逆壓擴(kuò)過程與編碼過程中的壓擴(kuò)相逆即可。實(shí)施例中,編碼時對于落 入中心球中的矢量直接量化并設(shè)壓擴(kuò)參數(shù)1,解碼時無需另外特別處理。實(shí)施例根據(jù)步驟2. 3中得到的量化后的壓擴(kuò)參數(shù);,對步驟2. 2所得的量化后的
Λ
壓擴(kuò)后矢量;進(jìn)行逆壓擴(kuò),得到量化后的待量化矢量;計算方法如下 XΛ ο
權(quán)利要求
一種球面矢量量化編碼方法,其特征在于采用球面量化碼本參與量化,所述球面量化碼本從D維空間的格型矢量量化碼本中進(jìn)行球面截斷得到,包括由D維空間中的某個超球面或球面上以及附近的空間格點(diǎn)組成的外圍球?qū)?,外圍球?qū)觾?nèi)部包含中空區(qū)域,其中D大于或等于2,當(dāng)D等于2時球面退化成環(huán);編碼過程包括以下步驟,步驟1.1、對D維的輸入待量化矢量進(jìn)行壓擴(kuò),得到在球面量化碼本范圍內(nèi)的壓擴(kuò)后矢量和對應(yīng)的壓擴(kuò)參數(shù);步驟1.2、對步驟1.1中所得壓擴(kuò)參數(shù)進(jìn)行量化,得到壓擴(kuò)參數(shù)的量化索引;步驟1.3、對步驟1.1中所得壓擴(kuò)后矢量,使用球面量化碼本對其進(jìn)行量化,得到壓擴(kuò)后矢量的量化索引;步驟1.4、將步驟1.2所得壓擴(kuò)后矢量的量化索引,以及步驟1.3所得對應(yīng)的壓擴(kuò)參數(shù)的量化索引寫入碼流。
2.如權(quán)利要求1所述的球面矢量量化編碼方法,其特征在于所述球面量化碼本在超 球面或球面的中心設(shè)置中心球,外圍球?qū)雍椭行那蛑g是中空區(qū)域。
3.一種球面矢量量化解碼方法,其特征在于采用球面量化碼本參與反量化,所述球 面量化碼本從D維空間的格型矢量量化碼本中進(jìn)行球面截斷得到,包括由D維空間中的某 個超球面或球面上以及附近的空間格點(diǎn)組成的外圍球?qū)?,外圍球?qū)觾?nèi)部包含中空區(qū)域,其 中D大于或等于2,當(dāng)D等于2時球面退化成環(huán);解碼過程包括以下步驟,步驟2. 1、從碼流中提取壓擴(kuò)后矢量的量化索引,以及對應(yīng)的壓擴(kuò)參數(shù)的量化索引;步驟2. 2、根據(jù)步驟2. 1所得壓擴(kuò)后矢量的量化索引,通過查找球面量化碼本得出對應(yīng) 的量化后的壓擴(kuò)后矢量;步驟2. 3、根據(jù)步驟2. 1所得壓擴(kuò)參數(shù)的量化索引,通過查找壓擴(kuò)參數(shù)量化碼本得到量 化后的壓擴(kuò)參數(shù);步驟2. 4、根據(jù)步驟2. 3所得量化后的壓擴(kuò)參數(shù),對步驟2. 2所得量化后的壓擴(kuò)后矢量, 通過逆壓擴(kuò)重建量化后的待量化矢量,量化后的待量化矢量為D維。
4.如權(quán)利要求3所述的球面矢量量化解碼方法,其特征在于所述球面量化碼本在超 球面或球面的中心設(shè)置中心球,外圍球?qū)雍椭行那蛑g是中空區(qū)域。
全文摘要
本發(fā)明屬于量化編碼技術(shù)領(lǐng)域,特別是涉及一種球面矢量量化編解碼方法。本發(fā)明采用球面量化碼本參與量化,所述球面量化碼本從D維空間的格型矢量量化碼本中進(jìn)行球面截斷得到,包括由D維空間中的某個超球面或球面上以及附近的空間格點(diǎn)組成的外圍球?qū)?,其中D大于或等于2,當(dāng)D等于2時球面退化成環(huán)。利用這種球面量化碼本對滿足高斯分布的矢量數(shù)據(jù)進(jìn)行量化,量化的質(zhì)量好切效率高。
文檔編號H04L25/03GK101986630SQ20101051124
公開日2011年3月16日 申請日期2010年10月18日 優(yōu)先權(quán)日2010年10月18日
發(fā)明者劉進(jìn)峰, 方力, 王國英, 王恒, 王曉晨, 王松, 胡瑞敏, 董石, 陳先念, 高麗 申請人:武漢大學(xué)