摘要:從最新的H.264 FRExt標(biāo)準(zhǔn)出發(fā),介紹了高質(zhì)量視頻編碼中常用的幾種色彩空間編碼方法,并對其實驗結(jié)果進(jìn)行了分析。
關(guān)鍵詞:H.264;變換編碼;色彩空間;高質(zhì)量視頻編碼
中圖分類號:TN919.8文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2009)35-10080-03
The Analysis of Several High Quality Color Space Coding Methods for H.264
ZHOU Yi, YANG Jian-feng
(Dept.of Electronic and Information Engineering, Soochaw University, Suzhou 215006, China)
Abstract: Several color space coding method used in high quality coding are introduced in this paper from the latest H.264 FRExt standards and these schemes are analyzed by the experimental results.
Key words: H.264; transform coding; color space; high quality coding
數(shù)字圖像、視頻的色彩空間變換是為了在廣播電視中傳輸?shù)男枰a(chǎn)生的。但是隨著電視產(chǎn)業(yè)的多元化發(fā)展,出現(xiàn)了各種各樣的色彩空間變換方法。這些變換方法包括:RGB, YUV, YIQ, YCbCr, YDbDr, YPbPr, YUW, XYZ, HSI, HLS, HSV, CMYK等。當(dāng)前數(shù)字視頻應(yīng)用的發(fā)展方向,基本集中在專業(yè)的高質(zhì)量、高碼率、高解析度的應(yīng)用方面。在HDTV和數(shù)字影院中,對編碼失真的要求更高,甚至要求做到無失真編碼。色彩空間的變換方法也應(yīng)向相關(guān)需求上發(fā)展。新的H.264 FRExt的研究中正是從這個角度出發(fā),提出了一系列新的色彩空間編碼方法[1]。
1 幾種常用的色彩空間域
1.1 RGB空間
RGB在計算機(jī)領(lǐng)域有舉足輕重的地位。由于色彩顯示器使用紅、綠、藍(lán)3色來產(chǎn)生需要的顏色,所以被廣泛用于計算機(jī)圖形和成像之中。然而,在處理現(xiàn)實世界的圖像時,RGB并非是很有效,因為它對所有色彩都用等長像素在R、G、B三色加以合成。這就使得每個像素至少在R、G、B三個成分上擁有相同的像素深度和顯示分辨率。所以RGB空間從壓縮的角度來看,是一個效率很低的空間。每一個RGB分量既包括色度信息,又包括亮度信息。這種冗余度會降低編碼效率。
1.2 YUV色彩空間變換方法
為了減少色彩間的冗余,通常RGB空間被轉(zhuǎn)換到Y(jié)UV空間。YUV色彩空間充分利用了人眼對明視度的改變比對色彩的改變敏感得多的特性。Y分量比U分量更重要,根據(jù)這一特征,在不使用任何復(fù)雜算法的前提下,可以適當(dāng)?shù)膾仐塙和V分量以達(dá)到壓縮的目的,這就是部分取樣(subsampling)。
YUV正變換公式為: (1)
反變換公式為:(2)
由于RGB->YCbCr->RGB是非整數(shù)變換的,變換過程包括舍入誤差。并且這種變換前后的色彩失真,在高清格式的視頻序列以及數(shù)字影院中,人眼是清晰可見的。沒有一位電影制片商愿意看到原本色彩鮮艷的電影,僅僅經(jīng)過色彩空間變換就帶來了不小的失真度。為了維持原始圖像的色保真度,在FRExt中提出了新的色彩空間變換方法。
1.3 YCoCg空間變換
在新的FRExt標(biāo)準(zhǔn)中采用的是YCoCg的顏色空間[2]。正變換定義為:
(3)
反變換定義為:
(4)
這種變換有三個重要的特點:
1) 正反變換都是在整數(shù)范圍內(nèi)進(jìn)行,不存在舍入誤差。
2) 最小限度的增加了變換的動態(tài)范圍。對于Y分量,沒有增加動態(tài)范圍;對于CoCg分量,只需要增加一位值來表示。
3) 色彩空間變換的增益高。
2 幾種針對高質(zhì)量視頻的色彩空間編碼方法
2.1 RCT變換
如圖1所示,Residual color transform(RCT)變換是針對高質(zhì)量的視頻壓縮而提出的,已經(jīng)被FRExt 標(biāo)準(zhǔn)正式采納。這種變換對RGB、XYZ等各種輸入圖像格式都有很高的壓縮率,并且最大可支持14位的比特輸入,同時也支持無損壓縮編碼。
研究發(fā)現(xiàn)[3],對于一些視頻序列,經(jīng)過色彩空間變換的統(tǒng)計特性,并不和JVT標(biāo)準(zhǔn)中進(jìn)行幀內(nèi)/幀間預(yù)測時,假設(shè)的統(tǒng)計特性相同。為了保證高質(zhì)量的視頻壓縮,最好的方法還是直接在RGB色彩空間做預(yù)測。RGB色彩空間進(jìn)行的預(yù)測是直接作用在RGB空間上的,預(yù)測后每一個RGB殘差分量間還存在著冗余度,編碼效率降低了很多。使用YCoCg變換來去相關(guān)這種冗余度。ΔR、ΔG、ΔB是殘差數(shù)據(jù),ΔY、ΔCo、ΔCg是變換后的數(shù)據(jù)。
實驗方法[4]:三個色彩分量都采用幀內(nèi)編碼,公平對比。
RCT_OLD: 先做YCoCg的色彩空間變換,再進(jìn)行預(yù)測。
RCT:先做預(yù)測,再進(jìn)行YCoCg色彩空間變換
實驗結(jié)果如表1。
2.2 平面間預(yù)測編碼方法 (Inter-plan prediction coding method)
Inter-plan prediction (IPP) 編碼方法支持各種4:4:4的輸入格式,包括:XYZ,RGB等。在XYZ和RGB色彩空間中, Green和Y被當(dāng)作亮度分量進(jìn)行編碼。對于RGB編碼,用DPCM的編碼方式,即用G的殘差值來預(yù)測R和B的殘差值,以此來提高編碼效率。這種模式在幀內(nèi)及幀間編碼中都很有效。這種方法避免了色彩空間變換所帶來的誤差,同時保證了編碼效率。適用于對色彩要求較高的領(lǐng)域,如數(shù)字電影、數(shù)字檢索、衛(wèi)星等[5]。
圖2為Inter-Plane Prediction預(yù)測方法。
實驗結(jié)果如圖3所示。
Avg PSNR的計算方法:平均RGB PSNR = (PSNR_red+PSNR_green+PSNR_blue)/3
在量化參數(shù)較小時,壓縮碼率的波動范圍很大。由于隨機(jī)膠片顆粒噪聲的存在,使用RGB到Y(jié)UV的色彩變換編碼或是使用IPP編碼方法的編碼增益都有所下降。YUV利用亮度和色度特性進(jìn)行編碼所獲得的增益,在高碼率的情況下,逐漸弱化,YUV編碼的增益下降,并且色彩失真度也大大增加。而IPP編碼方法在取得相同編碼增益時,避免了色彩失真。
2.3 Thomson 方法
在進(jìn)行各種各樣4:4:4壓縮技術(shù)測試對比時發(fā)現(xiàn),MPEG4-Part10/H.264 FRExt在只用幀內(nèi)編碼模式進(jìn)行壓縮,PSNR值在40dB以上時,壓縮效率沒有JPEG2000高。利用MPEG4-Part10/H.264強大的工具包,可以在不增加新的壓縮工具的情況下,提高4:4:4圖像格式的壓縮效率[6]。
在目前的High 4:4:4 Profile中,RGB三個色彩分量中只有一個是當(dāng)作亮度分量來壓縮的,其余的二個色彩分量是作為色度來壓縮的。當(dāng)輸入到編碼器的序列是4:4:4格式時,所有色彩分量都是全采樣的。把其中的二個色彩分量用非最優(yōu)的色度壓縮方法進(jìn)行壓縮,將會使這兩個信道的比特率大幅度上升。在I幀編碼時,這個問題更加引人關(guān)注。
Thomson在實驗中發(fā)現(xiàn),當(dāng)輸入視頻序列有更多的空間紋理信息以及邊緣信息時,在亮度上使用的編碼方法的壓縮效率比在色度上使用的編碼方法的壓縮效率提高了很多。在一些測試序列中,PSNR值在45dB以上時,三種色彩分量都用亮度的方法來進(jìn)行壓縮,可以減少30%的碼率。
Thomson方法和現(xiàn)在的High 4:4:4 Profile相對比,框圖更簡單。這個算法的關(guān)鍵特點是:
1) 沒有引入新的編碼方法,只是把原來亮度中的編碼工具進(jìn)一步應(yīng)用在三種色彩分量上。這樣做的目的是為了最大限度提高4:4:4格式的編碼效率,同時,對原來編碼器的結(jié)構(gòu)修改最小。
2) 對于三個色彩分量都使用亮度編碼算法進(jìn)行編碼,提高編碼效率。對于幀內(nèi)宏塊,每一個輸入信號都用在[7]中Table 8-2,Table 8-3,Table 8-4的預(yù)測方法。對于B幀和P幀,三個色彩分量的分像素內(nèi)插都使用[7]中Section 8.4.2.1所描述的方法。
3) 不使用RCT變換。在編碼器結(jié)構(gòu)中移除RCT模塊,保持編碼器的結(jié)構(gòu)與其它格式的編碼器相同,減小了復(fù)雜度,更易于實現(xiàn)。
4) 對三個色彩分量進(jìn)行幀內(nèi)宏塊空間預(yù)測模式選擇時,有二種方法:
Solution 1
首先,限制三種色彩分量用同樣的MbPartPredMode或者macorblock type進(jìn)行預(yù)測。然后每種色彩分量獨立的進(jìn)行運動估計,獨立選擇最佳的幀內(nèi)預(yù)測模式。所以,理論上來說,為了最小化每種色彩分量的預(yù)測誤差,各分量仍可獨立的選擇最佳的幀內(nèi)空間預(yù)測模式。
Solution 2
另外一種簡單的方法是,限制所有三種色彩分量只使用同一種幀內(nèi)空間預(yù)測模式。這種方法可以最低限度的減少對代碼的修改,并且只對編碼效率有輕微的影響。
實驗結(jié)果如圖4所示。
從圖4中可以看到,RCT編碼對提高PSNR沒有貢獻(xiàn)。使用Solution1的方法進(jìn)行編碼,在大多數(shù)序列中都能得到最好的編碼質(zhì)量,特別是在PSNR值在50dB以上時,平均能提高0.2dB。但是,這種方法大量增加了碼率,從率失真編碼的角度來考慮,并不是最佳的。Solution2雖然沒有Solution1的編碼質(zhì)量高,但Solution2編碼過程相對簡單,只需對代碼稍作改動就能實現(xiàn)[8]。
比較Solution1和Solution2,PSNR的提高不大,但碼率增加了不少。從全局的角度來考慮,Solution1和Solution2選擇哪個最合適,還有待于進(jìn)一步論證。
3 結(jié)論
作者從新的視頻發(fā)展需求出發(fā),介紹了現(xiàn)階段H.264標(biāo)準(zhǔn)中,提出的幾種高質(zhì)量視頻壓縮方法。在高質(zhì)量、高色保真度領(lǐng)域的壓縮研究才剛剛開始,對于4:4:4圖像格式,還有不少的發(fā)展空間。這是H.264未來發(fā)展的一個研究重點。
參考文獻(xiàn):
[1] Sullivan Gary J,Topiwala Pankaj,Luthra Ajay.The H.264/AVC Advanced Video Coding Standard: Overview and Introduction to the Fidelity Range Extensions[C].SPIE Conference on Applications of Digital Image Processing Special Session on Advanced in New Emerging Standard: H.264/AVC,2004.
[2] Malvar H,Sullivan G.YCoCg-R: a color space with RGB reversibility and low dynamic range[R].ISO/IEC JTC1/SC29/WG11 and ITU-T Q6/SG16, Document JVT-I014,2003.
[3] Kim W S,Cho D,Kim H M.Color Format Extension[R].ISO/IEC JTC1/SC29/WG11 and ITU-T Q6/SG16, Document JVT-H018,2003.
[4] Kim W S,Cho D S.Verification and Analysis of Experiments in JVT-P017[R].ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6, Document JVT-Q058,2005
[5] Kim W S,Cho D S.Inter-plane'Prediction for RGB Coding[R].ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6, Document JVT-I023,2003.
[6] Yu Haoping.Advanced 4:4:4 Profile for MPEG4-Part10/H.264\"[R].ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6, Document JVT-P017,2005.
[7] Text of ISO/IEC 14496 10 Advanced Video Coding 3rd Edition (ITU-T Rec. H.264)[R].ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6,Document N6540,2004.
[8] Wu Zhongmou,He Yun.Cross Verification for Advanced 4:4:4 Profile[R].ISO/IEC JTC1/SC29/WG11 and ITU-T SG16 Q.6, Document JVT-Q092,2005.