概述
H.264(AVC)從2003年5月草稿發(fā)布以來(lái),憑借其相對(duì)于以往的視頻壓縮標(biāo)準(zhǔn)在壓縮效率以及網(wǎng)絡(luò)適應(yīng)性方面的明顯優(yōu)勢(shì),逐步成為視頻應(yīng)用領(lǐng)域的主流標(biāo)準(zhǔn)。根據(jù) MeFeedia的數(shù)據(jù),由于iPad 以及其它新興設(shè)備大多支持H.264 硬件加速,至2011年底,80%的視頻使用H.264編碼,并且隨著支持H.264解碼的設(shè)備不斷增多,這一占有率還將進(jìn)一步增長(zhǎng)。
但是,隨著數(shù)字視頻應(yīng)用產(chǎn)業(yè)鏈的快速發(fā)展,視頻應(yīng)用向以下幾個(gè)方向發(fā)展的趨勢(shì)愈加明顯:
- 高清晰度(Higher Definition):數(shù)字視頻的應(yīng)用格式從720 P向1080 P全面升級(jí),在一些視頻應(yīng)用領(lǐng)域甚至出現(xiàn)了4K x 2K、8K x 4K的數(shù)字視頻格式;
- 高幀率(Higher frame rate ):數(shù)字視頻幀率從30 fps向60fps、120fps甚至240fps的應(yīng)用場(chǎng)景升級(jí);
- 高壓縮率(Higher Compression rate ):傳輸帶寬和存儲(chǔ)空間一直是視頻應(yīng)用中最為關(guān)鍵的資源,因此,在有限的空間和管道中獲得最佳的視頻體驗(yàn)一直是用戶的不懈追求。
由于數(shù)字視頻應(yīng)用在發(fā)展中面臨上述趨勢(shì),如果繼續(xù)采用H.264編碼就出現(xiàn)的如下一些局限性:
- 宏塊個(gè)數(shù)的爆發(fā)式增長(zhǎng),會(huì)導(dǎo)致用于編碼宏塊的預(yù)測(cè)模式、運(yùn)動(dòng)矢量、參考幀索引和量化級(jí)等宏塊級(jí)參數(shù)信息所占用的碼字過(guò)多,用于編碼殘差部分的碼字明顯減少。
- 由于分辨率的大大增加,單個(gè)宏塊所表示的圖像內(nèi)容的信息大大減少,這將導(dǎo)致相鄰的4 x 4或8 x 8塊變換后的低頻系數(shù)相似程度也大大提高,導(dǎo)致出現(xiàn)大量的冗余。
- 由于分辨率的大大增加,表示同一個(gè)運(yùn)動(dòng)的運(yùn)動(dòng)矢量的幅值將大大增加,H.264中采用一個(gè)運(yùn)動(dòng)矢量預(yù)測(cè)值,對(duì)運(yùn)動(dòng)矢量差編碼使用的是哥倫布指數(shù)編碼,該編碼方式的特點(diǎn)是數(shù)值越小使用的比特?cái)?shù)越少。因此,隨著運(yùn)動(dòng)矢量幅值的大幅增加,H.264中用來(lái)對(duì)運(yùn)動(dòng)矢量進(jìn)行預(yù)測(cè)以及編碼的方法壓縮率將逐漸降低。
- H.264的一些關(guān)鍵算法例如采用CAVLC和CABAC兩種基于上下文的熵編碼方法、deblock濾波等都要求串行編碼,并行度比較低。針對(duì)GPU/DSP/FPGA/ASIC等并行化程度非常高的CPU,H.264的這種串行化處理越來(lái)越成為制約運(yùn)算性能的瓶頸。
為了面對(duì)以上發(fā)展趨勢(shì),2010年1月,ITU-T VCEG(Video Coding Experts Group) 和ISO/IEC MPEG(Moving Picture Experts Group)聯(lián)合成立JCT-VC(Joint Collaborative Team on Video Coding)了聯(lián)合組織,統(tǒng)一制定下一代編碼標(biāo)準(zhǔn):HEVC(High Efficiency Video Coding)。
HEVC協(xié)議標(biāo)準(zhǔn)計(jì)劃于2013年2月份正式在業(yè)界發(fā)布,目前整個(gè)框架結(jié)構(gòu)已基本確定。截至2012年4月份,JCT-VC聯(lián)合工作組已經(jīng)召開(kāi)了第八次會(huì)議,并于2012年2月17日發(fā)布了第一版內(nèi)部草稿《High efficiency video coding (HEVC) text specification draft 6》,計(jì)劃2012年7月發(fā)布第一版公開(kāi)版草稿,在H.264標(biāo)準(zhǔn)2~4倍的復(fù)雜度基礎(chǔ)上,將壓縮效率提升一倍以上。
下表列出了HM4.0(HEVC參考代碼)相對(duì)于JM18.0 BD-Rate對(duì)比:
表1 HEVC相對(duì)于H.264的壓縮效率提升數(shù)據(jù)列表
由表中數(shù)據(jù)可見(jiàn),在Low Delay的情況下,HEVC(HM4.0)相對(duì)于H.264比特率平均下降44%。
HEVC(H.265)的技術(shù)亮點(diǎn)
作為新一代視頻編碼標(biāo)準(zhǔn),HEVC(H.265)仍然屬于預(yù)測(cè)加變換的混合編碼框架。然而,相對(duì)于H.264,H.265 在很多方面有了革命性的變化。HEVC(H.265)的技術(shù)亮點(diǎn)有:
靈活的編碼結(jié)構(gòu)
在H.265中,將宏塊的大小從H.264的16x16擴(kuò)展到了64x64,以便于高分辨率視頻的壓縮。同時(shí),采用了更加靈活的編碼結(jié)構(gòu)來(lái)提高編碼效率,包括編碼單元(Coding Unit)、預(yù)測(cè)單元(Predict Unit)和變換單元(Transform Unit)。如圖1所示:
圖1 編碼單元(CU)、預(yù)測(cè)單元(PU)、變換單元(CU)
其中編碼單元類似于H.264/AVC中的宏塊的概念,用于編碼的過(guò)程,預(yù)測(cè)單元是進(jìn)行預(yù)測(cè)的基本單元,變換單元是進(jìn)行變換和量化的基本單元。這三個(gè)單元的分離,使得變換、預(yù)測(cè)和編碼各個(gè)處理環(huán)節(jié)更加靈活,也有利于各環(huán)節(jié)的劃分更加符合視頻圖像的紋理特征,有利于各個(gè)單元更優(yōu)化的完成各自的功能。
靈活的塊結(jié)構(gòu)----RQT(Residual Quad-tree Transform)
RQT是一種自適應(yīng)的變換技術(shù),這種思想是對(duì)H.264/AVC中ABT(Adaptive Block-size Transform)技術(shù)的延伸和擴(kuò)展。對(duì)于幀間編碼來(lái)說(shuō),它允許變換塊的大小根據(jù)運(yùn)動(dòng)補(bǔ)償塊的大小進(jìn)行自適應(yīng)的調(diào)整;對(duì)于幀內(nèi)編碼來(lái)說(shuō),它允許變換塊的大小根據(jù)幀內(nèi)預(yù)測(cè)殘差的特性進(jìn)行自適應(yīng)的調(diào)整。大塊的變換相對(duì)于小塊的變換,一方面能夠提供更好的能量集中效果,并能在量化后保存更多的圖像細(xì)節(jié),但是另一方面在量化后卻會(huì)帶來(lái)更多的振鈴效應(yīng)。因此,根據(jù)當(dāng)前塊信號(hào)的特性,自適應(yīng)的選擇變換塊大小,如圖2所示,可以得到能量集中、細(xì)節(jié)保留程度以及圖像的振鈴效應(yīng)三者最優(yōu)的折中。
圖2 靈活的塊結(jié)構(gòu)示意圖
采樣點(diǎn)自適應(yīng)偏移(Sample Adaptive Offset)
SAO在編解碼環(huán)路內(nèi),位于Deblock之后,通過(guò)對(duì)重建圖像的分類,對(duì)每一類圖像像素值加減一個(gè)偏移,達(dá)到減少失真的目的,從而提高壓縮率,減少碼流。
采用SAO后,平均可以減少2%~6%的碼流,而編碼器和解碼器的性能消耗僅僅增加了約2%。
自適應(yīng)環(huán)路濾波(Adaptive Loop Filter)