H.264視頻編碼標準與AVS的比較

視頻編碼技術在過去幾年最重要的發展之一是由ITU和ISO/IEC的聯合視頻小組 (JVT)開發了H.264/MPEG-4 AVC[8]標準。在發展過程當中,業界爲這種新標準取了許多不一樣的名稱。ITU在1997年開始利用重要的新編碼工具處理H.26L(長期),結果使人鼓舞,因而ISO決定聯手ITU組建JVT並採用一個通用的標準。所以,你們有時會聽到有人將這項標準稱爲JVT,儘管它並不是正式名稱。ITU在2003年5月批准了新的H.264標準。ISO在2003年10 月以MPEG-4 Part 十、高級視頻編碼或AVC的名稱批准了該標準。 H.264 實現的改進創造了新的市場機遇 H.264/AVC在壓縮效率方面取得了巨大突破,通常狀況下達到MPEG-2及MPEG-4簡化類壓縮效率的大約2倍。在JVT進行的正式測試中,H.264在85個測試案例中有78%的案例實現1.5倍以上的編碼效率提升,77%的案例中達到2倍以上,部分案例甚至高達4倍。H.264 實現的改進創造了新的市場機遇,如:600Kbps的VHS品質視頻能夠經過ADSL線路實現視頻點播;高清晰電影無需新的激光頭便可適應普通 DVD。 H.264標準化時支持三個類別:基本類、主類及擴展類。後來一項稱爲高保真範圍擴展 (FRExt)的修訂引入了稱爲高級類的4個附加類。在初期主要是基本類和主類引發了你們的興趣。基本類下降了計算及系統內存需求,並且針對低時延進行了優化。因爲B幀的內在時延以及CABAC的計算複雜性,所以它不包括這二者。基本類很是適合可視電話應用以及其餘須要低成本實時編碼的應用。 主類提供的壓縮效率最高,但其要求的處理能力也比基本類高許多,所以使其難以用於低成本實時編碼和低時延應用。廣播與內容存儲應用對主類最感興趣,它們是爲了儘量以最低的比特率得到最高的視頻質量。 儘管H.264採用與舊標準相同的主要編碼功能,不過它還具備許多與舊標準不一樣的新功能,它們一塊兒實現了編碼效率的提升。其主要差異,概述以下: 幀內預測與編碼:H.264採用空域幀內預測技術來預測相鄰塊鄰近像素的Intra-MB中的像素。它對預測殘差信號和預測模式進行編碼,而不是編碼塊中的實際像素。這樣能夠顯著提升幀內編碼效率。 幀間預測與編碼:H.264中的幀間編碼採用了舊標準的主要功能,同時也增長了靈活性及可操做性,包括適用於多種功能的幾種塊大小選項,如:運動補償、四分之一像素運動補償、多參考幀、通用 (generalized)雙向預測和自適應環路去塊。 可變矢量塊大小:容許採用不一樣塊大小執行運動補償。能夠爲小至4(4的塊傳輸單個運動矢量,所以在雙向預測狀況下能夠爲單個MB傳輸多達32個運動矢量。另外還支持16(八、8(1六、8(八、8(4和4(8的塊大小。下降塊大小能夠提升運動細節的處理能力,於是提升主觀質量感覺,包括消除較大的塊化失真。 四分之一像素運動估計:經過容許半像素和四分之一像素運動矢量分辨率能夠改善運動補償。 多參考幀預測:16個不一樣的參考幀能夠用於幀間編碼,從而能夠改善視頻質量的主觀感覺並提升編碼效率。提供多個參考幀還有助於提升H.264位流的容錯能力。值得注意的是,這種特性會增長編碼器與解碼器的內存需求,由於必須在內存中保存多個參考幀。 自適應環路去塊濾波器:H.264採用一種自適應解塊濾波器,它會在預測迴路內對水平和垂直區塊邊緣進行處理,用於消除塊預測偏差形成的失真。這種濾波一般是基於4(4塊邊界爲運算基礎,其中邊界各邊的3個像素可經過4級濾波器進行更新。 整數變換:採用DCT的早期標準必須爲逆變換的固點實施來定義舍入偏差的容差範圍。編碼器與解碼器之間的 IDCT 精度失配形成的漂移是質量損失的根源。H.264利用整數4(4空域變換解決了這一問題——這種變換是DCT的近似值。4(4的小區塊還有助於減小阻塞與振鈴失真。 量化與變換系數掃描:變換系數經過標量量化方式獲得量化,不產生加大的死區。與以前的標準相似,每一個MB均可選擇不一樣的量化步長,不過步長以大約12.5%的複合速率增長,而不是固定遞增。同時,更精細的量化步長還能夠用於色度成分,尤爲是在粗劣量化光度係數的狀況下。 熵編碼:與根據所涉及的數據類型提供多個靜態VLC表的先前標準不一樣,H.264針對變換系數採用上下文自適應VLC,同時針對全部其餘符號採用統一的VLC (UniversalVLC)方法。主類還支持新的上下文自適應二進制算術編碼器 (CABAC)。CAVLC優於之前的VLC實施,不過成本卻比VLC高。 CABAC利用編碼器和譯碼器的機率模型來處理全部語法元素 (syntax elements),包括:變換系數和運動矢量。爲了提升算術編碼的編碼效率,基本機率模型經過一種稱爲上下文建模的方法對視頻幀內不斷變換的統計進行適應。上下文建模分析提供編碼符號的條件機率估計值。只要利用適當的上下文模型,就能根據待編碼符號周圍的已編碼符號,在不一樣的機率模型間進行切換,進而充份利用符號間的冗餘性。每一個語法元素均可以保持不一樣的模型(例如,運動矢量和變換系數具備不一樣的模型)。相較於VLC熵編碼方法 (UVLC/CAVLC),CABAC 能多節省10%bit速率。 加權預測:它利用前向和後向預測的加權總和創建對雙向內插宏模塊的預測,這樣能夠提升場景變化時的編碼效率,尤爲是在衰落狀況下。 保真度範圍擴展:2004年7月,H.264標準增長了稱爲保真度範圍擴展 (FRExt) [11]的新修訂。此次擴展在H.264中添加了一整套工具,並且容許採用附加的色域、視頻格式和位深度。另外還增長了對無損幀間編碼與立體顯示視頻的支持。FRExt修訂版在H.264中引入了4種新類,即: •High Profile (HP):用於標準 4:2:0色度採樣,每份量8位彩色。此類引入了新的工具—— 隨後詳述。 •High 10 Profile (Hi10P):用於更高清晰度視頻顯示的標準 4:2:0 色度採樣,10位彩色。 •High 4:2:2 10 bit color profile (H422P):用於源編輯功能。 •High 4:4:4 12 bit color profile (H444P):最高品質的源編輯與色彩保真度,支持視頻區域的無損編碼以及與新的整數色域變換(從RGB到YUV及黑色)。 在新的應用領域中,H.264 HP對廣播與DVD尤其有利。某些試驗顯示出H.264 HP的性能比MPEG2 提升了3倍。下面介紹H.264 HP中引入的主要附加工具。 自適應殘差塊大小與整數8(8變換:用於變換編碼的殘差塊能夠在8(8與4(4之間切換。引入了用於8(8塊的新16位整數變換。較小的塊仍然能夠採用之前的4(4變換。 8(8亮度幀內預測:增長了8種模式,除以前的16(16和4(4塊之外,使亮度內部宏模塊還可以對8(8塊進行幀內預測。 量化加權:用於量化8(8變換系數的新量化加權矩陣。 單色:支持黑/白視頻編碼。 AVS 2002 年,中國信息產業部成立的音視頻技術標準 (AVS)工做組宣佈準備針對移動多媒體、廣播、DVD等應用編寫一份國家標準。該視頻標準稱爲AVS [14],由兩個相關部分組成針對移動視頻應用的AVS-M和針對廣播與DVD的AVS1.0。AVS標準與H.264類似。 AVS1.0同時支持隔行和逐行掃描模式。AVS中P幀能夠利用2幀的前向參考幀,同時容許B幀採用先後各一個幀。在隔行模式下,4個場能夠用做參考。能夠僅在幀級執行隔行模式中的幀/場編碼,這一點與H.264不一樣,其中容許此選項的MB級自適應。AVS具備與H.264類似的環路濾波器,能夠在幀級關閉。另外,B幀還無需環路濾波器。幀內預測是以8(8塊爲單位進行。MC容許對亮度塊進行1/4象素補償。ME的塊大小能夠是16(1六、16(八、8(16或8(8。變換方式是基於16位的8(8整數變換(與WMV9類似)。VLC是基於上下文自適應2D運行/級別編碼。採用4個不一樣的Exp-Golomb編碼。用於每一個已量化係數的編碼自適應到相同8(8塊中前面的符號。因爲Exp-Golomb表是參數化的表,所以表較小。用於逐行視頻序列的AVS 1.0的視頻質量在相同比特率時稍遜於H.264主類。 AVS-M主要針對移動視頻應用,與H.264基本規範存在交叉。它僅支持逐行視頻、I與P幀,不支持B幀。主要AVS-M編碼工具包括基於4(4塊的幀內預測、1/4象素運動補償、整數變換與量化、上下文自適應VLC以及高度簡化的環路濾波器。與H.264基本規範類似AVS-M中的運動矢量塊大小降至4(4,所以MB可擁有多達16個運動矢量。採用多幀預測,但僅支持2個參考幀。此外,AVS-M中還定義了H.264 HRD/SEI消息的子集。AVS-M的編碼頻率約爲0.3dB,在相同設置下稍遜於H.264基本規範,而解碼器的複雜性卻下降了大約20%。 H.264和AVS的背景 H.264/MPEG-4AVC是ITU-T的VCG(Video Coding Experts Group)和ISO/IEC的MPEG(Moving Picture Experts Group)聯合開發的新一代視頻編碼標準。應用範圍包括可視電話、視頻會議等。H.264的主要特點就是極大得提升了壓縮率,是MPEG-2及MPEG-4壓縮效率的一倍以上。H.264核心技術與以前標準相同,仍採用基於預測變換的混合編碼框架,可是在細節的實現上有很大不一樣,就是細節上的改進致使壓縮效率極大得提升。並且新一代視頻編碼標準H.264具備良好的網絡適應性和容錯等特色。 AVS的誕生能夠說是一個歷史的機遇,面對H.264以及MPEG-2等標準高額的專利費,我國數字視頻產業面臨嚴重挑戰。加上我國致力於提升國內數字音視頻產業的核心競爭力,由國家信息產業部科學技術司於2006年6月批准成立了「數字音視頻編解碼技術標準工做組」,聯合國內從事數字音視頻編解碼技術研發的科研機構和企業,針對我國音視頻產業的需求,提出了我國自主知識產權的信源編碼標準―――《信息技術 先進音視頻編碼》系列標準,簡稱AVS(audio video coding standard).自主的AVS標準在技術和性能上處於國際先進水平,若是抓住此次機遇,我國在技術-專利-標準-芯片-系統-產業這個產業鏈上,就有可能具備全面的主動權。  H.264和AVS核心技術分析及對比 H.264和之前的標準同樣,仍是採用的混合編碼的框架,AVS視頻標準採用了與H.264相似的技術框架,包括變換、量化、熵編碼、幀內預測、幀間預測、環路濾波等模塊。他們核心技術的不一樣包括如下幾點: 1、變換和量化 H.264對殘差數據採用基於塊的變換編碼,去除原始圖像的空間冗餘,使圖像能力集中在小部分系數上,直流係數值通常來講是最大的,這樣能夠提升壓縮比、加強抗干擾能力。先前標準通常採用DCT變換,這種變換的缺點是會出現失配現象,原始數據通過變換和反變換恢復後會有一個差值,因爲是實數運算計算量也比較大。H.264採用的是基於4×4塊的整數變換。 AVS採用8×8的整數變換,能夠在16位處理器上無失配地實現。對高分辨率的視頻圖像去相關性要比4×4變換有效,採用了64級量化,能夠適應不一樣的應用和業務對碼流和質量的要求。  2、幀內預測 H.264和AVS技術都採用幀內預測的方式,用相鄰的像素預測當前塊,採用表明空間域紋理的多種預測模式。H.264的亮度預測有4×4塊和16×16塊2種預測方式,對於4×4的塊:從-135度到+22.5度方向加上一個直流預測一共是9種預測方向;對於16×16塊:有4種預測方向。色度預測是8×8塊,有4種預測模式,相似於幀內16×16預測的4種模式,其中DC爲模式0、水平爲模式一、垂直爲模式二、平面爲模式3。  3、幀間預測 H.264幀間預測是利用以編碼視頻幀和基於塊的運動補償的預測模式,與以往標準幀間預測的區別在於塊尺寸範圍更廣、亞像素運動矢量的使用和多參考幀的運用。 H.264有16×1六、16×八、8×1六、8×八、8×四、4×8和4×4一共8種宏塊及子宏塊劃分,而AVS只有16×1六、16×八、8×16和8×8一共4種宏塊劃分方式。 H.264支持使用多個不一樣的參考幀對幀間宏塊和片進行預測,AVS中P幀能夠利用至多2幀的前向參考幀,B幀採用先後各一個參考幀。 4、熵編碼 H.264制定了基於信息量的熵編碼效率,一種是對全部的待編碼的符號採用統一的可變長編碼(UVLC),另外一種是採用基於內容的自適應二進制算術編碼(CABAC, Context-Adaptive Binary Arithmetic Coding),大大減小了塊編碼相關性冗餘,提升了編碼效率。UVLC計算複雜度較低,主要針對對編碼時間很嚴格的應用,缺點就是效率低,碼率較高。CABAC是一種效率很高的熵編碼方法,其編碼效率比UVLC編碼高50%。 AVS熵編碼採用自適應變長編碼技術。在AVS熵編碼過程當中,全部的語法元素和殘差數據都是以指數哥倫布碼的形式映射成二進制比特流。 採用指數哥倫布碼的優點在於:一方面,它的硬件複雜度比較低,能夠根據閉合公式解析碼子,無需查表;另外一方面,它能夠根據編碼元素的機率分佈靈活地肯定以K階指數哥倫布碼編碼,若是K選得恰當,則編碼效率能夠逼近信息熵。 對預測殘差的塊變換系數,經掃描造成(level、run)對串,level、run不是獨立事件,而存在着很強的相關性,在AVS中level、run採用二維聯合編碼,並根據當前level、run的不一樣機率分佈趨勢,自適應改變指數哥倫布碼的階數。 另外,在AVS中沒有SI、SP幀。能夠這樣說,AVS是在H.264的基礎上發展起來的,吸取了H.264的精華,但爲了繞過專利的困擾,又不得不放棄H.264的一些核心算法。換來的代價就是,編碼效率稍微下降一點的狀況下,複雜度極大得下降了。 AVS是我國自主知識產權的標準,如今尚未大規模使用,處在起步階段。大多數企業處於觀望狀態,沒有資金大量投入,面臨重重困難,可是它的廣闊前景是不容忽視的,又有國家的大力支持,必定會發展的更加完美。
相關文章
相關標籤/搜索