專利名稱:壓縮參考幀的視頻編碼系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在視頻編碼系統(tǒng)中存儲參考幀的方法。具體而言,本申請概述如下系 統(tǒng),該系統(tǒng)用于在參考幀緩存器中存儲參考幀時壓縮參考幀,使得可訪問參考幀的部分而 無需從緩存器取回和解壓整個壓縮結(jié)構(gòu)。
背景技術(shù):
視頻編碼系統(tǒng)的一個基本方面在于可以通過運用運動預(yù)測編碼來去除視頻成像 中的時間冗余度。為此,包括例如MPEG-4(Moving Pictures ExpertsGroup-4,動態(tài)圖像專 家組-4)、H. 263、H. 261和H. 264的視頻編碼標(biāo)準(zhǔn)利用內(nèi)部存儲緩存器來存儲先前重建的 (參考)幀??梢詤⒄諈⒖紟袭a(chǎn)生的變化來生成后續(xù)幀。通常將存儲有參考幀的內(nèi)部存 儲緩存器稱為“參考幀緩存器”。由于參考幀緩存器的內(nèi)部存儲需求,因此支持一定數(shù)量的參考幀成為視頻編碼系 統(tǒng)設(shè)計中的限制之一。針對這一基本問題的一種已知方案是壓縮參考幀。具體而言,可以在重建參考幀 之后將其壓縮并存儲在參考幀緩存器中以供后續(xù)使用。需要時可以將特定參考幀(或其一 部分)解壓并用于運動預(yù)測編碼/解碼。應(yīng)當(dāng)認(rèn)識到,并非所有數(shù)據(jù)或圖像的壓縮方法均適用于這一任務(wù)。比如 Huffman (霍夫曼)數(shù)據(jù)壓縮或者 JPEG(Joint Photographic Experts Group,聯(lián)合圖像專 家組)圖像編碼等方法,這些方法就性質(zhì)而言較復(fù)雜并且可能需要大量計算資源,在編碼 處理期間尤為如此。此外,這些方法提供的可變壓縮速率取決于被編碼的數(shù)據(jù)中的空間冗 余量,因此不能保證壓縮后的結(jié)構(gòu)適合于可用的存儲器。結(jié)果,不解壓整個圖像就無法訪問 以這種方法編碼的圖像的部分。由于現(xiàn)代視頻編碼系統(tǒng)基于將圖像劃分成稱為“宏塊”的較 小塊以用于編碼的概念,因而必須解碼整個圖像來處理宏塊個體被視為相當(dāng)明顯的弊端。結(jié)果,在視頻編碼系統(tǒng)中難以將上述壓縮方法用作參考壓縮方法。許多研究者試圖減少針對視頻編碼系統(tǒng)的存儲器需求。針對該問題的現(xiàn)有辦法涵 蓋了從相對簡單的方法到較為復(fù)雜的技術(shù)相對簡單的方法例如美國專利5825424,其中 使用到更低分辨率的二次采樣或者到更低精確度的像素值截?。惠^為復(fù)雜的技術(shù)例如專利 文獻(xiàn)US6272180中說明的利用基于Haar (哈爾)塊的2D (二維)小波變換。對于上文提到的壓縮系統(tǒng),在視頻編碼系統(tǒng)中為實現(xiàn)參考幀的恒定壓縮速率而引 入如下漂移,該漂移自身由于解碼階段引入的損失而在重建的畫面質(zhì)量中表現(xiàn)為可見時間 循環(huán)。盡管簡單壓縮方法(比如更低分辨率的二次采樣)具有計算復(fù)雜度低的優(yōu)點,但其 受到漂移較高的弊端的困擾。減少漂移的努力導(dǎo)致該方法繁雜,并且因此導(dǎo)致復(fù)雜度明顯 增加,在編碼階段尤為如此。
發(fā)明內(nèi)容
本申請意圖通過在參考幀緩存器中對所存儲參考幀使用有損數(shù)據(jù)壓縮,來減少視頻編碼系統(tǒng)的存儲需求。在此提出的參考幀存儲方法具有漂移相對較低的優(yōu)點,該優(yōu)點尤 其適合視頻編碼系統(tǒng)內(nèi)的硬件實現(xiàn)。該方法允許實現(xiàn)低計算復(fù)雜度、低漂移和50%的恒定 壓縮速率的系統(tǒng)。一個重要方面在于可訪問并解壓被壓縮的參考幀而無需取回和解壓整個 幀,這使其特別適合于塊結(jié)構(gòu)化的圖像數(shù)據(jù)(例如,在H. 264、MPEG-4、H. 263等視頻編碼系 統(tǒng)中使用的圖像數(shù)據(jù))。因而,本申請?zhí)峁┰陔S后的詳細(xì)說明中描述并在獨立權(quán)利要求中羅列的系統(tǒng)和方 法,并在從屬權(quán)利要求中闡述其有利特征和實施方式。
現(xiàn)在將參照
本申請,附圖中圖1圖示在可采用根據(jù)本申請的壓縮裝置的視頻編碼系統(tǒng)中的參考幀存儲器的 組織,圖2圖示由根據(jù)本申請的系統(tǒng)進行編碼的參考幀中的塊如何對應(yīng)壓縮存儲器中 的字節(jié)對,圖3圖示根據(jù)本申請的編碼處理的模式選擇階段,圖4圖示根據(jù)本申請的編碼算法的“字節(jié)對編碼處理”,圖5圖示如本申請中所述的解碼處理,圖6圖示圖3-5的壓縮裝置可以采用的字節(jié)對的示例性格式,圖7圖示在圖3的編碼處理中提取初始塊中的哪些樣本來形成被壓縮的字節(jié)對中 的顏色樣本,圖8參照圖7圖示用于本申請的編碼/解碼方法的重建模式,以及圖9圖示在圖3-5的編碼和解碼處理中使用的示例性等式。
具體實施例方式下文公開的實施方式被選擇作為示例而絕非作為限制。實際上,對所公開實施方 式的許多小的改動可適用于具體的實際實現(xiàn)。如圖1中所示,可采用本申請的壓縮裝置的視頻編碼系統(tǒng)中的參考幀存儲器 (RFM)的一般結(jié)構(gòu)包括幀壓縮器(1),該壓縮器(1)使用在圖3和圖4中示出并在下文說明 的壓縮算法。幀壓縮器⑴處理作為來自幀(5)的數(shù)據(jù)塊序列(6)的幀,并產(chǎn)生塊大小減小的 對應(yīng)塊序列(7)。因此,在所示例子中,每個2 X 2字節(jié)的輸入塊被減小成2 X 1字節(jié)的塊(字 節(jié)對),從而允許幀被存儲于大小減小的存儲器中。通過分析數(shù)據(jù)塊內(nèi)值的分布并從塊的四個數(shù)據(jù)值中選擇可以用來代表該塊的兩 個數(shù)據(jù)值的分布模式,來減小塊的大小。對分布模式進行選擇,以從多個預(yù)定義模式中選擇 出最佳分布模式。在針對每個2X2的塊選擇了最佳分布模式和對應(yīng)的兩個數(shù)據(jù)值之后,將 該模式和數(shù)據(jù)值編碼成字節(jié)對,由此提供針對該2X2的塊的壓縮結(jié)構(gòu)。字節(jié)對被存儲于壓縮幀存儲器(2)中。當(dāng)需要參考幀或者參考幀的一部分時,幀 解壓器(3)將所需字節(jié)對(7)解壓成2X2的重建塊。重建塊被存儲于塊存儲器(4)中,并 最終形成解壓的幀或者幀的所需部分,解壓的幀或者幀的所需部分可被用作參考幀或者參考幀的一部分,并且可在視頻編碼系統(tǒng)內(nèi)常規(guī)地使用。應(yīng)當(dāng)理解,術(shù)語“視頻編碼系統(tǒng)”在 此被廣義地使用,即該術(shù)語可以指代視頻編碼系統(tǒng)或者視頻解碼系統(tǒng)。通常,參考幀被存儲于YUV顏色空間的視頻編碼系統(tǒng)中。本申請適合于但不限于 YUV。在YUV圖像壓縮中,每種顏色分量(Y (亮度)、U或者V (色度))具有固定的長度,例 如8比特。適當(dāng)?shù)蒯槍γ糠N顏色分量分別進行在此說明的編碼和解碼處理,即分別處理Y、 U 禾口 V。壓縮處理中引入的量化意味著編碼之前的初始塊的顏色樣本不等于解碼之后的 重建塊的樣本。然而,與其它圖像壓縮技術(shù)一樣,本申請利用了有些損失對于人類觀察者而 言幾乎察覺不到的事實。如圖2中所示,本發(fā)明的優(yōu)點在于對存在壓縮的幀緩存器內(nèi)的被壓縮字節(jié)對個 體的訪問與對無壓縮的幀緩存器中的對應(yīng)的2X2的塊的訪問一樣簡單。在該示例性配置 中,在壓縮幀存儲器(2)中,字節(jié)對(7)沿著χ圖像軸水平對準(zhǔn),使得壓縮結(jié)構(gòu)相對χ軸的 大小與初始幀相同,但是y軸數(shù)據(jù)的大小減半。因此對于初始幀(5)的每個2X2的塊(6), 在壓縮幀存儲器(2)中存在相對應(yīng)的字節(jié)對(7)。因為用于對壓縮結(jié)構(gòu)中的字節(jié)對的第一 字節(jié)進行定位的χ軸指數(shù)值與用于對未壓縮幀中的2X2的子塊中的第一塊進行定位的χ 軸指數(shù)值相同,并且壓縮結(jié)構(gòu)中的y軸指數(shù)是未壓縮結(jié)構(gòu)中的y軸指數(shù)的一半,所以壓縮存 儲器的這種組織允許方便地訪問特定的2X2的子塊而無需解壓整個幀。另外,尋址和壓縮 /解壓可以是用于訪問幀緩存器的硬件的固有功能,從而視頻編碼器的其余部分不涉及壓 縮?,F(xiàn)在將參照圖3和圖4說明編碼處理,其中編碼處理在兩個階段中進行,即如圖3 中所示的“模式判定”■以及如圖4中所示的由“量化”_和“模式比特插入”E墜構(gòu)成 的“字節(jié)對編碼”。在“模式判定”ESl中,通過計算針對如圖8中所示的七個預(yù)定義重建模式中的每 一個重建模式的失真來估計解壓所導(dǎo)致的可能的損失。選擇使初始塊的失真最小的模式作 為用于“字節(jié)對編碼”(E巡和皿)的最佳模式。應(yīng)當(dāng)理解采用2X2的塊大小意味著計算 可以通過硬件實現(xiàn)而不會過度復(fù)雜。首先,在m中,如圖7中所示那樣選擇兩個顏色樣本(8)。然后創(chuàng)建第一重建模 式(9)并計算在初始的2X2的塊與重建塊之間的失真(10)??梢允褂枚喾N不同方法來計 算失真,這些方法包括例如如圖9中所示的平方差之和(SSD)函數(shù)或者絕對差之和(SAD) 函數(shù)。SSD函數(shù)可以產(chǎn)生比SAD函數(shù)更佳的結(jié)果,但是需要更多計算。將參照采用SSD函數(shù) 的情況進一步說明這種方法。在該方法中,將當(dāng)前考察的模式下的SSD函數(shù)與在先前考察 的模式下找到的最小SSD進行比較(11)。如果新計算的SSD小于最小SSD,則暫時選擇對 應(yīng)的模式作為用于“字節(jié)對編碼”的優(yōu)選模式,并將當(dāng)前SSD設(shè)置為最小SSD (12)。可以針對每種模式重復(fù)這一過程,當(dāng)考察完所有模式時(14),選擇當(dāng)前標(biāo)識的優(yōu) 選模式作為針對該塊的最終模式。所選擇的樣本進入“量化”_。如果目前未考察完所有 模式,則選擇下一模式(15)。在優(yōu)選模式選擇處理中,在測量到失真為所針對模式的最小閾 值(例如零)或者低于該最小閾值的情況下(13),可以選擇這一模式作為最終的優(yōu)選模式 并取消不必要的針對其余模式的失真計算。在統(tǒng)計上,某些模式更可能被標(biāo)識為優(yōu)選模式,因而可以通過按最適當(dāng)?shù)慕y(tǒng)計順序(即按照從最可能到最不可能的順序)考察模式,來提高編碼速度。圖7所示的模式的 考察順序為0、1、2、30、31、32和33。盡管在圖7中說明了七個模式,但應(yīng)當(dāng)理解該數(shù)目可以 根據(jù)需要減小,例如減小至三。如圖所示,分別先考察模式O、最后考察模式7。在圖4中圖示“字節(jié)對編碼“處理。該處理包括對兩個初始顏色樣本的量化(E絲) 以及在如圖6所示的字節(jié)對的每個字節(jié)的最高位比特處插入(E墜)代表模式編號的1或者 2個模式比特。在量化_中,減少表示顏色分量所需要的比特數(shù)量,以允許在壓縮數(shù)據(jù)內(nèi)對模 式進行編碼。根據(jù)所選模式,數(shù)據(jù)值可以從8比特減少到7比特或者6比特。因此如果所 選模式為“3X”(16),則將顏色樣本量化成6比特(18)。對于模式0到模式2,將顏色樣本 量化成7比特(17)。通過消除一個或者多個最不重要的比特來進行量化,例如,如圖9中所 示通過將顏色值除以量化系數(shù)(2或者4)來進行量化。為了減少質(zhì)量上的損失,可以采用 如圖9中所示的利用浮點除法的量化公式,在浮點除法后進行 舍入和截取。在完成量化處理之后,字節(jié)對中存在用于圖4中的模式比特插入E墜的空間。該 模式比特插入包括插入主模式比特(19)、以及對于模式3X插入副模式比特(21)。模式比 特用于標(biāo)識要在重建中使用的優(yōu)選模式。圖6中圖示了模式比特的一種具體布置。對于字節(jié)對(7)中的每個字節(jié)(29)和 (30),主模式比特(31)通常被插入字節(jié)的最高比特位置。對于模式“0-2”,各字節(jié)對中的比 特6至0將表示量化的顏色。對于模式“30-7”,副比特(32)被插入字節(jié)對(7)的每個字節(jié) (29)和(30)中的第6個比特處。量化后的顏色樣本分別位于長度為6比特的比特5至0中。在圖5中圖示了解碼處理。該處理包括模式比特提取m以及確定模式編號、字 節(jié)對反量化2巡以及2 X 2的塊的重建巡這。在m中,首先提取主比特(31) (22),然后如果它們均為“1” (23)(這表示使用了 “3X ”模式),則還提取副模式比特(32) (24)。然后,基于主模式比特對顏色樣本進行反量化(25、27)。在_中,如圖9中所示, 通過將量化后的值乘以反量化系數(shù)使表示顏色分量所需的比特數(shù)量增加至8(左移一比特 或者兩比特)。反量化系數(shù)可以是取決于模式的2或者4。對于模式“0-2”,將反量化系數(shù) 選為2 (27),而對于模式“30-7”,反量化系數(shù)與(25)中一樣為4。最后,在啦步驟,如圖8中所示,使用模式比特(31)和(32)(針對“3父”模式) 作為模式編號加上先前在步驟DS2獲得的反量化顏色樣本來重建2X2塊(26、28)。圖7圖示在階段ESl的編碼期間,初始的2X2的塊(6)中有哪些位置被用來獲得 顏色樣本(8)。對于模式“0-2”,其可以是兩個顏色值或者平均值。對于模式“30-7”,如圖 9中所示,可以將字節(jié)對(7)中的字節(jié)B(30)計算為三個顏色樣本的均值。也可以采用其它 值,比如中間值。圖8示出了該方法所使用的重建模式,即如何使用兩個顏色樣本來形成2X2的四 個顏色樣本的塊。對于模式“0-2”,在水平方向(模式0)、垂直方向(模式1)上或者作為 水平交換(模式2)將字節(jié)對的每個字節(jié)二次采樣成兩種顏色。對于模式“30-7”,使用字 節(jié)A(29)來形成一個顏色樣本,而字節(jié)B (30)形成三個顏色樣本。在該情況下,副模式比特 (32)確定字節(jié)A(29)在2X2的重建塊中的位置。
圖9圖示了本方法可以使用的示例性等式。在ESi中將平方差之和(SSD)用于失 真計算(10)。在ESi中使用三個像素的均值(8)來獲得顏色樣本(29)和(30)。在編碼 E型期間,在量化階段(17、18)使用量化公式。在解碼階段DS3(25、27)使用反量化公式。盡管參照示例性實施方式描述了本申請,但是這些實施方式絕非限制性的,并且 應(yīng)理解可以在不背離如所附權(quán)利要求中闡述的本發(fā)明思想或范圍的情況下進行各種修改。
權(quán)利要求
一種用于在參考幀緩存器中存儲參考幀的方法,包括以下步驟將所述參考幀劃分成包括四個數(shù)據(jù)值的數(shù)據(jù)塊的序列;所述方法包括對所述序列的數(shù)據(jù)塊個體進行的以下步驟確定適合于塊個體的編碼模式,其中,所述編碼模式采用數(shù)據(jù)值簡化集并且所述編碼模式選自預(yù)定義的編碼模式集,利用所選擇的編碼模式的標(biāo)識來生成包含所述數(shù)據(jù)值簡化集的被壓縮的數(shù)據(jù)塊,并在所述參考幀緩存器中存儲所述被壓縮的數(shù)據(jù)塊。
2.根據(jù)權(quán)利要求1所述的用于壓縮數(shù)據(jù)塊的方法,其中,所述數(shù)據(jù)值簡化集包含兩個 數(shù)據(jù)值。
3.根據(jù)權(quán)利要求2所述的方法,其中,所述數(shù)據(jù)值簡化集中的第一值是來自所述數(shù)據(jù) 塊個體的所述數(shù)據(jù)值之一。
4.根據(jù)權(quán)利要求3所述的方法,其中,所述數(shù)據(jù)值簡化集中的第二值選自a)來自所述塊個體的另一數(shù)據(jù)值,或者b)所述塊個體中的其它數(shù)據(jù)值的平均值。
5.根據(jù)任一前述權(quán)利要求所述的方法,其中,所述序列中的每個數(shù)據(jù)塊包含2個χ軸元 素乘以2個y軸元素的塊。
6.根據(jù)任一前述權(quán)利要求所述的方法,其中,所述數(shù)據(jù)值的長度為8比特。
7.根據(jù)任一前述權(quán)利要求所述的方法,其中,通過確定所述預(yù)定義的編碼模式集中損 失最少的編碼模式來進行所述編碼模式的選擇。
8.根據(jù)任一前述權(quán)利要求所述的方法,其中,所述數(shù)據(jù)值簡化集在長度上比所述被壓 縮的數(shù)據(jù)塊的數(shù)據(jù)值更短。
9.根據(jù)任一前述權(quán)利要求所述的方法,其中,縮略數(shù)據(jù)塊中的所述所選擇的模式的所 述標(biāo)識包含所述縮略數(shù)據(jù)塊的每個數(shù)據(jù)值中的至少一個模式比特。
10.根據(jù)權(quán)利要求9所述的方法,其中,所述至少一個模式比特被布置在所述縮略數(shù)據(jù) 塊的每個數(shù)據(jù)值的最高位比特處。
11.根據(jù)權(quán)利要求9所述的方法,其中,所述至少一個模式比特被布置在所述縮略數(shù)據(jù) 塊的每個數(shù)據(jù)值的最低位比特處。
12.根據(jù)任一前述權(quán)利要求所述的方法,其中,所述幀包括三個顏色分量并且分別壓縮 各個分量。
13.根據(jù)權(quán)利要求12所述的壓縮圖像的方法,其中,所述分量是Y、U和V分量。
14.一種采用根據(jù)權(quán)利要求1至12中任一權(quán)利要求所述的方法來存儲參考幀的視頻編碼器。
15.一種包括參考幀緩存器的視頻編碼系統(tǒng),所述視頻編碼系統(tǒng)包括用于在所述參考 幀緩存器內(nèi)存儲被壓縮的參考幀的壓縮引擎,其中,所述壓縮引擎被配置為將待壓縮的所 述參考幀的數(shù)據(jù)值分組成包含4個相鄰數(shù)據(jù)值的數(shù)據(jù)塊,所述壓縮引擎包括最佳擬合估計器,用于針對每個數(shù)據(jù)塊個體選擇減少到2個數(shù)據(jù)值的集并選擇編碼模 式,以基于該減少的集重建所述數(shù)據(jù)塊,以及編碼器,用于利用所選擇的編碼模式的標(biāo)識對該數(shù)據(jù)值簡化集進行編碼,以提供被壓 縮的數(shù)據(jù)塊并且在所述參考幀緩存器中存儲所述被壓縮的數(shù)據(jù)塊。
16.根據(jù)權(quán)利要求15所述的視頻編碼系統(tǒng),其中,所述數(shù)據(jù)塊包括2個χ軸分量值乘以 2個y軸分量值的塊。
17.根據(jù)權(quán)利要求16或17所述的視頻編碼系統(tǒng),其中,參考幀內(nèi)的每個數(shù)據(jù)值的長度 等于所述被壓縮的幀內(nèi)的每個數(shù)據(jù)值的長度加上所述所選擇的編碼模式的所述標(biāo)識的長度。
18.根據(jù)權(quán)利要求15至17任一所述的視頻編碼系統(tǒng),還包括解壓引擎,用于從所述幀 緩存器取回至少一個被壓縮的數(shù)據(jù)塊并且在所述視頻編碼系統(tǒng)需要時解壓所述至少一個 被壓縮的數(shù)據(jù)塊。
19.一種視頻編碼系統(tǒng),具有用于以壓縮形式存儲包括數(shù)據(jù)塊序列的參考幀的幀緩存 器,每個塊包括置入有預(yù)定義編碼模式的標(biāo)識的兩個數(shù)據(jù)值,所述視頻編碼系統(tǒng)包括解壓 引擎,所述解壓引擎被配置為a)從所述幀緩存器中所存儲的數(shù)據(jù)塊序列中取回所需要的數(shù)據(jù)塊,b)從所取回的數(shù)據(jù)塊中提取所述編碼模式的所述標(biāo)識,c)從所述所取回的塊中提取所述兩個數(shù)據(jù)值,以及d)根據(jù)所標(biāo)識的編碼模式,利用所提取的兩個數(shù)據(jù)值構(gòu)成具有四個值的數(shù)據(jù)塊來重建 未被壓縮的數(shù)據(jù)塊。
20.根據(jù)權(quán)利要求19所述的視頻編碼系統(tǒng),其中,所重建的數(shù)據(jù)塊是2個χ軸元素乘以 2個y軸元素的塊。
21.根據(jù)權(quán)利要求19至20任一所述的視頻編碼系統(tǒng),其中,所述數(shù)據(jù)值簡化集的長度 為6至7比特,并且所述解壓引擎用一個或者兩個零填補所述重建塊中的值,使得所述重建 塊的長度為8比特。
22.根據(jù)權(quán)利要求19至21任一所述的視頻編碼系統(tǒng),其中,所述縮略數(shù)據(jù)塊中的所述 所選擇模式的所述標(biāo)識包括在所述縮略數(shù)據(jù)塊的每個數(shù)據(jù)值中的一個或者兩個模式比特。
23.根據(jù)權(quán)利要求19至22任一所述的視頻編碼系統(tǒng),其中,所述參考幀包含三個分量 的圖像。
24.根據(jù)權(quán)利要求23所述的視頻編碼系統(tǒng),其中,所述分量是Y、U和V分量。
全文摘要
本申請涉及一種用于在視頻編碼系統(tǒng)中壓縮參考幀從而將存儲器需求減少50%的裝置。本發(fā)明允許在存儲器中壓縮和布置幀,使得可以訪問幀的部分而無需取回和解壓整個壓縮幀。本發(fā)明理想地適合于在許多視頻編碼系統(tǒng)中利用的塊結(jié)構(gòu)化的圖像數(shù)據(jù)的壓縮。
文檔編號H04N7/26GK101971633SQ200980108398
公開日2011年2月9日 申請日期2009年2月6日 優(yōu)先權(quán)日2008年2月8日
發(fā)明者尤里·伊萬諾夫 申請人:線性代數(shù)技術(shù)有限公司