引言 H.26L是下一代視頻編碼標準。最初,H.26L由ITU-T的VCEG小組開始著手制訂。2001年11月,MPEG和VCEG聯合成立 JVT小組共同參與制訂H.26L。也正因為MPEG的加入,H.26L將被納入MPEG-4的第十部分。由于H.26L標準還在制訂過程中,本文暫時以 JVT提供的測試模型TML8為參考。 H.26L信源編碼的基本編碼框架類似于當前流行的視頻編碼標準,采用結合變換編碼和預測編碼的混合編碼技術。它出色的性能主要來源于引入的新編碼特性:4×4點整數變換、使用UVLC進行熵編碼、1/4~1/8像素精度的運行矢量、有多種塊大小進行運動估計等等。這些新的編碼技術從不同側面提高了壓縮性能和容錯性能。尤其是4×4點整數變換,是所有視頻壓縮協議中獨一無二的。 雖然H.26L標準還在制訂中,但是在初步的測試中,它的編碼性能超越了現存所有標準,包括H.263+和MPEG-4(Simple profile)。這些試驗結果表明,在取得相同的客觀視頻質量下,H.26L比H.263+能夠節省20%~50%的碼率,比MPEG-4(SP)節省多達50%的碼率。作為下一代視頻編碼標準,H.26L展示了其巨大的發展前景。 1 H.26L的4×4點整數變換 1.1 變換簡介 在H.26L編碼技術中,4×4點整數變換可以看作是DCT變換的整數版本,主要完成去除圖像的空間相關性,與4×4點DCT變換有著相同的性質。先考慮一維的整數變換:設a,b,c,d是4個待變換的點,A,B,C,D是對應的4個變換系數,則可以用以下公式表示a,b,c,d點的正變換: A=13a+13b+13c+13d B=17a+7b-7c-17d C=13a-13b-13c+13d D=7a-17b+17c-7d 反變換公式如下: a‘=13A+17B+13C+7D b‘=13A+7B-13C-17D c‘=13A-7B-13C+17D d‘=13A-17B+13C-7D 其中a和a‘的關系是a‘=676a。也就是說,經過反變換后,還需要進行歸一化操作,使得正變換和變換尺度一致。 同樣二維的4×4整數變換的變換核是可分離的。分離的變換將計算復雜度從O(N4)降到O(N3)。 1.2 與8×8點DCT變換的比較 與傳統的DCT變換相比,H.26L采用4×4點整數變換為視頻編碼帶來了以下優點: ①有助于減少塊斑和環形斑,提高了圖像質量。由于對變換系數進行了量化,造成了高頻系數丟失,所以恢復的圖像中會有塊班和環形班。在H.26L中,采用了更小的4×4點變換,可以有效抑制塊斑和環形斑。 ②整數變換減小了積累誤差。傳統的積累誤差來自兩個方面:正變換和反變換不匹配造成的誤與量化造成的誤差。為了達到壓縮的目的,第二種誤差不可避免。但是,由于H.26L采用了精確的整數變換,所以正變換和反變換不會產生誤差,這樣有效地減少了積累誤差。 ③運算速度快。因為H.26L采用的變換公式是一個簡單的整數方程,也就是說計算都是基于整數的,而不是浮點數,所以它減少了單個變換的計算量,也有利于采用定點的DSP實現。 2 在TM1300中的實現 TM1300是一款32位超高性能的多媒體處理器。它的核心處理器采用的是VLIW超長指令字結構,可以在每一個時鐘周期內同時進行5個操作;支持高度并行的定制操作,能大大加快數字信號處理和多媒體應用中常見的特殊運行的性能,而定制操作在使用上類似于C語言函數調用,方便了程序的設計。 本文針對4×4點整數變換的特點和TM1300的定制運算指令的特點,對整數變換作了以下調整:先做行變換,再做列變換。由于行變換的結果不會超過16位的表示范圍,故在作列變換之前,重新合并數據,再作列變換,這樣作是基于以下兩點考慮。 第一,由于視頻輸入數據為無符號的字節型,而TM1300是32位的處理器,以字為單位訪問內存,能提高訪問的效率。當前4×4數據塊(指針為P1)和參考幀4×4數據塊(指針為P2)的數據組織如下。待變換的點為當前數據塊的值與參考幀數據塊對應的值之差。 P1:cal,cb1,cc1,cd1 P2:ra1,rb1,rc1,rd1 ca2,cb2,cc2,cd2 ra2,rb2,rc2,rd2 ca3,cb3,cc3,cd3 ra3,rb3,rc3,rd3 ca4,cb4,cc4,cd4 ra4,rb4,rc4,rd4 第二,可以利用8位乘/累加的定制操作,一個操作能完成4個8位乘/累加,一個機器周期(CLK)最多能執行5個操作。與非定制的乘/累加相比,減少了運算的次數,提高了程序運行的并行度。 圖1為ifir8ui定制操作功能示意圖 3 實驗結果 本文提出的基于TM1300的4×4整數變換的快速算法,使用了并行算是技術大大減少了計算量。實驗表明,進行1個4×4點整數變換,直接用乘法和加法運算需要80個機器周期,改進后的算法只需28個機器周期;而利用TM1300進行1個8×8點定點DCT變換需要180個機器周期,也明顯大于 4個4×4點整數變換時間。在變換方面H.264的變換編碼運算復雜度小于其它編碼方法。 參考文獻 1. ITU-T/SG 16NCEG (Q.6). Draft ITU-T Recommendation H.26L. Document VCEG-P07 16th Meeting: FairfaxVirginia USA 6-10 May 2002 2. Topiwala P.Sullivan G.Joch A Performance Evaluation of H.26L TML-8 versus H.263++ and MPEG-4 2001 3. Topiwala P.Sullivan G.Joch A Overview and Performance Evaluation of theITU-T Draft H.26LVideo Coding Standard 2001 4. Joint Video Team (JVT Evaluation and Simplification of H.26L Baseline Coding Tools. Document JVT-B0302nd Meeting: Geneva CH Jan. 29 - Feb. 1 2002 作 者:武漢大學 段漢文 黃曉杰 來 源:單片機與嵌入式系統應用 2003(8) |