專利名稱:連續(xù)細(xì)分的點(diǎn)陣矢量量化的制作方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及連續(xù)細(xì)分的點(diǎn)陣矢量量化。
背景技術(shù):
目前,在低比特率下同時保持高質(zhì)量情況下傳送和存儲音頻和視頻內(nèi)^ 很高的市場需求。尤其是,在傳輸資源或存儲翻限的情況下,低比特率操作 是基本的價格因素。這是一種典型盼瞎況,例如,在移動通信系統(tǒng)例如GSM、
UMTS或CDMA中的流媒體和消息應(yīng)用程序中。另一方面,例如在因特網(wǎng)上的 大部分內(nèi)容,只有在高比特速率下才可用,所述高比特速率能保證最高的質(zhì)量 但是其不能直接在移動網(wǎng)絡(luò)上被流傳輸。為了使內(nèi)容供應(yīng)商在多種不同網(wǎng)絡(luò)上 分發(fā)內(nèi)容,例如廣播,內(nèi)容在某一網(wǎng)絡(luò)網(wǎng)關(guān)轉(zhuǎn)碼的不同比特速率皿率上以若 干格式來獲得,如果有需要的話。
對于這個問題的現(xiàn)有技術(shù)解決方案是利用可伸縮編解碼器(scalable codecs)??缮炜s編解碼器的基本思想是只做一次編碼,產(chǎn)生包括基礎(chǔ)層和一個 或若干個增 蹈的可伸縮比特流。當(dāng)截斷比特流時,也就是說降低比特速率時, 通過丟棄至少一個增弓SM,解碼器仍會辦在較低的速率下解碼數(shù)據(jù)。Mi^個 技術(shù),速,碼 了簡單的截斷操作。
對于可伸縮編解碼器令人感興趣的應(yīng)用是在異構(gòu)網(wǎng)絡(luò)J^行音頻4見頻的內(nèi) 容分發(fā),例如移動電視,電視廣播,視頻點(diǎn)播、音樂流媒體等等。對于這樣一 個成功的業(yè)務(wù),非常期望內(nèi)容分發(fā)將盡可能的廣泛、容易。同時對于大多數(shù)不 利的信道鏈路應(yīng)當(dāng)保證確定的最小服務(wù)質(zhì)量,也就是iM于低帶寬鏈路的最小 可接^量。
可伸縮音頻與視頻編解碼器正獲得越來越多標(biāo)準(zhǔn)化組織例如MPEG (運(yùn)動 圖像專家組)的興趣。事實(shí)上,MPEG當(dāng)前正在標(biāo)準(zhǔn)化H264/AVC標(biāo)準(zhǔn)(增強(qiáng) 型視頻編碼)的可伸縮擴(kuò)展以及發(fā)布有關(guān)可伸縮音頻和語音編解碼器的信息咨 詢。其它標(biāo)準(zhǔn)化組織例如DVB (數(shù)字視頻廣播)也正考慮f頓SVC (可伸縮AVC)。
雖然可伸縮音頻編解碼器已經(jīng)存在并且已經(jīng)標(biāo)準(zhǔn)化,例如BSAC (比特分 片算術(shù)編碼),與AAC (增強(qiáng)型音頻編碼)相關(guān)聯(lián)、作為專家組的MPEG,但 仍舊感覺需要招氐比t魏率上填充現(xiàn)有間隙的新技術(shù)。事實(shí)上,這是A^f周知 的問題,可伸縮編解碼器在給定的比t魏率下,比在相同速率下的非可伸縮編 解碼器總是有更差的性能。
現(xiàn)有技術(shù)的語音編碼和通常的音頻信號的編碼是基于變換編碼。依據(jù)這種 方法,初始輸入信號被分成連續(xù)的重4^樣塊(幀)。線性變換,例如DFT (離 散傅里葉變換)或MDCT (修改的離散余弦變換),t^用在^h幀上,從而產(chǎn) 生變換系數(shù)。這些系數(shù)被量化并且產(chǎn)生量化的系數(shù),所述系數(shù)依次被編碼并且 形成比特流的一部分。比特流根據(jù)尋求應(yīng)用程序(sought application)被存儲或 傳送。 一旦接收到比特流,解碼器首先解碼先前被編碼的量化系數(shù)并且執(zhí)fi1^ 變換,例如E)FT或IMDCT,產(chǎn)生被解碼的幀。為了產(chǎn)生被解碼的時域信號, 被解碼的幀通常由所謂重疊相加的過程組合。
矢量量化(VQ)是^^f周知的量化技術(shù),其中幾個系數(shù)一起組合成矢量。 通過編碼本的條目來估計所得到的矢量。取決于所使用的失真量度,編碼本中 最近鄰居被選為系數(shù)輸入矢量的近似值。編碼本越大,近似i!H好,從而產(chǎn)生 較低的總失真。然而,這將以增加存儲器、比特速率和計算復(fù)雜性為代價而得 到。
對于^s量化的編碼本可以有不同的結(jié)構(gòu)并且可以用不同的方式設(shè)計。
設(shè)計非結(jié)構(gòu)化矢量量化的編碼本的一種方式是使用眾所周知的LBG (Linde-Buzo-Gray)算法(K-means K-均值)。非結(jié)構(gòu)化編碼本從在數(shù)據(jù)上訓(xùn)練 它們的意義上講是最佳的,從而適合于被量化的^S分發(fā)。然而,這個最佳性 以為了發(fā)現(xiàn)最近鄰居將窮^^叟索以及巨大的存儲器需求為代價而得到;兩者隨 著量化器比特速率按指數(shù)規(guī)律地增長。
對非結(jié)構(gòu)化矢量量化的一個替換方式是使用結(jié)構(gòu)化矢量量化器,所述量化 器是在結(jié)構(gòu)上被限制的矢量量化器。
多級矢量量化是一種樹形結(jié)構(gòu)量化器,更加減少算法和存儲器的,性。 多級VQ /Afi化具有^Wt率的編碼本的^fi開始,而不^t給定的速率具有 巨大的編碼本。第一個量化級的殘差被提供給第二級,其中在所述第二級上另一個(或相同)的編碼本可能在不同的速率下被用來量化殘差。這個過程在全 部級中被重復(fù)以產(chǎn)生最后的量化誤差。量化器的總速率是各個量化器級速率的 和。
在多級矢量量化中,用第一級編碼本CA量化源向量x,產(chǎn)生具有索引^的
編碼矢量"O。第一級的殘差按^"-q(0計算,并且第二級用編碼本c^量 化第一級的殘差,產(chǎn)生具有索弓l'2的編碼矢量"0。在隨后的級中再次重復(fù)這
^S1程,直到將殘差e"""-廣c"-力"-J輸Ai合最后級,并朋編碼本^"量化,
以產(chǎn)生具有索引、的編碼矢量 (0。
源矢量的重建由執(zhí)行量化器的鵬作組成; 一旦接收索弓iy"…"",解碼 器計算出重建矢量,所給的等式如下
魂"2,…0、(0 + C2(0 +…+ C"('") (1)
用于編碼^的整體比特速率是各級比特速率的和。除了節(jié)約計算復(fù)雜性外, 多級矢量量化器還JI供一種以遊賣細(xì)分方式,碼矢量的方法。
如果僅有部分索引被接收時,例如,H…A,"",那么仍然有可能重建
魂,",...0 = fc) + c2 (0 +…+ Q fc) (2) 其具有較高的量化誤差,也就是較低的性能,但是它只需要較低的比特速
率。因此,^h額夕港收的索引tK以改善重建矢量。
盡管多級VQ比常規(guī)非限制VQ具有優(yōu)勢,但它仍有一些限制
參當(dāng)要求高速量化步驟(也就是大編碼本)時,多級矢量量化將變得相當(dāng)復(fù)雜。
參編碼本的存儲點(diǎn)級數(shù)目成正比,因此限制了遊賣細(xì)分的靈活性。 參連續(xù)改善的特性意贈在連續(xù)量化步驟上受至喲束,這將在ftf可速率上 限制 可超啲性能。
另一種結(jié)構(gòu)化VQ的類型是點(diǎn)陣^i量化(LVQ)。在LVQ中,通過{頓 給定點(diǎn)陣中點(diǎn)的子集來形成編碼本。點(diǎn)陣是幾何對象,其由一組基矢量的, 線性組合構(gòu)造而成。低復(fù)雜度和存儲器消耗使得對量化〗頓點(diǎn)陣非常有吸弓l力。 然而,仍有一些問題影響它們盼(4能和録度
參對于可變速率編碼,為了獲得期望的失真和速率必須縮放點(diǎn)陣(基矢量), 另外,必須4頓無損編碼器來編碼產(chǎn)生的索引。參對于固定速率編碼,為了定義確定的編碼本必須^ffl整形(sh邵ing),以 及縮放點(diǎn)陣使得大部分的輸入矢量(稱為載體)存在于在已定義的整形區(qū)域內(nèi)。 在整形區(qū)域之外的矢量,也稱為異常值(outlier),導(dǎo)致了一個非常嚴(yán)重的問題, 可以通過飽和度或縮方j(luò)^解決該問題。兩種技術(shù)糊每增加額外的計算負(fù)擔(dān)并且 將陶氐品質(zhì),特別是在駄異常值盼瞎況下。
在d維點(diǎn)陣中的每個點(diǎn)c可以寫做c = Gm , G稱為生成矩陣和附是整數(shù)矢 量。存在幾^W及的點(diǎn)陣,例如,六角點(diǎn)陣4,徵點(diǎn)陣乙,Gosset點(diǎn)陣^。
當(dāng)選擇點(diǎn)陣被選擇來設(shè)計確定速率的量化器時,為了形成具有確定比特數(shù) 目的編碼本,僅保留點(diǎn)陣點(diǎn)的一個子集。眾所周知的技術(shù)^I常所稱的點(diǎn)陣整 形。這個技術(shù)由按照整形邊界截短點(diǎn)陣組成。整形邊界是以一些點(diǎn)(初始點(diǎn)) 為中心,并且可以,任何形狀,例如矩形,球形,或者金字塔形、voronoi形
使用點(diǎn)陣進(jìn)行量化可以考慮非常有效率的最近鄰居搜索算法。對于大多數(shù) 有用的點(diǎn)陣,已在[l]中發(fā)現(xiàn)這樣的搜索算法。另一方面,當(dāng)使用點(diǎn)陣進(jìn)行量化 時,實(shí)際上不需要存儲編碼本,因?yàn)辄c(diǎn)陣點(diǎn)可以從生,陣中直接獲得。
當(dāng)發(fā)現(xiàn)一個點(diǎn)陣點(diǎn)時,進(jìn)一步的任務(wù)由索引點(diǎn)陣點(diǎn)組成。已經(jīng)設(shè)計出幾個 索引算法。 一類有趣的索引算制吏用了領(lǐng)導(dǎo)者的概念,在[2、 3]中描^ff述m 的實(shí)例。當(dāng)f頓球鵬形時,4細(xì)這類索引^S好的。
另一種整形是voronoi整形,所述 在[4]中被描述并且依賴于voronoi區(qū) 娜腺
如[4]中所描寫的那樣,通逝柳微取模操作可以有效的實(shí)現(xiàn)voranoi編碼 本中編碼矢量的索弓,恢復(fù)。
為了M51連續(xù)細(xì)分^T展點(diǎn)陣量化,在[5]中描述的技術(shù)方法使用了 voronoi 編碼。這個技術(shù)和具有由點(diǎn)陣編碼本替代的傳統(tǒng)編碼本的多級VQ很相似。這 個技術(shù)的實(shí)質(zhì)是基于產(chǎn)生一系列遞減的縮放voronoi點(diǎn)陣VQ,在先前較高的縮 放中,針都覆蓋基礎(chǔ)點(diǎn)陣的vorond區(qū)域。然而,這個技術(shù)同樣經(jīng)受異常值的 問題,尤其是如果在第一個級中出現(xiàn)異常值。事實(shí)上,設(shè)計連續(xù)級來減少顆粒 噪聲,因此就不能有效地處理異常值。這個技術(shù)的另一個問^^自于量化器效 率,因?yàn)楹罄m(xù)步驟的編碼本入口無法有效地涵蓋先前級的分布。
在問中描述的技術(shù)使用了多速率點(diǎn)陣量化方法用于編碼點(diǎn)陣點(diǎn)。這個技術(shù)依賴于編碼本擴(kuò)展 。每當(dāng)量化矢量無法落A^ff出編碼本中時,為了能夠索 引量化的矢量,基礎(chǔ)編碼本被自行擴(kuò)展。這個^W質(zhì)上是可^I率^^術(shù)。
參考文件[7]描述了對稱多描述點(diǎn)陣矢量量化器。i頓標(biāo)簽功能將量化短 劃分到兩個冗余描述中,所述兩個冗余描述被保雜兩個不同的流中。 一種類 似技術(shù)在[8]中進(jìn)一步得到發(fā)展,以用于不對稱點(diǎn)陣矢量量化。這些^有幾個
缺點(diǎn),比例如
參因?yàn)槎鄠€描述的對象能夠?qū)χ济枋鰡为?dú);t&i^fi科馬,在^描述中都 傳送一定量的冗余,這反過來使得在連續(xù)細(xì)分量化器中f頓多個描鵬成嚴(yán)重 的效率低下。
參最佳的標(biāo)簽功能的設(shè)計是一項(xiàng)繁重的任務(wù),其需要統(tǒng)性規(guī)劃技術(shù)。 參標(biāo)簽功能需要存儲索弓l匹配査找表格,因此如果需要幾個匹配函數(shù),那 么必將增加存儲的需求。
發(fā)明內(nèi)容
本發(fā)明的目標(biāo)是改善連續(xù)細(xì)分點(diǎn)陣矢量量化和編碼,以及所產(chǎn)生的分層碼 的解碼。
這個的目標(biāo)根據(jù)附屬的權(quán)利要求書來實(shí)現(xiàn)。
簡單地說,矢量量化M5i屬于點(diǎn)陣A。的點(diǎn)陣矢fi^fi似矢量x開始。其后,
M具有相應(yīng)予跌確定的纖^"序歹啲點(diǎn)陣除法在連續(xù)的點(diǎn)陣Aw上點(diǎn)陣矢
量連續(xù)地被懶率成商數(shù)矢量乂的序列和余數(shù)矢量^的序歹U,其中"i.j, *是 正整數(shù),其表^h序列中元素的數(shù)目。
編石馳括編碼相應(yīng)的voronoi編碼本、""中的各個余數(shù)矢量^ ,其中",是 予頁先確定的位移矢量,其屬于點(diǎn)陣A'-i的voronoi區(qū)域、W,并131過所述編碼 的余數(shù)矢量^ ,所述余數(shù)矢量^的數(shù)量A和定義所述vorond編碼本的整 數(shù)A序歹訴Q位移矢量",標(biāo)矢量x 。
解石馳括根據(jù)下面的等式重建矢量y的近似值少
<formula>formula see original document page 9</formula>
其中/"是正微,表示多個遺漏的編碼余數(shù)矢量,并且L /=1—/是對應(yīng)voronoi編碼本的平均矢量。
本發(fā)明連同它的進(jìn)一步的目標(biāo)和優(yōu)勢,通過參考下面的描述并結(jié)合附圖可
以更女子的被理解,其中
圖l (a) - (d)圖示了對于整數(shù)點(diǎn)陣Z2的vorond編碼本的概念; 圖2 (a) - (d)圖示了對于六角點(diǎn)陣4的voronoi編碼本的慨念; 圖3是一個流程圖,其圖示了根據(jù)本發(fā)明的矢量量化器方法的實(shí)施例; 圖4圖示了圖3中矢量量化方法的一i^^代; 圖5 (a) - (d)圖示了基于圖3方法的^M量化的例子;
圖6是^ffl本發(fā)明^fi量化方法的編碼器的實(shí)施例;禾口
圖7是^ffl本發(fā)明解碼方法的解碼器的實(shí)施例。
具體實(shí)施例方式
因?yàn)関oronoi編碼本的 ^對于本發(fā)明^^、需的,將參考圖1和2詳細(xì)地描 述voronoi編碼本。voronoi編碼本c々'。)由落MI方M轉(zhuǎn)換的voronoi區(qū)域內(nèi)的 全部點(diǎn)陣點(diǎn)形成,也就是
CA(r, ) = An(rFA(0) + a) (3)
其中,
A:表示點(diǎn)陣。
,)g與點(diǎn)陣A相關(guān)的初始點(diǎn)周圍的voronoi區(qū)域。
。標(biāo)正M縮縣數(shù)。
":g被選擇的矢量,以至于沒有點(diǎn)陣點(diǎn)落在《(0) + "的邊界上。
M3i圖l中序列(a) - (d),等式(3)用于描^m點(diǎn)陣Z2。圖l (a)圖 示了整個點(diǎn)陣A (因?yàn)辄c(diǎn)陣擴(kuò)展至鵬個面上,因此僅顯示了點(diǎn)陣的一部分)。選 擇一個點(diǎn)陣點(diǎn)作為初始點(diǎn)并在圖1 (a)中用圓圈表示。初始點(diǎn)周圍的vorond 區(qū)域WW也被圖示??s放的vorond區(qū)域^W被圖示在圖1 (b)中。在這個例 子中,=4。在圖1 (b)中,注意一些點(diǎn)陣點(diǎn)落在^八(o)的邊界上。如圖1 (c)所示,由于這個原因,縮放的voronoi區(qū)域M51位于vorcnoi區(qū)域,)中的位移 矢量aik行位移。這就產(chǎn)生了縮方j(luò)^:位移的voronoi區(qū)域化(o)+"。最后如圖1 (d)所示,ffi31取點(diǎn)陣A和縮方JL^位移的voronoi區(qū)域^仰"之間的交集形成 vorond編碼本&(4>。)。應(yīng)當(dāng)注意的是沒有編碼本中的節(jié)點(diǎn)落在邊界上。
圖2 (a) - (d)圖示了對于六角點(diǎn)陣4的相似序列。應(yīng)該理解的是,相同 的原理可以被用于其它以及更高維的vorond編碼本。
屬于voronoi編碼本ca(w)的點(diǎn)總數(shù)是一 ,所述一 等于說編碼本有l(wèi)og2"比
特/維度。
本發(fā)明基于附錄I中描述的點(diǎn)陣除法。使用點(diǎn)陣除法,點(diǎn)陣矢量少根據(jù)下面 公式M5i少除以正M^可以被分解成商數(shù)^4《和余數(shù)矢量r:
其中"CaG^)。商數(shù)^是一個矢量,其可以被進(jìn)一步,率成商數(shù)和余數(shù),
并且這4Slf呈可以被重復(fù)以獲得越來越小的余數(shù)。算法可以,下列偽代碼來 鵬
給出一組 ,內(nèi),W'…,所有M(都是正數(shù)且》2,和一纟跌量 乂 = A+J,+i + Li ,其中e C八,) / = O,l,...
如ft錄n所示,這個算法總是收斂到包含在巧(o)中的零或另一個點(diǎn)陣點(diǎn)。
艦4頓附錄n中所述的收斂測試,可以4頓如下的偽代碼實(shí)現(xiàn)算法給出一組整數(shù),W,W,…,所有的整數(shù)都是正數(shù)且》2,和一組矢量
<formula>formula see original document page 12</formula>
在圖3中的流程示了這個算法的一種實(shí)現(xiàn)。算法從在步驟S1中選擇點(diǎn)
陣矢量^。并設(shè)定索引/ = 0開始。步驟S2執(zhí)行如下的迭代
<formula>formula see original document page 12</formula>
(5)
步驟S3判斷是否《^+1 = o。如果是這種情況,則算法已經(jīng)收斂(參見附
錄n),否貝U進(jìn)行步驟S4。步驟S4判斷是否A+:2和"'+^-x。如果是這種情
況,則算法已經(jīng)收斂(參見附錄n),否則進(jìn)行步驟S5。在步驟S5中/增加1, 然后算法返回步驟S2。因?yàn)閊兩種可能的方式到達(dá)收斂(在步驟S3或步驟 S4中),最后編碼器的狀態(tài)可以由標(biāo)志位6指出,例如,如果在步驟S3超敝 斂,那么將6設(shè)為0,如果在步驟S4超l」收斂,則將b設(shè)為l。
圖4描述了圖3中的迭代步驟S2。位于voronoi區(qū)域「八仰中的點(diǎn)陣矢量A 和矢量"w形成了虛線的矢量乂一"'"。這個矢量被M&除,,這個例子中 等于2,從而形成了重新縮放的矢量"-"!")/2,其被量化到最近的點(diǎn)陣點(diǎn),以 形成商數(shù)矢量乂"。余數(shù)矢量"w是由乂—^Ww形成的,在這個例子等于 少,—2乂"。余數(shù)^屬于編碼本CA(A",a"1),在這個例子中是Q(2'"'"),如圖4中所示。這4iT征將被用于實(shí)際的編碼。
維數(shù)"的矢量x的編碼/A^擇最近的點(diǎn)陣矢量"仏W開始。在(5)中定義的點(diǎn)陣除法中,這個點(diǎn)陣矢量被用作初始矢量h。每次除法產(chǎn)生屬于相應(yīng)voronoi編碼本;(^')的余數(shù)"因?yàn)辄c(diǎn)陣除法算法在經(jīng)過一定數(shù)量^的迭代后 收斂(附錄n),這意 根據(jù)下述公式點(diǎn)陣矢量^可以表示為余數(shù)",的線性組 合.
<formula>formula see original document page 13</formula>
等式(6) ^M51^算法(5)的循環(huán)展開A次;^代而獲得的。這里^表示對 應(yīng)于余數(shù)矢l7,的整數(shù)縮放系數(shù),也就是,A-ft巧。在等式中(6)約定
用于求和中的第一項(xiàng)。
如附錄m所示,由這個過程產(chǎn)生的編碼矢量"'是唯一的。需要注意的是層 是倒序的。第一層就解碼最重要的層,是具有最高微縮放系數(shù)^的一層。
圖5圖示了對于點(diǎn)陣Z2的這個^f呈。在圖5 (a)中,點(diǎn)陣矢量"h是被 整數(shù)A =3除的點(diǎn)陣。這產(chǎn)生了屬于voronoi編碼本^(3,3)的余數(shù)矢量^和商數(shù) 矢量乂 (為了簡化,在這個例子中矢量a!細(xì)于所有編碼本)。在圖5 (b)中, 點(diǎn)陣M^是被 幾=2除的點(diǎn)陣。這產(chǎn)生了屬于voronoi編碼本的余 數(shù)矢量^和商數(shù)矢量h。在圖5 (c)中,點(diǎn)陣矢量少2是被 ^=2除的點(diǎn)陣。 這產(chǎn)生了屬于voronoi編碼本^2,0的余數(shù)矢量"3 =沁和商數(shù)矢量凡=0 。因?yàn)?A=0,滿足圖3中的條件S3,算法在"3次迭代時收斂。應(yīng)用(6)到這飾ij 子可以給出(從基礎(chǔ)層* = 3開始)
如圖5 (d)中所示。
因?yàn)榫幋a縫^,…力的每一個屬于voronoi編碼本,它們的索引可以利用在[4懶述的^^f周知的算法,即索弓灘導(dǎo)(derivingindices),進(jìn)fili碼 ";=[(T'7j] mod/ ,, z'-l…;t (7)
其中G是點(diǎn)陣的生^陣,"mod"是取模函數(shù)。為了編碼,^索引"'都
需要^^(a)個比特。
索引A,…, 和它們的數(shù)量A是從編碼器到解碼器傳送的主要編碼參數(shù)。層 的數(shù)目的傳送很重要,因?yàn)榈谝?(最重要的)層是對應(yīng)于索引/4的一層,最 后一 (最不重要的)層^t應(yīng)于索引"i的一層。層的數(shù)目也與矢量少的能量有 關(guān)系,因此可以被看做一種增益-^^編碼(gain-shape coding)。
同樣值得注意的是,點(diǎn)陣除法算法已經(jīng)停止的>1^態(tài)也必須被傳送。參考圖3 所描述的,這個狀態(tài)可以被描述為二進(jìn)制變量6 = 0或"1并且被稱為標(biāo)志位。 在解碼器中,標(biāo)志位指示標(biāo)h"的編碼短是否需要進(jìn)行符號改變。然而,需 要注意的是標(biāo)志位只有在 序列a》2包含至少一個戶,=2時才需要,以至于 收斂可育^I3i步驟S4到達(dá)而不是步驟S3。如果^PS〉2,并且這4^事實(shí)在解
碼器中是已知的,那么標(biāo)志位就不是必需的,因?yàn)檫@種情況下收斂總^M:步
驟S3到達(dá)。
控制各層的比特配置的參數(shù)A,…,A以及位移矢量氣""…A ,對于解碼余 數(shù)矢量C并且恢復(fù)矢量^也是必需的。然而它們是可以預(yù)先確定并且固定在編 碼器和解碼器上,因此不需要傳送。通常,參數(shù)A,…A^了各層的顆粒度。
如果確定各層具有相同的比牛粉配數(shù),那么所有a都相等。如果這個值不 變,那它就可以固定在編碼器和解碼器上,否則也僅有一個值必須被傳送。如 果確定全部的層將被"比特編碼,那么對于所有的z'均是a = 2 ,因此沒有a需 要被傳送。
如上面已經(jīng)討論的,選擇位移矢量 ^,…A,以至于它們?nèi)慷紝儆谠诔?始點(diǎn)周圍的voronoi區(qū)域。選擇它們,以沒有點(diǎn)陣點(diǎn)位于^仰+。'的邊界上這樣 的方式隔離(breakties)。它們是可以被預(yù)先確定并且固定在編碼器和解碼器中。 為了使這些矢量選擇最優(yōu)化,劍門檢驗(yàn)與各層相關(guān)的體。平均均方誤差(MSE) 是<formula>formula see original document page 15</formula>
其中,
對應(yīng)于編碼的平均會疆,和
標(biāo)在voronoi編碼本^"'"')中的編碼矢量的平均值。對于矢量"""2,…A 的最優(yōu)ft^擇是使這個體盡可能的小。對于voronoi編碼能量最優(yōu)化的一個簡 單普通的算法在[4]中被描述,并且這種情況下可以被用棘優(yōu)化每個^ 。
由等式(6)可知,在解碼器中接收到的量化^g少被按如下等式重建
<formula>formula see original document page 15</formula>
(9)
將索引A ,…, 解碼至輪碼矢量""…,^是按照在[4]中描述的下列算法執(zhí)行
的
<formula>formula see original document page 15</formula> (10)
其中G是點(diǎn)陣A的生成矩陣。
現(xiàn)在,假設(shè)多個/"的層遺失了,那么根據(jù)均方誤差最小化的優(yōu)化重建,
由下面給出
這意歸遺失的編碼矢量^…"!被它們相對應(yīng)的編碼本的平均值替代(如果給出一組整數(shù),W,P2,…,所有整數(shù)都是正數(shù)且^2,和一組點(diǎn)陣 ApA2,…,,矢量a"A,…e^(0),、(0),…;;
乂 = A+Jw +,其中rw e ca, (Aw,",") , for !' = 0,1,…
將等式(5)修改的更具普遍性:
<formula>formula see original document page 16</formula>
(13)
將織編碼為 <formula>formula see original document page 16</formula>
/ = 0,就是說所有層都已經(jīng)被接收,在(11)中的第一個和為零,并且(11) 就簡化為(9))。
迄今為止,均方誤差僅僅為了編碼矢量/咴復(fù)中的誤差而被計算。然而, 因?yàn)槟繕?biāo)是矢量x的量化,因此除了由于遺失層而導(dǎo)致的錯誤外,還需要增加與 量化相關(guān)的誤差。這個誤差取決于點(diǎn)陣voronoi區(qū)域的整形,但是與矢量;c無關(guān),
其由下述等式給出
<formula>formula see original document page 16</formula>
一些已知的點(diǎn)陣,過其它點(diǎn)陣的組合來獲得,其可能具剤氐維度數(shù)。很 明顯這里所描述的發(fā)明同樣可以被應(yīng)用在這些點(diǎn)陣上。例如,對于點(diǎn)陣除法算
法的簡單修改允許,各級(層)上M不同的點(diǎn)陣其中G一,是點(diǎn)陣A'-'的生戯巨陣。
在解碼器,矢量ri從接收到的索引w,.通5i如下等式獲得:
<formula>formula see original document page 17</formula>
并且如果全部的A索引(層)已經(jīng)被接收,則M(9)獲得重建的矢量^和
如果一些索引已經(jīng)被截短,貝IJM (11)獲得重建的矢量;;。在這種情況下M5! 下述等式形成平均編碼本^S:
<formula>formula see original document page 17</formula>^點(diǎn)陣A,都必須是力e 。如果瞎況不是這樣,那么就要讓"e ,假 定一定數(shù)量的附加的輔助信息被傳輸,例如X的轉(zhuǎn)換和/或縮放。
使用不同點(diǎn)陣的好處是,除了它們可以提供靈活性外,某些點(diǎn)陣對于特定 的問題比其它點(diǎn)陣更加適合。此外,通過利用不同的點(diǎn)陣允許完成僅僅使用單 一點(diǎn)陣無法完成的速率失真點(diǎn)(於附幅的平均值對應(yīng)于預(yù)先確定的量化失 真的齢)。
圖6是4OT本發(fā)明矢量量化方法的編碼器的實(shí)施例。點(diǎn)陣量化器10接收矢 量x進(jìn)行矢量量化。其量化矢量x到點(diǎn)陣八。中的最近點(diǎn)陣點(diǎn);v點(diǎn)陣點(diǎn)從存儲 器單元12獲得(典型的通常,點(diǎn)陣點(diǎn)皿存儲的生成矩陣獲得)。將點(diǎn)陣矢量少。 傳,lj與點(diǎn)陣量化器10相連接的點(diǎn)陣矢量^i徵14。根據(jù)等式(13) 的算 法ffl51使用來自存儲器單元12中的點(diǎn)陣序列八。'A"…',位移矢量"""2,…,以及正 整數(shù)A,A,…其被:^賣細(xì)分。最后,將余數(shù)縫M專送到wonoi點(diǎn)陣編碼器16, voronoi點(diǎn)陣編碼器16在相應(yīng)voronoi編碼本&々"?!分袑λ鼈冞M(jìn)行編碼,其中 voronoi編碼本來自voronoi編碼糊建器18, voronoi編碼本構(gòu)建器18 根據(jù)從存儲器單元12檢索的參數(shù)形成編碼本。根據(jù)等式(14)形成相應(yīng)的編碼 w,。在這個實(shí)施例中,將這些編碼和它們數(shù)量A發(fā)誠傳輸?shù)浇獯a器(參見上面 的討論,根據(jù)〗OT的序列p.也需要標(biāo)志位6 )。圖7是fOT本發(fā)明解碼方法的解碼器的實(shí)施例。編碼參數(shù)w,,yfc被voronoi點(diǎn) 陣解碼器30接收,所^0碼器S31使用等式(15)將接收到的索引 ,.解碼成余 數(shù)矢量r, o從存儲器單元32獲得生,陣G",。已解碼的矢量r,被傳超佚M 建單元36 ,所述矢量重建單元36根據(jù)(11)重^5似值^ ,假定"*個余數(shù)矢 量r,遺失了。將重建分成兩個步驟。在第一步驟,在部分^a重建單元36中形 成根據(jù)(11)中的第一個禾啲部分重建的矢量,和在第二步驟,在編碼本均值 加法器38中形成了 (11)的第二個和,并將第二個和加上第一個和以形蹦率碼 矢量少。
所述實(shí)施例的不同模塊的功能,通常是由一個或幾個微處理器或微/信號 M器組合以及相應(yīng)軟件來實(shí)現(xiàn)。
所述實(shí)施例的不同模塊的功能,通常是由一個或幾個微處理器或微/信號 處理器組合以及相應(yīng)軟件來實(shí)現(xiàn)。另一個可能是使本發(fā)明實(shí)現(xiàn)為ASIC (專用集 成電路)或FPGA (現(xiàn)場可編程門陣列)。
很明顯,各層索引^的無損編碼可以提供如上所述的更有效率的分層編碼 方案。諸如霍夫曼編碼或算糊之類的典型技術(shù)特別適用于這個任務(wù)。
當(dāng)矢量:c被量化到點(diǎn)陣點(diǎn)7 e八時,矢量;c較高的能量導(dǎo)致對于編碼需要更 高的比特總數(shù)。當(dāng)所有層被接收時,源^ax的預(yù)縮方M最后的MSE (均方誤 差)有直接的影響。如果源縫被向上縮放,那么最后的MSE^M^,反之亦 然。然而,對于高能量源矢量,表示量化矢量;;所需要的比特總數(shù)也增加了。 這個通常是一種折衷,取決于應(yīng)用。例如,對于音頻編碼,需要最后的MSE對
應(yīng)于掩蔽噪聲門限,因此當(dāng)接收所有的層時,導(dǎo),明的編碼。如果源矢量被
向上縮放,那么最后的MSE)I,少,R^亦然。然而,對于高能量源矢量,表 ^fi化矢量少所需要的比特總數(shù)也增加了。這個通常是一種折衷,取決于應(yīng)用。 例如,在音頻編碼應(yīng)用中,在執(zhí)行了信號的心理聲學(xué)分析后,在頻率域內(nèi)得出 掩蔽閾值。這些掩蔽閾值確定了編碼噪聲的電平,這僅僅被人^耳朵注意到。 透明的有損編碼的目標(biāo)然后是編碼頻譜系數(shù),使得編碼噪聲電刑氏于剛可以被 注意到的噪聲電平。這就轉(zhuǎn)換為選擇適當(dāng)?shù)念l譜系數(shù)縮放,導(dǎo)致最后的均方誤 差與剛可以被注意到的噪聲電平相匹配,因而當(dāng)所有層都被接收時導(dǎo)致了透明 的編碼。
如上所述,本發(fā)明的基本思想涉及可變速率點(diǎn)陣^S量化。特別地,本發(fā)明的相i^^l^OTvoronoi編碼以靈活的連續(xù)細(xì)分方式使用點(diǎn)陣除法算法, 碼源矢量。每個細(xì)分層由屬于某個voronoi編碼本的編碼矢量組成。從#^層的 ^h細(xì)分voronoi編碼本可以在任何時候被選擇具有動態(tài)可變大小并且可以來源
于不同點(diǎn)陣的意義來講,M^細(xì)分層的大小選擇是靈活的。
它也已經(jīng)展示了如何最ifct也解碼對應(yīng)于在vorond編碼本集合中的條目的索
引集合,其中各個索引為己經(jīng)編碼的索引提供附加的細(xì)分。 本發(fā)明有^F^勢,其中一些是 參低復(fù)雜性 參低存儲器需求 參不工作(on the fly)索引
參所描述方案允許形成被量化的源矢量x的分層g,因此當(dāng)部分傳輸信 息沒有到達(dá)到解碼器時,使得解碼器恢復(fù)源縫的低質(zhì)M本。
參可在樹可時候改變分層表示,無需重新設(shè)計編碼本或索引表。這允許編
碼器根據(jù)需要有效地構(gòu)造^^的分層^a。 參減輕點(diǎn)陣縮放和/^is載的問題。
本領(lǐng)域技術(shù)人員可以理解,在不脫離所附權(quán)利要求所定義的范圍盼瞎況下, 可以對本發(fā)明進(jìn)行多種修改和改變。附錄I
這個附錄描述了點(diǎn)陣除法,也就是用點(diǎn)陣矢量除以一個Mt這個技術(shù)的
有效性是以已有的計算最近鄰居的快速算法為基礎(chǔ),在[ConwaySloane]中有論述。
對于維數(shù)為d的任意矢量;c, "2AW標(biāo)在點(diǎn)陣A中x的最近鄰居。假設(shè) 矢量y e A和voronoi編碼本c々,a),并且讓<formula>formula see original document page 20</formula>(17)
這意贈 — a 二何+ / s , 并且s屬于voronoi區(qū)域^(W。這也相當(dāng)于說 y"《+ ar + ps (18)
現(xiàn)在,因?yàn)樯俸汀抖紝儆邳c(diǎn)卩^且戶是纖,從而"+ ^也一定是點(diǎn)陣點(diǎn),
并且因?yàn)?,,劍I、]必然有"。+ P"C々'力,因此 "W + r其中reCAC ,。) (19)
這種懶率矢量;;的方法類似于歐幾里得除法,并且當(dāng)點(diǎn)陣具有維數(shù)^ = i時, 其實(shí)際上就等同于歐幾里得除法。我們稱《為;;被纖p除的商數(shù),稱r為少被 徵p除的余數(shù)。然而,值得注意的是,當(dāng)^>1時《和^均是矢量。
關(guān)于矢量a,它的功能是隔離,但通常它也被優(yōu)化,{吏得編碼能量盡可能的 小。加果"^W,那么M簡單的轉(zhuǎn)換,可以認(rèn)為a是點(diǎn)陣點(diǎn)的總和,而且是 屬于,)的短。因此,點(diǎn)陣點(diǎn)導(dǎo)致轉(zhuǎn)換的voronoi編碼,因此,我們不失一般 性的假定矢量位于初始點(diǎn)0周圍的voronoi區(qū)域,也就是說"^^ 。
在下面的段落,點(diǎn)陣除法的域特性將得至概究。
假定矢量"A,并且讓。e:(0)。使得〃CA(")的全部正Mb的集合被限 制別氐于〃^一的最小可能正微w。劍門稱w為;;的度,表示為deg。(y)。按照(19)使用點(diǎn)陣除法,矢量y"可以表示為"月+,且"c々'夂這
表明deg。(。必須小于或等于p ?,F(xiàn)在艦定義y s Cg。杭"')讓。'e,〉。表明少—r 屬于C"d鄰"W"'。'+力,因此可以表明
K^^ + l,, (20)
現(xiàn)在,如果;^1,立即可知,=0并且?="因此deg。,fe)二deg。,(y)。然后, 假設(shè)"2 。因?yàn)?和"'屬于WW ,隨后可知。'+ 。e巧W和 ",e(2/,A(0)c^(0)。因此
k〔,叫,其中w(。) (21)
隨后可知,商數(shù)矢量《的鵬頁滿足 deg6(*^M + 1 (22)
對于所有正整數(shù)p和任何點(diǎn)陣矢量。附錄n
點(diǎn)陣除法算法,開始于初始矢量y。eA,在先前點(diǎn)陣除法的商IU:應(yīng)用連續(xù)
的點(diǎn)陣除法除以一組正整數(shù)。假定要求M^至少等于二,因?yàn)楫?dāng);;,.=1時任意 步驟不會導(dǎo)致結(jié)果變化。
如果我們寫m,;deg^,.),適當(dāng)?shù)剡x擇矢量^"""⑨,那么算法的迭代將 導(dǎo)致下面情況<formula>formula see original document page 22</formula>其中<formula>formula see original document page 22</formula> (23)
因?yàn)楦鶕?jù)假定,P,々2,可以得至岐演化的上限:
<formula>formula see original document page 22</formula> (24)
A 2 5見在可以將其^成:
<formula>formula see original document page 22</formula>,
如果/t是用于標(biāo)m。的比特數(shù),那么對于,'"劍門必然有m,。,就是說, 對于一些6,, "Q(2A)。由此可見,除法算法總是導(dǎo)致屬于voronoi編碼的點(diǎn)
如果任意A, z"被嚴(yán)格地大于2,那么算法收斂到編碼本C八(l,W,它具
有作為唯一編碼矢量的初始點(diǎn)o。
如果全部的p,2,/",算法就會導(dǎo)致^+1=2>^+2+^2 。然后如果 力+1 eC(2,%+2),隨后必然可知^+2 =0并且算法收斂。否則,如果^+1 gC(2,"fc+2), 那么我們必然有-h+1 eC(2,』)并且隨后立即可知^ =^+1和:+2 =-^并且 算法同樣收斂。
因此,可知算法總是收斂到包含在2^(0)中的零或另一個點(diǎn)陣點(diǎn)。附錄m
可能出現(xiàn)的問題是生成的編碼是否是唯一的。為了解答這個問題,讓我們 考慮算法的兩次迭代
<formula>formula see original document page 23</formula>(26)
那么,劍n可以寫成,
駄式(27)表明,如果巧+1是voronoi編碼,那么算法的二次迭代就等于 整數(shù)-,+1的一次迭代,所述-,"是由;^, ^的乘積。然而,通常不是這種情況,
唯一能表明的是^""^",^、但是這僅僅是限制編碼,并且不是使用 c^'""'^)中所有的編碼矢量。
其次我們表明編碼矢量^與對(。+17,+2)之間是一對一映射的。實(shí)際上,我
們有巧+1=; ,+/.+2+^并且給定 eC^w'0,隨后可知^2被唯一的確定并且
一對一映射這個事實(shí)是很重要的,因?yàn)檫@意"W沒有兩個L,^;)導(dǎo)致相同 的巧+1,因此從這個意義上講,生成的編碼是唯一的且有效率的。巧+1并不必須是
voronoi編碼的事實(shí)導(dǎo)致在平均均方誤差方面劍氏效率的,但是對于具有分層編 碼來說這是^0f周知的代價。參考文獻(xiàn)
lj Conway J. H., Sloane N.J.A. "Fast Quantizing and Decoding Algorithms for Lattice Quantizers and Codes". IEEE transactions on Information Theory. VOL. IT-28, NO. 2, March 1982, pages 227—232.
2] Adoul J.-P., Lamblin C., Leguyader A, "Baseband Speech Coding at 2400 bps using Spherical Vector Quantization". Proc. ICASSP 1984. p明es 1.12.1—1.12.3〗 Rault P., Guillemot C. "Indexing Algorithms for Zn, An, Dn and Dn++ Lattice Vector Quantizers". IEEE transactions on Multimedia. VOL. 3, NO. 4, December 2001, pages 395~404.
4} Conway J, H., Sloane N.J.A. "A Fast Encoding Method for Lattice Codes and Quantizers". IEEE transactions on Information Theory. VOL. IT-29, NO. 6 November 1983, pages 820—824.
5
D. Mukheijee and S.K. Mitra "Successive Refinement Lattice Vector Quantization". IEEE transactions on Image Processing, VOL. 11, NO. 12, December 2002, pages 1337—1348,
問 WO 03/103157
US 6,516,297 Bl
8
S.N. Diggavi, N,J.A. Sloane, V.A. Vaishampayan. "Asymmetric Multiple Description Lattice Vector Qauntizers". IEEE transactions on Information Theory, VOL. 48, NO. 1, Januaiy 2002. pages 174~191,
權(quán)利要求
1、一種矢量量化的方法,包括步驟通過屬于點(diǎn)陣Λ0的點(diǎn)陣矢量來近似矢量x;通過具有整數(shù)的點(diǎn)陣除法在連續(xù)的點(diǎn)陣Λl-1上將所述點(diǎn)陣矢量連續(xù)地分解成商數(shù)矢量yi的序列和余數(shù)矢量ri的序列,所述整數(shù)來自相應(yīng)預(yù)先確定的整數(shù)pi≥2序列,其中i=1...k,k是正整數(shù),其表示每個序列中元素的數(shù)目。
2、 如權(quán)利要求1所述的矢量量化方法,其特征在于^連續(xù)^l率是按照下 述等式獲得的其中、& J^^將矢量^I1L至[J點(diǎn)陣A,的量化。
3、 如前面任一權(quán)利要求所述的矢量量化方法,其特征在于全部的點(diǎn)陣A'是 相同的點(diǎn)陣A。
4、 一種編碼方法,包,驟按照權(quán)利要求1-3中任一權(quán)利要求所述的矢M化方法來量化矢量;c ;編碼相應(yīng)的voronoi編碼本、々',a')中的^余數(shù)矢量^;,其中",是預(yù)先確定 的位移矢量,其屬于點(diǎn)陣八'-'的vorond區(qū)域、,;所述矢量x由一組參數(shù)表示,其包括所述編碼余數(shù)矢量^ ,所feE^數(shù)短《 的數(shù)量*和定義所述voronoi編碼本、々")的所Mf^,.序列和位移矢量",.。
5、 如權(quán)利要求4所述的編碼方法,包括編碼所述余數(shù)矢量r,.為如下等式的步驟fl( = modA, / = 1 ...A其中G,—,是點(diǎn)陣、的生,陣。
6、 如權(quán)利要求5所述的編碼方法,包括傳i^f述編碼的余數(shù)矢量"'和所述 余數(shù)矢量"!的數(shù)量*到解碼器的步驟。
7、 如權(quán)利要求6所述的編碼方法,包括傳送標(biāo)最后余數(shù)矢量W守號的標(biāo)7的編碼參數(shù);禾口志位6到所纖軍碼器的步驟。
8、 一種解碼方法,包括步驟接收^根據(jù)權(quán)利要求4的編碼方法進(jìn)fi^碼的; 根據(jù)下面的等式重^^f述^fix的近似值J :<formula>formula see original document page 3</formula>其中/^是正整數(shù),表示遺漏編碼余數(shù)矢量的數(shù)量并且L 、1…/是相應(yīng) voronoi編碼本的平均矢量。
9、如權(quán)利要求7所述的解碼方法,其特征在于當(dāng)已經(jīng)接收鄉(xiāng)*鋪碼余 數(shù)矢fi^時,所^5似值^是按下述等式給出的<formula>formula see original document page 3</formula>
10、 如權(quán)利要求8或9所述的解碼方法,包括僅僅接收編碼余數(shù)矢量",和所 述余數(shù)矢量",的數(shù)量* ,以及在接收端上從存儲器單元檢索所述 [集幾禾口所述 位移矢量"'的步驟。
11、 一種矢量量化器,包括點(diǎn)陣量化器(IO),其M5i屬于點(diǎn)陣八。的點(diǎn)陣^a^6fi似矢量「和 與所述點(diǎn)陣量化器連接的點(diǎn)陣矢量懶早器(14),用于fflil具有整數(shù)的點(diǎn)陣 除法在連續(xù)的點(diǎn)陣A'-i上將所述點(diǎn)陣矢量連續(xù)地分解成商數(shù)矢量乂的序列和余 數(shù)矢量"'的序列,所^m來自相應(yīng)預(yù)先確定的MA "序列,其中"l..j,^是正整數(shù),其 ^序列中元素的數(shù)目。
12、 一種編碼器,包括根據(jù)^c利要求io所述的^a量化器和連接至斷述矢量量化器的voronoi點(diǎn)陣編碼器(14),用于編碼相應(yīng)的voronoi編碼本^>',《')中 的Vh余數(shù)矢量、其中A是預(yù)先確定的矢量,其屬于點(diǎn)陣A'-'的voronoi區(qū)域 A-,(0)。
13、 如權(quán)利要求12所述的編碼器,包括voronoi點(diǎn)陣編碼器(14),用于編 碼所述余數(shù)矢量"!為如下等式<formula>formula see original document page 4</formula>其中G'4是點(diǎn)陣、'的生成矩陣。
14、 一種解碼器,包括矢量重建單元(36),用于重建由接收到的編碼參數(shù) 所,的矢量;c的近似值y ,所述編碼參數(shù)由根據(jù);R利要求11-13中任一^i利要 求所述的編碼纖碼<formula>formula see original document page 4</formula>其中"A是正整數(shù),表示遺漏編碼余數(shù)矢量的數(shù)量并且5 , /=1-/是相應(yīng)voronoi編碼本的平均^S。
全文摘要
一種矢量量化器,包括點(diǎn)陣量化器(10),其通過屬于點(diǎn)陣Λ<sub>0</sub>的點(diǎn)陣矢量來近似矢量x。連接到點(diǎn)陣量化器的點(diǎn)陣矢量分解器(14),通過具有相應(yīng)預(yù)先確定的整數(shù)p<sub>i</sub>≥2序列的點(diǎn)陣除法在連續(xù)的點(diǎn)陣Λ<sub>i-1</sub>上將所述點(diǎn)陣矢量連續(xù)地分解成商數(shù)矢量y<sub>i</sub>的序列和余數(shù)矢量r<sub>i</sub>的序列,其中i=1...k,k是正整數(shù),其表示每個序列中元素的數(shù)目。
文檔編號H03M7/30GK101292427SQ200680034525
公開日2008年10月22日 申請日期2006年9月12日 優(yōu)先權(quán)日2005年9月23日
發(fā)明者A·塔萊布 申請人:艾利森電話股份有限公司