下一代壓縮視頻標(biāo)準(zhǔn)性能及其技術(shù)特征
吳培森
2004/06/03
關(guān)鍵詞:H.264 增益 編碼
隨著經(jīng)濟(jì)的發(fā)展和技術(shù)的進(jìn)步,市場對高性能視頻業(yè)務(wù)的需求不斷膨脹,原有的壓縮視頻標(biāo)準(zhǔn)已經(jīng)不能夠滿足要求,新的壓縮視頻技術(shù)將擁有廣闊的市場空間。H.264/AVC是目前由ITU-T的視頻編碼專家組(VCEG)及ISO/IEC的活動圖像專家組(MPEG)大力發(fā)展研究的、適應(yīng)于低碼率傳輸?shù)男乱淮鷫嚎s視頻標(biāo)準(zhǔn)。2003年3月由兩個(gè)專家組組成的聯(lián)合視頻專家組(JVT)公布了這一壓縮視頻標(biāo)準(zhǔn)的最終草案,此標(biāo)準(zhǔn)被稱為ITU-T的H.264協(xié)議或ISO/IEC的MPEG-4的高級視頻編碼部分。基于協(xié)議內(nèi)容及仿真結(jié)果,本文對此協(xié)議的主要技術(shù)特征、基本算法進(jìn)行了分析并給出了相關(guān)部分的性能對比。
一 H.264的主要技術(shù)特征分析
H.264的編解碼框架與以前提出的標(biāo)準(zhǔn),如H.261、H.263及MPEG-1/2/4并無顯著變化,也是基于混合編碼的方案:以運(yùn)動矢量代表圖像序列各幀的運(yùn)動內(nèi)容,使用前面已解碼幀對其進(jìn)行運(yùn)動估計(jì)和補(bǔ)償或使用幀內(nèi)預(yù)測技術(shù),所得的圖像參差值要經(jīng)過變換、量化、熵編碼等部分的處理。所以,新標(biāo)準(zhǔn)的性能提升在于各個(gè)部分的技術(shù)方案的改進(jìn)及新算法的應(yīng)用。
新標(biāo)準(zhǔn)在提高圖像傳輸?shù)娜蒎e(cuò)性方面做了大量工作,重新定義了適于圖像的結(jié)構(gòu)劃分。在編碼時(shí),圖像幀各部分被劃分到多個(gè)Slice結(jié)構(gòu)中去,每個(gè)Slice都可以被獨(dú)立解碼,不受其它部分的影響。Slice由圖像最基本的結(jié)構(gòu)—宏塊組成,每個(gè)宏塊包含一個(gè)16×16的亮度塊和兩個(gè)8×8的色度塊。
為進(jìn)一步提高魯棒性,整個(gè)系統(tǒng)被劃分為視頻編碼層和網(wǎng)絡(luò)抽象層。視頻編碼層主要描述要傳輸?shù)囊曨l數(shù)據(jù)所承載的視頻內(nèi)容。而網(wǎng)絡(luò)抽象層則是考慮不同的應(yīng)用,如視頻會議通信、H.32X連續(xù)包的視頻傳輸或RTP/UDP/IP的通信。
H.264標(biāo)準(zhǔn)分成三個(gè)框架(Profile):Baseline、Main Profile及X Profile,代表針對不同應(yīng)用的算法集及技術(shù)限定。Baseline主要包含低復(fù)雜度、低延時(shí)的技術(shù)特征,主要針對交互式的應(yīng)用,考慮到惡劣環(huán)境下的容錯(cuò)性,內(nèi)容基本都被其它更高級別的Profile所包含;Main Profile是針對更高編碼效率的應(yīng)用,如視頻廣播;X Profile 的設(shè)計(jì)主要針對流媒體的應(yīng)用,在這一框架中所有容錯(cuò)技術(shù)、對比特流的靈活訪問及切換技術(shù)都將包括其中。
1. Baseline的解碼器只對I Slice及P Slice進(jìn)行操作
對于幀間預(yù)測,相比以前的標(biāo)準(zhǔn),為了更精確地對圖像的運(yùn)動內(nèi)容進(jìn)行預(yù)測補(bǔ)償,新標(biāo)準(zhǔn)允許宏塊更進(jìn)一步劃分為16×16、16×8、8×16、8×8、8×4、4×8、4×4的子塊;運(yùn)動估計(jì)精確到經(jīng)由6-tap濾波器得到的1/4象素位置;運(yùn)動矢量由相鄰塊預(yù)測得到,其預(yù)測的差值被編碼傳輸。H.264支持多參考幀的預(yù)測,規(guī)定運(yùn)動估計(jì)使用的參考幀數(shù)最多可達(dá)15幀,多參考幀的使用大大提高了對圖像傳輸?shù)娜蒎e(cuò)性,抑制了錯(cuò)誤在空間和時(shí)間上的蔓延。

對于所有的Slice編碼類型,H.264支持兩類幀內(nèi)編碼:4×4與16×16編碼模式。對于4×4模式,每一個(gè)亮度4×4塊有8種不同方向上的預(yù)測模式及DC預(yù)測模式;對于16×16模式,每個(gè)16×16亮度塊有4種幀內(nèi)預(yù)測模式。而對于宏塊的8×8色度采樣,采用與亮度16×16幾乎相同的預(yù)測模式。為了保證Slice的編碼獨(dú)立性,幀內(nèi)預(yù)測是不允許跨越Slice邊界的。
對于變換、量化部分,不同于以前標(biāo)準(zhǔn)對預(yù)測參差值的變換編碼使用DCT變換,H.264使用了簡單的整數(shù)變換。這種變換與DCT相比,壓縮性能幾乎相同且有許多優(yōu)勢,其核心變換的計(jì)算只使用加減、移位運(yùn)算,避免了精度的損失。對變換參差系數(shù)的量化使用了52級步長的量化器,而H.263標(biāo)準(zhǔn)只有31級。量化步長以12.5%遞增,量化步長范圍的擴(kuò)大使得編碼器能夠更靈活、精確地進(jìn)行控制,在比特率和圖像質(zhì)量之間達(dá)到折中。
對熵編碼部分,對于要傳輸?shù)牧炕儞Q系數(shù),當(dāng)使用基于上下文的變長編碼(CAVLC)時(shí),根據(jù)前面已編碼傳輸?shù)牧炕儞Q系數(shù)值的大小來選擇接下來系數(shù)編碼要使用的變長編碼表。由于變長編碼表的設(shè)計(jì)是基于相應(yīng)的統(tǒng)計(jì)條件,所以其性能要優(yōu)于使用單一變長編碼表。對其它數(shù)據(jù)如頭信息等,使用一種單一的變長編碼表(Exp-Golomb Code)。
新標(biāo)準(zhǔn)仍然使用基于塊的預(yù)測及重構(gòu)方式,為了去除由此產(chǎn)生的影響圖像主觀質(zhì)量的方塊效應(yīng),H.264使用了去塊效應(yīng)濾波器。其主要思想是當(dāng)塊邊界上兩邊差較小時(shí),就使用濾波器使差別“平滑”掉;若邊界上圖像特征明顯,就不使用濾波。這樣既是為了減弱“塊效應(yīng)”的影響,又避免了濾掉圖像的客觀特征,同時(shí)在相同主觀質(zhì)量下使得比特率減少5~10%。
對于圖像數(shù)據(jù)的組織及傳輸,在H.264標(biāo)準(zhǔn)中的圖像宏塊能夠以靈活的宏塊組織順序(FMO)劃分為多個(gè)Slice Group;Slice之間相互獨(dú)立,可以任意的順序傳輸?shù)浇獯a端(ASO)。在比特流中Slice可以使用重復(fù)的方式(RS)傳輸,在Slice數(shù)據(jù)出錯(cuò)的情況下可用來進(jìn)行恢復(fù),增強(qiáng)了圖像傳輸?shù)聂敯粜。同時(shí)Slice間的相互獨(dú)立性抑制了錯(cuò)誤的空間傳播,提高了比特流的容錯(cuò)性。
2. Main Profile的技術(shù)特征
Main Profile包含Baseline Profile的所有算法并具有額外的技術(shù)特征,但它并不支持FMO、ASO及RS等技術(shù),只支持對I、P、B Slice的處理操作。
在此框架內(nèi)提出了適配塊劃分尺寸的變換(ABT)這一概念。此概念是針對幀間編碼的,其主要思想是將對預(yù)測參差進(jìn)行變換編碼的塊尺寸與用來進(jìn)行運(yùn)動補(bǔ)償?shù)膲K尺寸聯(lián)系起來。這樣就盡可能地利用最大的信號長度進(jìn)行變換編碼。但是,由于復(fù)雜度的原因,進(jìn)行變換的最大塊尺寸被限制在8×8以下。
對熵編碼部分,為更高效地進(jìn)行編碼,這里使用了基于上下文的算術(shù)編碼(CABAC),使熵編碼的性能進(jìn)一步提高。與CAVLC相比較,在相同圖像質(zhì)量下,編碼電視信號使用CABAC將會使比特率減少10~15%。
另外,Main Profile不支持多個(gè)Slice Group的劃分。
3. 相關(guān)的編碼問題
如何對已提出的預(yù)測模式進(jìn)行選擇(Mode Decision)和使用運(yùn)動估計(jì)策略(ME)歷來都是視頻編碼實(shí)現(xiàn)的重點(diǎn)研究課題。在H.263標(biāo)準(zhǔn)的實(shí)現(xiàn)軟件中,對模式的選擇是簡單的基于對閥值的比較。在新標(biāo)準(zhǔn)的測試軟件中使用了拉格朗日率失真優(yōu)化策略,它基于使用每種圖像塊尺寸和每種預(yù)測模式而產(chǎn)生的參差及其傳輸?shù)拇a率。這樣,模式選擇可以取得優(yōu)化的率失真性能,但這是以提高運(yùn)算復(fù)雜度為代價(jià)的。此優(yōu)化操作是對下面拉格朗日函數(shù)的最小化:
J=SATD+λ·R
式中,R—對應(yīng)傳輸各部分的比特率;λ—優(yōu)化參數(shù)(與量化參數(shù)有很強(qiáng)的相關(guān)性);SATD—經(jīng)過哈德曼變換的4×4塊的預(yù)測參差絕對值總和。
對于所有幀內(nèi)、幀間宏塊編碼模式及多參考幀的選擇都通過對拉格朗日函數(shù)的最小化來實(shí)現(xiàn)。通常,視頻標(biāo)準(zhǔn)只包括解碼規(guī)范,而模式選擇的技術(shù)研究是屬于編碼端的范疇,所以不列在標(biāo)準(zhǔn)之內(nèi)。
二 H.264與其它標(biāo)準(zhǔn)的性能比較
為了闡述H.264的編碼效率,我們將其與其它標(biāo)準(zhǔn)如MPEG-2、H.263、MPEG-4等作比較。使用QCIF、CIF格式的圖像序列作測試,所有編碼器都使用拉格朗日優(yōu)化技術(shù)。我們使用H.264的測試軟件JM2.0并使用了Main Profile的主要技術(shù)特征。對H.263和H.264采用的參考幀數(shù)為5,只編碼圖像序列的第一幀為I幀,每2個(gè)參考幀P之間插入2個(gè)非參考幀B。使用全搜索方式進(jìn)行32×32整數(shù)范圍的運(yùn)動估計(jì),且由預(yù)先設(shè)定的量化參數(shù)來進(jìn)行比特率的調(diào)整。圖為對CIF格式的圖像序列Tempete在幀率為15Hz時(shí)所作的測試比較。
和其它標(biāo)準(zhǔn)比較,H.264在比特率上減少的程度如表1所示。

為進(jìn)一步對新標(biāo)準(zhǔn)的技術(shù)特征進(jìn)行性能分析,我們將H.264采用的幀內(nèi)編碼方案與靜態(tài)圖像編碼標(biāo)準(zhǔn)采用的技術(shù)作性能比較。在這里,我們采用H.264的測試軟件JM3.9a與不包含ABT技術(shù)的Main
Profile、JPEG 2000的測試軟件VM 9.0的測試結(jié)果進(jìn)行比較。H.264采用的幀內(nèi)編碼技術(shù)性能突出。對大多數(shù)測試的圖像序列來說,在各種比特率條件下,其性能總是超過JPEG
2000。究其原因可能是H.264采用了多種設(shè)計(jì)合理的幀內(nèi)預(yù)測模式。另一方面,H.264采用小波變換技術(shù)、分級量化及算術(shù)編碼,并沒有使用預(yù)測技術(shù)。在高比特率時(shí),兩者處理的圖像在主觀質(zhì)量上并無太大差異。然而在低比特率時(shí),JPEG
2000的圖像看起來更模糊,圖像輪廓有明顯的環(huán)狀效應(yīng),這是使用小波變換造成高頻分量損失的結(jié)果。測試比較結(jié)果如表2所示。

從測試結(jié)果看,H.264采用的幀內(nèi)編碼技術(shù)在對大圖像處理時(shí)會出現(xiàn)增益的收縮,然而在低碼率的情況下卻可以取得很高的增益。針對所有圖像序列及比特率,H.264平均對JPEG
2000有1.12dB的優(yōu)勢。
三 H.264標(biāo)準(zhǔn)的展望
許多人都曾以為傳統(tǒng)的基于塊的視頻編碼技術(shù)已經(jīng)落后,將會被擯棄,然而H.264的提出再次證明其在低碼率壓縮視頻方面的優(yōu)勢仍有著很大挖掘潛力。新標(biāo)準(zhǔn)更進(jìn)一步體現(xiàn)了對視頻信源的適應(yīng)性,但這種適應(yīng)性是以提高算法的復(fù)雜性和增加對參考幀的存儲能力為代價(jià)的。
H.264標(biāo)準(zhǔn)不僅針對視頻會議系統(tǒng),而且涵蓋了電視廣播、網(wǎng)絡(luò)流媒體、多媒體信息的數(shù)字存儲、數(shù)字影院等各方面的應(yīng)用?傊捎诓捎昧讼冗M(jìn)的壓縮技術(shù),H.264擁有優(yōu)異的視頻實(shí)時(shí)處理性能,必將會引發(fā)視頻傳輸相關(guān)技術(shù)研發(fā)的又一次浪潮,同時(shí)創(chuàng)造出巨大的商業(yè)機(jī)會。
本文作者吳培森先生,河北省任丘市匯利科技有限責(zé)任公司成員。
中國通信網(wǎng)(www.c114.net)—摘自《世界寬帶網(wǎng)絡(luò)》
相關(guān)鏈接: