摘要:從最新的H.264 FRExt標準出發,介紹了高質量視頻編碼中常用的幾種色彩空間編碼方法,并對其實驗結果進行了分析。
關鍵詞:H.264;變換編碼;色彩空間;高質量視頻編碼
中圖分類號:TN919.8文獻標識碼: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
數字圖像、視頻的色彩空間變換是為了在廣播電視中傳輸的需要而產生的。但是隨著電視產業的多元化發展,出現了各種各樣的色彩空間變換方法。這些變換方法包括:RGB, YUV, YIQ, YCbCr, YDbDr, YPbPr, YUW, XYZ, HSI, HLS, HSV, CMYK等。當前數字視頻應用的發展方向,基本集中在專業的高質量、高碼率、高解析度的應用方面。在HDTV和數字影院中,對編碼失真的要求更高,甚至要求做到無失真編碼。色彩空間的變換方法也應向相關需求上發展。新的H.264 FRExt的研究中正是從這個角度出發,提出了一系列新的色彩空間編碼方法[1]。
1 幾種常用的色彩空間域
1.1 RGB空間
RGB在計算機領域有舉足輕重的地位。由于色彩顯示器使用紅、綠、藍3色來產生需要的顏色,所以被廣泛用于計算機圖形和成像之中。然而,在處理現實世界的圖像時,RGB并非是很有效,因為它對所有色彩都用等長像素在R、G、B三色加以合成。這就使得每個像素至少在R、G、B三個成分上擁有相同的像素深度和顯示分辨率。所以RGB空間從壓縮的角度來看,是一個效率很低的空間。每一個RGB分量既包括色度信息,又包括亮度信息。這種冗余度會降低編碼效率。
1.2 YUV色彩空間變換方法
為了減少色彩間的冗余,通常RGB空間被轉換到YUV空間。YUV色彩空間充分利用了人眼對明視度的改變比對色彩的改變敏感得多的特性。Y分量比U分量更重要,根據這一特征,在不使用任何復雜算法的前提下,可以適當的拋棄U和V分量以達到壓縮的目的,這就是部分取樣(subsampling)。
YUV正變換公式為: (1)
反變換公式為:(2)
由于RGB->YCbCr->RGB是非整數變換的,變換過程包括舍入誤差。并且這種變換前后的色彩失真,在高清格式的視頻序列以及數字影院中,人眼是清晰可見的。沒有一位電影制片商愿意看到原本色彩鮮艷的電影,僅僅經過色彩空間變換就帶來了不小的失真度。為了維持原始圖像的色保真度,在FRExt中提出了新的色彩空間變換方法。
1.3 YCoCg空間變換
在新的FRExt標準中采用的是YCoCg的顏色空間[2]。正變換定義為:
(3)
反變換定義為:
(4)
這種變換有三個重要的特點:
1) 正反變換都是在整數范圍內進行,不存在舍入誤差。
2) 最小限度的增加了變換的動態范圍。對于Y分量,沒有增加動態范圍;對于CoCg分量,只需要增加一位值來表示。
3) 色彩空間變換的增益高。
2 幾種針對高質量視頻的色彩空間編碼方法
2.1 RCT變換
如圖1所示,Residual color transform(RCT)變換是針對高質量的視頻壓縮而提出的,已經被FRExt 標準正式采納。這種變換對RGB、XYZ等各種輸入圖像格式都有很高的壓縮率,并且最大可支持14位的比特輸入,同時也支持無損壓縮編碼。
研究發現[3],對于一些視頻序列,經過色彩空間變換的統計特性,并不和JVT標準中進行幀內/幀間預測時,假設的統計特性相同。為了保證高質量的視頻壓縮,最好的方法還是直接在RGB色彩空間做預測。RGB色彩空間進行的預測是直接作用在RGB空間上的,預測后每一個RGB殘差分量間還存在著冗余度,編碼效率降低了很多。使用YCoCg變換來去相關這種冗余度。ΔR、ΔG、ΔB是殘差數據,ΔY、ΔCo、ΔCg是變換后的數據。
實驗方法[4]:三個色彩分量都采用幀內編碼,公平對比。
RCT_OLD: 先做YCoCg的色彩空間變換,再進行預測。
RCT:先做預測,再進行YCoCg色彩空間變換
實驗結果如表1。
2.2 平面間預測編碼方法 (Inter-plan prediction coding method)
Inter-plan prediction (IPP) 編碼方法支持各種4:4:4的輸入格式,包括:XYZ,RGB等。在XYZ和RGB色彩空間中, Green和Y被當作亮度分量進行編碼。對于RGB編碼,用DPCM的編碼方式,即用G的殘差值來預測R和B的殘差值,以此來提高編碼效率。這種模式在幀內及幀間編碼中都很有效。這種方法避免了色彩空間變換所帶來的誤差,同時保證了編碼效率。適用于對色彩要求較高的領域,如數字電影、數字檢索、衛星等[5]。
圖2為Inter-Plane Prediction預測方法。
實驗結果如圖3所示。
Avg PSNR的計算方法:平均RGB PSNR = (PSNR_red+PSNR_green+PSNR_blue)/3
在量化參數較小時,壓縮碼率的波動范圍很大。由于隨機膠片顆粒噪聲的存在,使用RGB到YUV的色彩變換編碼或是使用IPP編碼方法的編碼增益都有所下降。YUV利用亮度和色度特性進行編碼所獲得的增益,在高碼率的情況下,逐漸弱化,YUV編碼的增益下降,并且色彩失真度也大大增加。而IPP編碼方法在取得相同編碼增益時,避免了色彩失真。
2.3 Thomson 方法
在進行各種各樣4:4:4壓縮技術測試對比時發現,MPEG4-Part10/H.264 FRExt在只用幀內編碼模式進行壓縮,PSNR值在40dB以上時,壓縮效率沒有JPEG2000高。利用MPEG4-Part10/H.264強大的工具包,可以在不增加新的壓縮工具的情況下,提高4:4:4圖像格式的壓縮效率[6]。
在目前的High 4:4:4 Profile中,RGB三個色彩分量中只有一個是當作亮度分量來壓縮的,其余的二個色彩分量是作為色度來壓縮的。當輸入到編碼器的序列是4:4:4格式時,所有色彩分量都是全采樣的。把其中的二個色彩分量用非最優的色度壓縮方法進行壓縮,將會使這兩個信道的比特率大幅度上升。在I幀編碼時,這個問題更加引人關注。
Thomson在實驗中發現,當輸入視頻序列有更多的空間紋理信息以及邊緣信息時,在亮度上使用的編碼方法的壓縮效率比在色度上使用的編碼方法的壓縮效率提高了很多。在一些測試序列中,PSNR值在45dB以上時,三種色彩分量都用亮度的方法來進行壓縮,可以減少30%的碼率。
Thomson方法和現在的High 4:4:4 Profile相對比,框圖更簡單。這個算法的關鍵特點是:
1) 沒有引入新的編碼方法,只是把原來亮度中的編碼工具進一步應用在三種色彩分量上。這樣做的目的是為了最大限度提高4:4:4格式的編碼效率,同時,對原來編碼器的結構修改最小。
2) 對于三個色彩分量都使用亮度編碼算法進行編碼,提高編碼效率。對于幀內宏塊,每一個輸入信號都用在[7]中Table 8-2,Table 8-3,Table 8-4的預測方法。對于B幀和P幀,三個色彩分量的分像素內插都使用[7]中Section 8.4.2.1所描述的方法。
3) 不使用RCT變換。在編碼器結構中移除RCT模塊,保持編碼器的結構與其它格式的編碼器相同,減小了復雜度,更易于實現。
4) 對三個色彩分量進行幀內宏塊空間預測模式選擇時,有二種方法:
Solution 1
首先,限制三種色彩分量用同樣的MbPartPredMode或者macorblock type進行預測。然后每種色彩分量獨立的進行運動估計,獨立選擇最佳的幀內預測模式。所以,理論上來說,為了最小化每種色彩分量的預測誤差,各分量仍可獨立的選擇最佳的幀內空間預測模式。
Solution 2
另外一種簡單的方法是,限制所有三種色彩分量只使用同一種幀內空間預測模式。這種方法可以最低限度的減少對代碼的修改,并且只對編碼效率有輕微的影響。
實驗結果如圖4所示。
從圖4中可以看到,RCT編碼對提高PSNR沒有貢獻。使用Solution1的方法進行編碼,在大多數序列中都能得到最好的編碼質量,特別是在PSNR值在50dB以上時,平均能提高0.2dB。但是,這種方法大量增加了碼率,從率失真編碼的角度來考慮,并不是最佳的。Solution2雖然沒有Solution1的編碼質量高,但Solution2編碼過程相對簡單,只需對代碼稍作改動就能實現[8]。
比較Solution1和Solution2,PSNR的提高不大,但碼率增加了不少。從全局的角度來考慮,Solution1和Solution2選擇哪個最合適,還有待于進一步論證。
3 結論
作者從新的視頻發展需求出發,介紹了現階段H.264標準中,提出的幾種高質量視頻壓縮方法。在高質量、高色保真度領域的壓縮研究才剛剛開始,對于4:4:4圖像格式,還有不少的發展空間。這是H.264未來發展的一個研究重點。
參考文獻:
[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.