多媒體會議中的H.264編碼
南京郵電大學(xué) 馬國強(qiáng) 畢厚杰 2006/09/22
H.264是新一代視頻壓縮編碼標(biāo)準(zhǔn),由兩大國際標(biāo)準(zhǔn)化組織ITU-T和ISO/IEC聯(lián)合開發(fā)。H.264和以前的標(biāo)準(zhǔn)一樣,也是采用基于塊的混合編碼模式,但是它在以往標(biāo)準(zhǔn)的基礎(chǔ)上對編碼算法進(jìn)行了改進(jìn),使得H.264算法具有很高的編碼效率。在同等的圖像質(zhì)量條件下,H.264的數(shù)據(jù)壓縮性能比當(dāng)前DVD系統(tǒng)中使用的MPEG-2高2~3倍,比MPEG-4高1.5~2倍。正因為如此,經(jīng)過H.264壓縮的視頻數(shù)據(jù),在網(wǎng)絡(luò)傳輸過程中所需要的帶寬更少,也更加經(jīng)濟(jì),所以更適合視頻會議業(yè)務(wù)。
編碼器架構(gòu)與算法模塊
隨著壓縮性能的提高,H.264的計算復(fù)雜度變得極高,H.264編碼的計算復(fù)雜度大約相當(dāng)于H.263(H.264的同系列標(biāo)準(zhǔn))的3~5倍,解碼復(fù)雜度大約相當(dāng)于H.263的2倍。為此,一款設(shè)計優(yōu)良的H.264編碼器必須充分考慮編碼速度與率失真性能之間的平衡。一般而言,H.264編碼器架構(gòu)主要包括以下各種算法。
這是視頻壓縮編碼領(lǐng)域的核心技術(shù)之一。運動搜索技術(shù)的基本原理是搜索視頻序列中的相鄰圖像,找出運動信息和運動矢量,用表征物體運動的數(shù)據(jù)代替相應(yīng)圖像的原始信息,從而極大地消除時間冗余,達(dá)到數(shù)據(jù)壓縮的目的。
在視頻流中,每幀圖像的編碼方式既可以是I幀(幀內(nèi)預(yù)測幀),也可以是P幀(幀間預(yù)測幀)。I幀的編碼效率沒有P幀高,但I(xiàn)幀是視頻碼流中的重要組成單位,因為I幀提供重同步的能力。在傳輸中如果某幀發(fā)生丟包,則使用該幀預(yù)測的后續(xù)P幀將不能正確解碼,但由于I幀是自包含的,沒有引用任何以往的圖像,所以碼流在這里獲得重新同步,將錯誤限制在一定范圍內(nèi)。
在視頻編碼中會有許多編碼模式和參數(shù)的決策問題,率失真優(yōu)化算法對每個侯選的編碼模式或參數(shù)進(jìn)行評估,然后按照一定的法則挑選出最優(yōu)模式。
監(jiān)測信道狀況,對碼率的分配作出決策。這個算法模塊需要和率失真優(yōu)化結(jié)合起來,形成編碼器的決策層。
存儲器的邏輯和物理管理,并負(fù)責(zé)對參考幀隊列管理。在對P幀編碼時,需要參考以往已編碼或解碼的圖像,進(jìn)行運動搜索,所以在編碼和解碼的同時必須建立參考幀隊列,存儲參考幀數(shù)據(jù)。
對視頻序列壓縮的各種方法都圍繞三個方面:消除時間冗余、消除空間冗余、消除統(tǒng)計冗余。幀間和幀內(nèi)預(yù)測分別針對時間冗余和空間冗余,而消除統(tǒng)計冗余的方法就稱作熵編碼。
H.264編碼器的工作流程
編碼程序在設(shè)定編碼參數(shù)后,首先從輸入圖像序列中讀出一幀圖像數(shù)據(jù)作為當(dāng)前編碼圖像,并根據(jù)圖像特征分析編碼類型。每一幀圖像數(shù)據(jù)由若干個片數(shù)據(jù)組成,每一個片數(shù)據(jù)獨立編碼為一個NAL。當(dāng)寫好NAL的起始信息和片頭數(shù)據(jù)后,進(jìn)入圖像宏塊層編碼。
進(jìn)入宏塊數(shù)據(jù)編碼子程序后,首先根據(jù)宏塊所處的幀類型,進(jìn)入相應(yīng)的宏塊編碼模式選擇算法模塊。選擇宏塊的編碼模式后,根據(jù)編碼模式進(jìn)入相應(yīng)的宏塊編碼模塊。幀內(nèi)編碼的宏塊的預(yù)測值是來自在同一圖像中的相鄰宏塊的像素值;幀間編碼的宏塊的預(yù)測值是來自于運動矢量所指向的參考圖像中相應(yīng)區(qū)域的像素值。用圖像的原始值減去預(yù)測值得到殘差數(shù)據(jù),對殘差數(shù)據(jù)變換、量化、熵編碼,進(jìn)一步消除其冗余信息,得到視頻編碼后的碼流。
當(dāng)宏塊的編碼模式是幀內(nèi)亮度16×16或者幀內(nèi)色度8×8時,整數(shù)變換后的直流分量要提出來經(jīng)過第二次變換。編碼后的碼流進(jìn)行反變換,重建宏塊數(shù)據(jù),為后續(xù)宏塊預(yù)測做準(zhǔn)備。當(dāng)一幀圖像重建好之后,繼續(xù)對該重建圖像進(jìn)行塊濾波,消除量化造成圖像的塊效應(yīng),隨后將可用于后續(xù)圖像編碼參考的圖像數(shù)據(jù)存入?yún)⒖紙D像隊列,更新參考圖像隊列。
計算機(jī)世界網(wǎng)(www.ccw.com.cn)
相關(guān)鏈接: