視頻壓縮技術的系統(tǒng)考慮
MPEG-2 解碼最初對于通用處理器及 DSP 具有很高的處理要求。優(yōu)化的固定功能 MPEG-2 解碼器開發(fā)已問世,由于使用量較高,成本已逐漸降低。MPEG2 證明低成本芯片解決方案的供應是視頻編解碼標準成功和普及的關鍵。
H.263
H.263[5] 在 H.261 之后得到開發(fā),主要是為了以更低的比特率實現(xiàn)更高的質(zhì)量。其主要目標之一是基于普通 28.8Kbps 電話調(diào)制解調(diào)器的視頻。目標分辨率是 SQCIF (128(96)~CIF (352(288)。其基本原理與 H.261 大同小異。
H.263 的運動矢量在兩個方向上允許是 1/2 的倍數(shù)(“半像素”),參考圖像以數(shù)字方式內(nèi)插到更高的分辨率。這種方法可以提高 MC 精度及壓縮比。MV 可采用更大的范圍。為不同方案提供許多新的選項,包括:
* 4 個運動矢量——每個塊采用一個運動矢量,而非整個 MB 采用單個運動矢量。
* 3D VLC:Huffman 編碼——將塊結(jié)束 (EOB) 指示符與每個運行級別對結(jié)合在一起。這種功能主要用于低比特率,這時大多時候只有一、兩個編碼系數(shù)。
盡管存在這些功能,但是仍然很難在普通電話線上實現(xiàn)理想的視頻質(zhì)量,而且目前基于標準調(diào)制解調(diào)器的可視電話仍然是一個難題。不過,由于 H.263 一般情況下可提供優(yōu)于 H.261 的效率,它成為了電視會議首選的算法,但是,為了兼容舊系統(tǒng),仍然需要支持 H.261。H.263 逐漸發(fā)展成為了 H.263+,其增加了可選的附件,為提高壓縮并實現(xiàn)分組網(wǎng)的魯棒性提供支持。H.263 及其附件構成了MPEG-4 中許多編碼工具的核心。
MPEG-4
MPEG-4[6] 由 ISO 提出,以延續(xù) MPEG-2 的成功。一些早期的目標包括:提高容錯能力以支持無線網(wǎng)、對低比特率應用進行更好的支持、實現(xiàn)各種新工具以支持圖形對象及視頻之間的融合。大部分圖形功能并未在產(chǎn)品中受到重視,相關實施主要集中在改善低比特率壓縮及提高容錯性上。.
MPEG-4 簡化類 (SP) 以H.263為基礎,為改善壓縮增加了新的工具,包括:
無限制的運動矢量:支持對象部分超出幀邊界時的預測。
可變塊大小運動補償:可以在 16(16 或 8(8 粒度下進行運動補償。
上下文自適應幀內(nèi) DCT DC/AC 預測:可以通過當前塊的左右相鄰塊預測 DC/AC DCT 系數(shù)。
擴展量化 AC 系數(shù)的動態(tài)范圍,支持高清視頻:從 H.263 的 [-127:127] 到 [-2047, 2047]。
增加了容錯功能,以支持丟包情況下的恢復,包括:
片斷重同步 (Slice Resynchronization):在圖像內(nèi)建立片斷 (slice),以便在出現(xiàn)錯誤后更快速的進行重新同步。與 MPEG-2 數(shù)據(jù)包大小不同,MPEG4 數(shù)據(jù)包大小與用于描述 MB 的比特數(shù)量脫離了聯(lián)系。因此,不管每個 MB 的信息量多少,都可以在位流中按相同間隔進行重新同步。
數(shù)據(jù)分割:這種模式允許利用唯一的運動邊界標記將視頻數(shù)據(jù)包中的數(shù)據(jù)分割成運動部分和 DCT 數(shù)據(jù)部分。這樣就可以實現(xiàn)對運動矢量數(shù)據(jù)更嚴格的檢查。如果出現(xiàn)錯誤,我們可以更清楚地了解錯誤之處,從而避免在發(fā)現(xiàn)錯誤情況下拋棄所有運動數(shù)據(jù)。
可逆 VLC:VLC 編碼表允許后向及前向解碼。在遇到錯誤時,可以在下一個slice進行同步,或者開始編碼并且返回到出現(xiàn)錯誤之處。
新預測 (NEWPRED):主要用于在實時應用中實現(xiàn)快速錯誤恢復,這些應用中的解碼器在出現(xiàn)丟包情況下采用逆向通道向解碼器請求補充信息。
MPEG-4 高級簡化類 (ASP) 以簡化類為基礎,增加了與 MPEG-2 類似的 B 幀及隔行工具(用于Level 4 及以上級別)。另外它還增加了四分之一像素運動補償及用于全局運動補償?shù)倪x項。MPEG-4 高級簡化類比簡化類的處理性能要求更高,而且復雜性與編碼效率都高于 MPEG-2。
MPEG-4 最初用于因特網(wǎng)數(shù)據(jù)流,例如,已經(jīng)被 Apple 的 QuickTime 播放器采用。MPEG-4 簡化類目前在移動數(shù)據(jù)流中得到廣泛應用。MPEG-4 ASP 是已經(jīng)流行的專有 DivX 編解碼器的基石。
工具與壓縮增益
當我們查看 H.261、MPEG1、MPEG2 與 H.263 視頻編解碼技術中引入的功能時,明顯可以發(fā)現(xiàn)幾種基本技巧提供了大部分壓縮增益。圖 4 說明這些技巧及其相關效果。與 4 個運動矢量以及四分之一像素運動補償?shù)裙ぞ呦啾龋\動補償(整數(shù)像素與半像素)的效果顯然更為突出。
圖 4:基本技巧的效果:1) 無 MC;2) 增加 Skip 模式構成 CR 編碼器;3) 僅允許零 MV;4) 允許整數(shù)像素 MC;5) 允許半像素 MC;6) 允許 4-MV;7) 允許四分之一像素MC。如欲了解有關詳細說明,敬請參見 [7]。
7. H.264/ MPEG4-AVC
視頻編碼技術在過去幾年最重要的發(fā)展之一是由 ITU 和 ISO/IEC 的聯(lián)合視頻小組 (JVT) 開發(fā)了 H.264/MPEG-4 AVC[8] 標準。在發(fā)展過程中,業(yè)界為這種新標準取了許多不同的名稱。ITU 在 1997 年開始利用重要的新編碼工具處理 H.26L(長期),結(jié)果令人鼓舞,于是 ISO 決定聯(lián)手 ITU 組建 JVT 并采用一個通用的標準。因此,大家有時會聽到有人將這項標準稱為 JVT,盡管它并非正式名稱。ITU 在 2003 年 5 月批準了新的 H.264 標準。ISO 在 2003 年 10 月以 MPEG-4 Part 10、高級視頻編碼或 AVC 的名稱批準了該標準。
H.264/AVC 在壓縮效率方面取得了巨大突破,一般情況下達到 MPEG-2 及 MPEG-4 簡化類壓縮效率的大約 2 倍。在 JVT 進行的正式測試中 [9],H.264 在 85 個測試案例中有 78% 的案例實現(xiàn) 1.5 倍以上的編碼效率提高,77% 的案例中達到 2 倍以上,部分案例甚至高達 4 倍。H.264 實現(xiàn)的改進創(chuàng)造了新的市場機遇,如:
* 600Kbps 的 VHS 品質(zhì)視頻??梢酝ㄟ^ ADSL 線路實現(xiàn)視頻點播。
* 高清晰電影無需新的激光頭即可適應普通 DVD。
H.264 標準化時支持三個類別:基本類、主類及擴展類。后來一項稱為高保真范圍擴展 (FRExt) 的修訂引入了稱為高級類的 4 個附加類。在初期主要是基本類和主類引起了大家的興趣。基本類降低了計算及系統(tǒng)內(nèi)存需求,而且針對低時延進行了優(yōu)化。由于 B 幀的內(nèi)在時延以及 CABAC 的計算復雜性,因此它不包括這兩者?;绢惙浅_m合可視電話應用以及其他需要低成本實時編碼的應用。
主類提供的壓縮效率最高,但其要求的處理能力也比基本類高許多,因此使其難以用于低成本實時編碼和低時延應用。廣播與內(nèi)容存儲應用對主類最感興趣,它們是為了盡可能以最低的比特率獲得最高的視頻質(zhì)量。
盡管 H.264 采用與舊標準相同的主要編碼功能,不過它還具有許多與舊標準不同的新功能,它們一起實現(xiàn)了編碼效率的提高。圖 5 的編碼器框圖總結(jié)了其主要差別,概述如下:
幀內(nèi)預測與編碼:H.264 采用空域幀內(nèi)預測技術來預測相鄰塊鄰近像素的 Intra-MB 中的像素。它對預測殘差信號和預測模式進行編碼,而不是編碼塊中的實際像素。這樣可以顯著提高幀內(nèi)編碼效率。
幀間預測與編碼:H.264 中的幀間編碼采用了舊標準的主要功能,同時也增加了靈活性及可操作性,包括適用于多種功能的幾種塊大小選項,如:運動補償、四分之一像素運動補償、多參考幀、通用 (generalized) 雙向預測和自適應環(huán)路去塊。
可變矢量塊大?。涸试S采用不同塊大小執(zhí)行運動補償??梢詾樾≈?4(4 的塊傳輸單個運動矢量,因此在雙向預測情況下可以為單個 MB 傳輸多達 32 個運動矢量。另外還支持 16(8、8(16、8(8、8(4 和 4(8 的塊大小。降低塊大小可以提高運動細節(jié)的處理能力,因而提高主觀質(zhì)量感受,包括消除較大的塊化失真。
四分之一像素運動估計:通過允許半像素和四分之一像素運動矢量分辨率可以改善運動補償。
多參考幀預測:16 個不同的參考幀可以用于幀間編碼,從而可以改善視頻質(zhì)量的主觀感受并提高編碼效率。提供多個參考幀還有助于提高 H.264 位流的容錯能力。值得注意的是,這種特性會增加編碼器與解碼器的內(nèi)存需求,因為必須在內(nèi)存中保存多個參考幀。
自適應環(huán)路去塊濾波器:H.264 采用一種自適應解塊濾波器,它會在預測回路內(nèi)
對水平和垂直區(qū)塊邊緣進行處理,用于消除塊預測誤差造成的失真。這種濾波通常是基于 4(4 塊邊界為運算基礎,其中邊界各邊的 3 個像素可通過 4 級濾波器進行更新。
評論