版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第六章
圖像編碼標(biāo)準(zhǔn)的進(jìn)展中國礦業(yè)大學(xué)信電學(xué)院主要內(nèi)容
6.1視頻圖像編碼標(biāo)準(zhǔn)
6.2MPEG-1視頻編碼和解碼6.3基于對象的視頻編碼標(biāo)準(zhǔn)MPEG-4
6.4H.264視頻編碼標(biāo)準(zhǔn)6.1視頻圖像編碼標(biāo)準(zhǔn)視頻壓縮編碼標(biāo)準(zhǔn)的制定工作主要由ISO和ITU完成。
ITU(國際電信聯(lián)盟)制定:針對實時視頻通信應(yīng)用,如視頻會議和可視電話等
H.26x系列標(biāo)準(zhǔn),如H.261,H.263,H.264ISO(國際標(biāo)準(zhǔn)化組織)和IEC(國際電工委員會)制定:針對視頻數(shù)據(jù)的存儲(DVD等),廣播電視和視頻流的網(wǎng)絡(luò)傳輸?shù)?/p>
MPEG系列標(biāo)準(zhǔn),如MPEG1,MPEG2,MPEG4,MPEG7
視頻編碼標(biāo)準(zhǔn)體系結(jié)構(gòu)組成:系統(tǒng)層:規(guī)定視頻數(shù)據(jù)、聲音數(shù)據(jù)及其它相關(guān)數(shù)據(jù)等如何組織成一復(fù)合比特流;如何同步等。視頻層:規(guī)定電視數(shù)據(jù)的編碼和解碼。音頻層:規(guī)定聲音數(shù)據(jù)的編碼和解碼。應(yīng)用層:這個標(biāo)準(zhǔn)詳細(xì)說明如何測試比特數(shù)據(jù)流和解碼器是否滿足MPEG-1前3個部分中所規(guī)定的要求。這些測試可由廠商和用戶實施。軟件模擬:這部分內(nèi)容只是一個技術(shù)報告,給出用軟件執(zhí)行MPEG-1標(biāo)準(zhǔn)前3部分結(jié)果。
H.26X系列和MPEG系列標(biāo)準(zhǔn)的差異從標(biāo)準(zhǔn)體系結(jié)構(gòu)角度,H.26X系列側(cè)重于視頻層,將系統(tǒng)層、音頻層等問題放在其他標(biāo)準(zhǔn)中。而MPEG系列標(biāo)準(zhǔn)涵蓋整個多媒體系統(tǒng),更便于形成完整應(yīng)用體系。從整體編碼技術(shù)發(fā)展角度,H.26X系列側(cè)重于視頻圖像的高效編碼傳輸,而MPEG系列在確保音視頻信息高效壓縮同時,還注重應(yīng)用層面上各種功能的增加。6.1.1MPEG系列標(biāo)準(zhǔn)MPEG是活動圖像專家組(MovingPictureExpertGroup)的縮寫,1988年成立,任務(wù)是負(fù)責(zé)開發(fā)數(shù)字圖像和聲音的編碼、解碼和兩者同步等標(biāo)準(zhǔn)。目前已經(jīng)開發(fā)和正在開發(fā)的MPEG標(biāo)準(zhǔn)有:
MPEG-1:1.5Mbps,中等數(shù)據(jù)率;VCD和MP3MPEG-2:10Mbps,高數(shù)據(jù)率;數(shù)字電視和DVDMPEG-3:起初為HDTV設(shè)計,后來合到MPEG2。
MPEG-4:低于64kbps甚低數(shù)據(jù)率,交互式多媒體應(yīng)用標(biāo)準(zhǔn)
MPEG-7:多媒體內(nèi)容描述接口標(biāo)準(zhǔn)一、MPEG-1編碼標(biāo)準(zhǔn)MPEG-1是MPEG第一階段的成果,1993年公布,編號為ISO/IEC11172。它規(guī)定視頻信息與伴音信息經(jīng)壓縮之后的數(shù)據(jù)速率上限為1.5Mbps(其中視頻約1.2Mbps,音頻約0.3Mbps),從而可以在CD-ROM、硬盤、可寫光盤、數(shù)字音頻磁帶等介質(zhì)上進(jìn)行存儲,也可以在局域網(wǎng)、ISDN上進(jìn)行視頻與伴音信息的傳輸。
目前市場上用的MP3和VCD以及數(shù)字電話網(wǎng)絡(luò)上的視頻傳輸為MPEG-1。
應(yīng)用二、MPEG-2廣播系統(tǒng)壓縮編碼標(biāo)準(zhǔn)1994年11月公布,編號為ISO/IEC13818全稱為“運動圖像及其伴音的編碼”,主要針對高清晰度數(shù)字電視(HDTV)所需要的視頻及其伴音信號,傳輸速率為1.5~100Mbit/s,與MPEG-1兼容。應(yīng)用目前市場上用的高清晰度電視HDTV和DVD都采用MPEG-2標(biāo)準(zhǔn)。簡介
MPEG-2保證與MPEG-1視頻體系向下兼容,
但做了相應(yīng)擴(kuò)展:
能支持有效隔行掃描(先掃描每幀圖像奇數(shù)行,再掃描偶數(shù)行)格式。MPEG-2規(guī)定了4種圖像的運動預(yù)測和補(bǔ)償方式,即基于幀的預(yù)測模式、基于場的預(yù)測模式、168的運動補(bǔ)償以及雙場預(yù)測模式。以改進(jìn)對運動較快物體預(yù)測準(zhǔn)確性和提高壓縮比。
支持編碼的可分級性。即空間可分級性、時間可分級性以及信噪比SNR可分級性。
采用更高色度信號采樣。除4:2:0外,還支持4:2:2和4:4:4格式的圖像。圖像分辨率(列行)幀/秒三、MPEG-4基于對象的低碼率壓縮標(biāo)準(zhǔn)
MPEG-4標(biāo)準(zhǔn)定義:
MPEG-4標(biāo)準(zhǔn)為“甚低數(shù)據(jù)傳輸率,小于64Kbps的電視圖像和伴音編碼的國際標(biāo)準(zhǔn)”。為了適應(yīng)在窄帶寬(一般為小于64Kbps)通信線路上對動態(tài)圖像進(jìn)行傳輸。
1999年發(fā)布,編號為ISO/IEC14496,支持多種多媒體應(yīng)用,特別是多媒體信息基于內(nèi)容的訪問,可根據(jù)應(yīng)用的不同要求,現(xiàn)場配置編碼器。
MPEG-4標(biāo)準(zhǔn)顯著特點:
①MPEG-4標(biāo)準(zhǔn)既可用于4Mbit/s的高碼率的視頻壓縮編碼,又可用于5~64kbit/s的低碼率的視頻壓縮編碼;既可用于傳統(tǒng)的矩形幀圖像,又可用于任意形狀的視頻對象壓縮編碼。②MPEG-4采用基于對象的編碼。是對圖像中的內(nèi)容進(jìn)行編碼。即編碼對象為AV(音視頻)對象。
MPEG-4視頻信息的表示結(jié)構(gòu)MPEG-4編碼器是基于對象的視頻編碼器。視頻對象VO:指視頻序列中用戶可訪問/操作的個體視頻對象平面VOP:指視頻對象在某一時刻(即在某一幀畫面)中的描述場景中感興趣的物體對象或內(nèi)容的圖像區(qū)。VOP是MPEG-4視頻編碼器進(jìn)行編碼的基本單位。VOP具有形狀、運動和紋理等屬性。
MPEG-4視頻畫面的編碼該結(jié)構(gòu)把場景表示為具有實際意義的對象VOP的組合。畫面中的每個VOP分別編碼后再復(fù)合在一起,成為該畫面的壓縮比特流。視頻對象在某一時刻(在某一幀畫面)中的“象”稱為視頻對象平面VOP編碼過程中將VOP獨立進(jìn)行處理。每個VOP的形狀、運動及紋理信息在一個VOP層獨立編碼、存儲和傳輸。視頻對象的編碼結(jié)構(gòu)
MPEG-4應(yīng)用可能用于三個領(lǐng)域:①數(shù)字電視;②交互式圖形應(yīng)用;③交互式多媒體領(lǐng)域等等。最熱門應(yīng)用為利用MPEG-4的高壓縮率和高圖像還原質(zhì)量來把DVD里的MPEG-2視頻文件轉(zhuǎn)換為體積更小的視頻文件。
四、MPEG-7多媒體內(nèi)容描述接口MPEG7正式名稱叫做“多媒體內(nèi)容描述接口”,其目標(biāo)是支持各種類型多媒體信息的基于內(nèi)容的高效快速檢索,2000年發(fā)布。MPEG-7建立在MPEG-4基礎(chǔ)上,期望用很少特征就能對圖像內(nèi)容進(jìn)行檢索。例如對圖形,只要很少幾條線就可以找到包括該特征的相應(yīng)圖形、商標(biāo)等MPEG-7標(biāo)準(zhǔn)重點在于影音內(nèi)容的描述和定義,以明確的資料結(jié)構(gòu)和語法來定義影音資料內(nèi)容,通過MPEG7格式定義信息,使用戶可有效搜索、過濾和定義想要的影音資料。
MPEG-7將規(guī)范一組“描述子”,用于描述各種多媒體信息,也將對定義其他描述子以及結(jié)構(gòu)的方法進(jìn)行標(biāo)準(zhǔn)化。這些描述與其內(nèi)容關(guān)聯(lián),允許快速有效地搜索用戶感興趣的資料。
6.1.2H.26x系列標(biāo)準(zhǔn)一、H.261標(biāo)準(zhǔn)H.261標(biāo)準(zhǔn)是由ITU-T最早制定的關(guān)于視頻編碼的國際標(biāo)準(zhǔn)。H.261也稱為p64—“p64Kbit/s視聽業(yè)務(wù)的視頻編/解碼器”。其中p為一可變參數(shù),取值范圍為130,覆蓋了整個ISDN基群信道速率。H.261主要應(yīng)用目標(biāo)為可視電話和會議電視,提供QCIF和CIF兩種圖像格式。當(dāng)p=1或2時,支持QCIF格式每秒幀數(shù)較低可視電話。QCIF格式的色度信號分辨率為8872,亮度信號分辨率為176144。
當(dāng)p6時,可支持通用中間格式(CIF格式)每秒幀數(shù)較高的視頻會議。CIF格式色度信號分辨率為172144,亮度信號分辨率為352288。
H.261混合編碼(DPCM/DCT)方案:H.261核心技術(shù)是混合編碼算法—運動補(bǔ)償幀間預(yù)測編碼、基于DCT的變換編碼、統(tǒng)計編碼(可變長熵編碼)H.261建議的混合編碼器結(jié)構(gòu)該編碼器根據(jù)需要可工作在不同模式:
幀間編碼模式(幀間前向預(yù)測編碼模式)在幀間模式時,雙向選擇開關(guān)都打到下邊。輸入信號與存儲在幀存中的經(jīng)過運動補(bǔ)償?shù)那耙粠盘枺串?dāng)前輸入信號的預(yù)測值)進(jìn)行相減,差值(即預(yù)測誤差)經(jīng)DCT,量化并進(jìn)行可變字長VLC編碼后輸出。
從圖中可看到,在反饋環(huán)中有一個解碼器即量化后的預(yù)測誤差經(jīng)反量化和反DCT后,然后再加上經(jīng)運動補(bǔ)償?shù)那耙粠串?dāng)前輸入信號的預(yù)測值),作為輸入的下一幀信號的預(yù)測值。
幀內(nèi)編碼模式在幀內(nèi)模式時,雙向選擇開關(guān)都打到上邊。輸入信號直接跳過減法器,經(jīng)DCT量化和可變字長編碼VLC輸出,這時運動檢測和運動補(bǔ)償不再起作用,只作幀內(nèi)處理。
H.261視頻數(shù)據(jù)比特流:H.261把視頻數(shù)據(jù)比特流分成4層:圖像層(Picture)、宏塊組層(GOB)、宏塊層(MB)和子塊層(Block)。H.261的輸入圖像信源格式規(guī)定為通用中間格式CIF。按4:1:1的比例進(jìn)行抽樣。CIF格式下的圖像的層次結(jié)構(gòu):每幀圖像包含12個GOB每個GOB包含33個MB每個MB包含4個亮度數(shù)據(jù)塊和各1個Cr和Cb每個B包含88像素其中每個B包含88像素,由變換系數(shù)和塊結(jié)束符組成。GOB和MB都是以一定順序存放的。圖像復(fù)用編碼器把上述層次數(shù)據(jù)按一定方式連列起來,就構(gòu)成1幀數(shù)據(jù)流。編碼圖如下:
H.261解碼器框圖:二、H.263標(biāo)準(zhǔn)H.263建議即“甚低碼率的視頻編碼”建議草案。甚低碼率指小于64Kbps。H.263建議仍采用H.261建議的混合編碼器。H.263基本編碼方法與H.261相同,但增加了一些功能,有:①半個像素精度的運動估計;②不受限的運動矢量;③先進(jìn)預(yù)測模式;
④PB-幀模式。⑤基于語法的算術(shù)編碼。半個像素精度的運動估計半像素位移點像素值由雙線性內(nèi)插求得,解碼器具有運動補(bǔ)償能力,可與編碼器所采用的可選功能相互配合,以提高預(yù)測精度,降低編碼速率。運動矢量預(yù)測范圍是-16~+15.5運動矢量不受限在默認(rèn)狀態(tài)下,運動矢量對應(yīng)參考塊必須定義在參考幀內(nèi)。在H.263標(biāo)準(zhǔn)中,允許運動矢量指向圖像外,邊界像素用于對不存在的像素進(jìn)行預(yù)測。有利于改進(jìn)圖像分辨率較低情況下的運動補(bǔ)償性能。采用高級預(yù)測模式通常劃分子塊大小為1616.
在某些宏塊中編碼器可用4個88子塊的運動矢量來進(jìn)行運動補(bǔ)償.由于重疊塊的運動補(bǔ)償可減少方塊效應(yīng),較大改善圖像質(zhì)量??蛇x擇PB幀模式H.263把兩幀待編碼圖像作為一個整體聯(lián)合編碼,即一個宏塊MB由6個P塊和6個B塊共12個像素塊組成,可在不過多增加碼率前提下顯著提高解碼圖像幀率。I幀:幀內(nèi)編碼幀P幀:前向預(yù)測編碼幀B幀:雙向預(yù)測內(nèi)插編碼幀三、H.264標(biāo)準(zhǔn)JVT(JointVideoTeam)
是由國際標(biāo)準(zhǔn)化組
織運動圖像專家組(ISO
MPEG)和國際電信聯(lián)
盟視頻編碼專家組
(ITU-TVCEG)成立的
聯(lián)合視頻工作組,致力于
開發(fā)面向未來IP和無線環(huán)境下的視頻壓縮標(biāo)準(zhǔn)。在ISO/IEC中的正式名稱為:MPEG-4Part10AVC在ITU-T中的名稱為:H.264/AVC
(advancedvideocoding)
H.264主要內(nèi)容早期的88子塊的DCT變換轉(zhuǎn)成44的整數(shù)變換與量化基于空域的幀內(nèi)預(yù)測。H.263或MPEG4采用基于變換域的幀內(nèi)預(yù)測。?像素的運動估計。以往采用整像素或半像素運動估計,靈活選擇運動補(bǔ)償塊大小,共支持1616、168、816、88、84、48、44等7種大小的塊。多參考幀預(yù)測方法。H.264支持前向或后向預(yù)測。熵編碼采用自適應(yīng)變長編碼或自適應(yīng)算術(shù)編碼。采用自適應(yīng)環(huán)內(nèi)消塊效應(yīng)濾波器。各種編碼標(biāo)準(zhǔn)的主要技術(shù)和應(yīng)用目標(biāo)編碼標(biāo)準(zhǔn)制定組織目標(biāo)碼率主要壓縮技術(shù)主要應(yīng)用目標(biāo)JPEGISO/IEC2~30倍DCT主觀量化Zig-Zag掃描熵編碼Internet圖像服務(wù)數(shù)字照相圖像和視頻編輯JPEG2000ISO/IEC2~50倍小波變換EBCOTROI編碼空間可分級碼流質(zhì)量可分級碼流改進(jìn)算術(shù)編碼容錯編碼Internet圖像服務(wù)數(shù)字照相圖像和視頻編輯打印醫(yī)學(xué)圖像移動應(yīng)用彩色傳真衛(wèi)星圖像傳輸編碼標(biāo)準(zhǔn)制定組織目標(biāo)碼率主要壓縮技術(shù)主要應(yīng)用目標(biāo)MPEG-1ISO/IEC1.5MbpsDCT主觀量化Zig-Zag掃描熵編碼運動補(bǔ)償預(yù)測雙向運動補(bǔ)償半像素運動估計CD-ROM視盤消費視頻視頻記錄MPEG-2ISO/IEC1.5Mbps~100MbpsMPEG-1所有技術(shù)基于幀/場運動補(bǔ)償空間可分級碼流時間可分級碼流質(zhì)量可分級碼流容錯編碼數(shù)字TV、HDTV高質(zhì)量視頻傳輸、存儲衛(wèi)星TV、CATVDVB/DVD視頻編輯編碼標(biāo)準(zhǔn)制定組織目標(biāo)碼率主要壓縮技術(shù)主要應(yīng)用目標(biāo)MPEG-4ISO/IEC8kbps~35MbpsMPEG-2所有技術(shù)Wavelet零樹掃描高級運動補(bǔ)償重疊運動補(bǔ)償視相關(guān)可擴(kuò)展編碼位圖形狀編碼Sprite編碼臉部動畫動態(tài)網(wǎng)格編碼Internet交互視頻可視編輯內(nèi)容管理消費視頻專業(yè)級視頻2D/3D計算機(jī)圖形移動通信編碼標(biāo)準(zhǔn)制定組織目標(biāo)碼率主要壓縮技術(shù)主要應(yīng)用目標(biāo)H.261ITU-TP×64kbpsP:1~30DCT自適應(yīng)量化Zig-Zag掃描熵編碼運動補(bǔ)償預(yù)測整像素運動估計差錯控制編碼ISDN視頻會議H.263ITU-T8kbps~1.5MbpsH.261全部技術(shù)雙向運動補(bǔ)償半像素運動估計高級運動補(bǔ)償重疊運動補(bǔ)償可選算術(shù)編碼無限制運動預(yù)測可視電話桌面可視電話桌面可視會議移動可視電話網(wǎng)絡(luò)視頻6.2MPEG1視頻壓縮標(biāo)準(zhǔn)基本概念畫面類型編解碼過程編碼細(xì)節(jié)視頻語法系統(tǒng)層簡介
MPEG-1標(biāo)準(zhǔn)組成:
MPEG-1系統(tǒng):規(guī)定視頻數(shù)據(jù)、聲音數(shù)據(jù)及其它相關(guān)數(shù)據(jù)等如何組織成一復(fù)合比特流;如何同步等。
MPEG-1視頻:規(guī)定電視數(shù)據(jù)的編碼和解碼。
MPEG-1聲音:規(guī)定聲音數(shù)據(jù)的編碼和解碼。
MPEG-1一致性:這個標(biāo)準(zhǔn)詳細(xì)說明如何測試比特數(shù)據(jù)流和解碼器是否滿足MPEG-1前3個部分中所規(guī)定的要求。這些測試可由廠商和用戶實施。
MPEG-1軟件模擬:這部分內(nèi)容只是一個技術(shù)報告,給出用軟件執(zhí)行MPEG-1標(biāo)準(zhǔn)前3部分結(jié)果。輸入圖像格式與圖像類型一部電影被視為一個視頻序列,由許多幅圖像組成。每幅圖像包括3個分量:一個亮度分量Y和兩個色度分量Cb和Cr。亮度分量包括黑白圖像,色度分量包括色調(diào)和飽和度每個分量為一矩形采樣數(shù)組,數(shù)組每行稱為光柵行每個像素為3個分量采樣的集合?!昂陦K”概念:在選擇一種壓縮模式時,宏塊(MB)是最小數(shù)據(jù)單位。在MPEG中,宏塊(MB)由4個88的亮度(Y)像素塊(即16像素16行)和兩個在空間位置上與之相應(yīng)的88色度(Cr和Cb)像素塊組成。亮度像素X和色度像素定位MPEG主要采用離散DCT變換將6個B塊變換成不相關(guān)值,然后對其結(jié)果進(jìn)行量化編碼。MPEG處理圖像為以“條帶”(slice)形式組織起來,每一條帶由一組(按光柵掃描順序)的宏塊組成(至少含有一個宏塊)。輸入圖像的格式:MPEG-1輸入視頻信號采用源輸入格式(SIF,SourceInputFormat)。采用(Y,Cr,Cb)顏色空間—對應(yīng)為數(shù)字化的一個亮度信號Y和兩個色差信號(Cr,Cb),且要求亮度信號和色差信號在垂直和水平方向按2:1進(jìn)行抽樣。抽樣點的水平位置在兩個亮度像素之間。采樣格式為4:2:0MPEG-1最大的圖像尺寸只能是352288(對應(yīng)于25Hz幀頻)畫面類型:幀內(nèi)編碼幀(Intra-pictures,I幀)前向預(yù)測編碼幀(Predictedpictures,P幀)雙向預(yù)測編碼幀(Bidirectionallypredicted
pictures,B幀)DC編碼幀(DC-codedpictures,D幀)I幀應(yīng)用幀內(nèi)編碼的方法實現(xiàn)壓縮,編碼時沒有參考視頻序列中的其他幀而獨立進(jìn)行壓縮編碼。支持隨機(jī)存取,但壓縮比低,編碼方式和JPEG編碼方式十分相似。一般把每個GOP第一幀圖像為I幀。I幀只能利用其相關(guān)性作幀內(nèi)編碼。將I幀進(jìn)行DCT變換、量化和Huffman編碼后必須傳送。畫面類型:畫面類型:P幀P幀是運動主體在與I幀相隔一定時間,在同一背景上已有明顯變化的畫面。P幀以前面I幀作為參考,與I幀相同信息不發(fā)送,只傳送主體變化差值,這樣省略大部分細(xì)節(jié)信息。P幀采用具有運動補(bǔ)償?shù)那跋蝾A(yù)測,即用過去最近的前一個內(nèi)幀I或前一個預(yù)測幀P進(jìn)行預(yù)測編碼,對預(yù)測誤差有條件傳送。畫面類型:B幀B幀用來傳送在I幀、P幀間的畫面,它只反映I幀、P幀間的運動主體變化情況。B幀在重放時既可參考I幀內(nèi)容,也參考P幀內(nèi)容,稱為雙向預(yù)測幀。B幀在預(yù)測時,可使用前一個或后一個幀作參考幀,也可使用前、后兩個圖像作參考幀。但B幀本身不作參考幀使用,可采用幀內(nèi)編碼或前向預(yù)測或后向預(yù)測,或雙向預(yù)測編碼方法來編碼。B幀不被用于其他B幀或P幀的運動補(bǔ)償預(yù)測。畫面類型:D幀類似于I幀。
D幀僅使用畫面中每個子塊的DC(直流)系數(shù)進(jìn)行編碼,全部是幀內(nèi)編碼,用作正/反向快速搜索。D幀單獨進(jìn)行編碼與存儲(僅MPEG-1使用)。不能用于對其他幀的預(yù)測中,定義它的目的是提供一種快速搜索的方法,一般不常見。下圖為一個8畫面的視頻序列中,三種主要類型幀的關(guān)系。Ip1Bp2Bp3Pp4Bp5Bp6Pp7Ip8p1和p8為I幀,p4和p7為P幀,剩下的為B幀。p4利用p1進(jìn)行運動補(bǔ)償預(yù)測編碼,p7利用p4進(jìn)行運動補(bǔ)償預(yù)測編碼。p2利用p1進(jìn)行前向運動補(bǔ)償預(yù)測編碼;p3利用p1和p4進(jìn)行雙向運動補(bǔ)償預(yù)測編碼;p5利用p4進(jìn)行前向運動補(bǔ)償預(yù)測編碼;p6利用p4和p7進(jìn)行雙向運動補(bǔ)償預(yù)測編碼。MPEG中對于P幀和B幀的使用沒有任何要求采用B幀可以獲得最高的壓縮比。但單純增加I幀和P幀之間的B幀并不能獲得更好的壓縮比,因為B幀與相應(yīng)的I幀和P幀的時間距離增大,時間相關(guān)性降低,降低了運動補(bǔ)償預(yù)測的性能。編碼過程MPEG標(biāo)準(zhǔn)并沒有定義特定的編碼過程,只是定義了編碼比特流的語法和解碼過程?;谝陨弦螅梢酝ㄟ^下圖來表示一個MPEG編碼器的功能。MPEG-1編碼過程圖預(yù)處理幀存+DCTQQ-1IDCT+調(diào)整器幀存運動補(bǔ)償運動估計VLC緩存器輸入輸出-編碼過程關(guān)鍵技術(shù):幀序重排:在編碼器端需要對輸入圖像重新排序,對按顯示順序輸入的圖像序列,經(jīng)過幀序重排后成為按編碼順序排列。然后按I、P和B幀分別進(jìn)行編碼。
運動估計和補(bǔ)償
比特流緩沖器
其他部分圖像壓縮首先需要處理I幀圖像,然后是對應(yīng)的前向預(yù)測圖像P,在兩者的基礎(chǔ)上才處理B圖像。MPEG編碼器算法允許選擇I圖像的頻率和位置。I圖像的頻率是指每秒鐘出現(xiàn)I圖像的次數(shù),位置是指時間方向上幀所在的位置。
一個典型的I、P、B圖像安排如圖所示。編碼參數(shù)為:幀內(nèi)圖像I的距離為N=15,預(yù)測圖像P的距離為M=3。宏塊的編碼:幀內(nèi)圖像I的壓縮編碼算法幀內(nèi)圖像I壓縮編碼采用類似JPEG壓縮算法。它采用了三種技術(shù):活動圖像補(bǔ)償算法、DCT變換編碼和熵編碼。幀內(nèi)圖像I的壓縮編碼1將圖像進(jìn)行顏色空間變換。如將RGB空間轉(zhuǎn)換為YCrCb空間表示的圖像。2將圖像劃分成宏塊,每個宏塊包含16×16個像素點,每個宏塊根據(jù)圖像子采樣進(jìn)一步劃分成8×8的圖塊。如采用4:1:1的圖像子采樣,則一個宏塊包括4個Y塊,1個Cr塊和1個Cb塊。3對每個圖塊進(jìn)行離散余弦變換(DCT)。DCT變換后經(jīng)過量化的交流系數(shù)按照Z字形排序,然后再使用無損壓縮技術(shù)進(jìn)行編碼。DCT變換后經(jīng)過量化的直流系數(shù)用差分脈沖編碼(DPCM),交流分量系數(shù)用行程長度編碼(RLE),形成中間編碼格式。4最后用哈夫曼(Huffman)編碼或者用算術(shù)編碼。預(yù)測圖像P的壓縮編碼算法編碼圖像宏塊MPI是參考圖像宏塊MRJ的最佳匹配塊,對它們的差值進(jìn)行彩色空間轉(zhuǎn)換,并作4:1:1的子采樣得到Y(jié),Cr和Cb分量值,然后仿照J(rèn)PEG壓縮算法對差值進(jìn)行編碼,計算出的移動矢量也要進(jìn)行霍夫曼編碼雙向預(yù)測圖像B的壓縮編碼算法雙向預(yù)測圖像B的壓縮編碼算法與預(yù)測圖像P的算法類似。過去的參考圖像和將來的參考圖像是為了進(jìn)行雙向的運動補(bǔ)償預(yù)測。解碼過程:預(yù)測畫面+差分畫面=重建畫面輸入速率固定,但畫面數(shù)據(jù)量很大,必須要設(shè)緩沖分路器負(fù)責(zé)語法、語義檢查,對宏塊解碼,解出運動矢量、量化步長等IDCT輸出的是I畫面及P畫面和B畫面的差分畫面保存I畫面及P畫面,生成預(yù)測畫面(P,B)畫面重排序后輸出送顯示器(幀速固定)
DCT系數(shù)的編碼細(xì)節(jié)編碼的過程:I幀:DCT變換→量化→編碼PB幀:預(yù)測→求幀差→DCT變換→量化→編碼DCT變換:幀內(nèi)編碼模式下,采樣為8位無符號數(shù)。幀間編碼模式下,采樣為9位有符號數(shù),因為差值有可能為負(fù)值。經(jīng)過DCT變換后,用一個12位的有符號整數(shù)表示量化:
MPEG規(guī)定了默認(rèn)的量化表,也可以應(yīng)用自定義
的量化表
幀內(nèi)編碼取整通常是取最近的整數(shù);
幀間編碼是截斷非整數(shù)到接近的小于其值的整數(shù)量化不是簡單的DCT系數(shù)除以一個量化系數(shù),還牽涉一個稱為量化階(quantizer_scale)的比例因子量化階(quantizer_scale)
:MPEG參數(shù),整
數(shù),范圍1~31,影響量化結(jié)果和壓縮性能,
編碼器隨時可以改變該值,在壓縮碼流中必須
插入一個特殊碼字來表示它量化:
幀內(nèi)量化公式:
幀間量化公式:816192226272934161622242729343719222627293434382222262729343740222627293235404826272932354048582627293438465669272935384656698316161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616161616默認(rèn)的內(nèi)部量化矩陣默認(rèn)的非內(nèi)部量化矩陣量化系數(shù)編碼
I幀宏塊的DC系數(shù)計算差值(P:前一塊的同一類型的DC系數(shù))查表5.5確定差值量值等級,發(fā)出它的碼字若ΔDC為負(fù)值,將它的補(bǔ)碼減去1(反碼)發(fā)出表示差值最低有效位的二進(jìn)制數(shù),其位數(shù)等于量值等級差值量值等級就是對差值ΔDC的符號和幅度值編碼所需要的位數(shù),每個量值等級都賦予一個碼字例:
亮度差值ΔDC=5,色度差值ΔDC=-35可用3位表示,量值等級為3,發(fā)送碼字101發(fā)出表示幅值5的最少的3位二進(jìn)制碼1013可用2位表示,量值等級為2,發(fā)送碼字11-3的正碼10,反碼為00,發(fā)出00表5.5(亮度和色度)DC系數(shù)的碼字Y碼C碼量值等級幅值范圍100000000011-1,101102-3,-2,2,31011103-7,...,-4,4,...,711011104-15,...,-8,8,...,15...............1111110111111108-255,...,-128,128,...,255量化系數(shù)編碼
I幀宏塊的AC系數(shù)
Z形掃描成若干00…X編碼單元,表示為“游程-等級”形式:0的游程,等級為X的絕對大小查表5.6或5.7得游程-等級碼字;并在其后附加非零X的符號位(1:負(fù)數(shù);0:正數(shù))表中沒有列出的游程等級組合編碼:ESC碼+6位表示游程長度的碼+8位(或16位)表示等級值的碼塊尾“EOB”碼例:8×8的量化系數(shù)矩陣如下:127020000000000000-100000001000000000000000000000000000000000000000Z形掃描:00-1020001EOB3個游程等級碼:(2,-1),(1,2),(3,1),EOB查表:01011000110000111010表5.6變長的游程-等級碼字游程/等級碼字碼長0/1(first)1s20/1(next)11s30/20100s51/2000110s72/10101s53/100111s6量化系數(shù)編碼
PB幀宏塊量化系數(shù)編碼尋找全零宏塊的游程,采樣宏塊地址增量來編碼對于非全零的宏塊,定義編碼塊模式(CBP),6位二進(jìn)制變量,每一位對應(yīng)宏塊6個分量塊中某塊是否全零,全零塊通過CBP中相應(yīng)的一位來辨識,非零塊采用表5.6中的碼字來編碼。非零塊的編碼碼字:第一個非零系數(shù)的游程等級碼為(0,1)時編碼為1s,不會與EOB碼字沖突,因為EOB不可能是這種塊的第一個碼字;其他游程等級碼為(0,1)時,非零系數(shù)用11s(next,表5.6)編碼視頻語法:MPEG-1的視頻語法主要是用于確定和控制視頻序列壓縮的一些參數(shù)。MPEG比特流遵守一種層次的數(shù)據(jù)結(jié)構(gòu),這層次結(jié)構(gòu)由下列6層組成:(1)圖像序列層,即活動圖像序列。由若干圖像組
組成序列。
(2)圖像組GOP,由任意部分圖像序列來組成圖像
組。(3)圖像層,指圖像組GOP中任一幀圖像。
(4)條帶層,由一幀圖像中的幾個宏塊組成,主要用于誤差恢復(fù)。
(5)宏塊層,一個宏塊由
四個88的亮度(Y)塊
和兩個88的色差
(Cr,Cb)塊組成。
(6)塊層,一個88的
像素區(qū)域稱為一個塊。
塊是最小的DCT單位。視頻流的各層系統(tǒng)層簡介:
系統(tǒng)層功能⑴將多個基本流(視頻流、音頻流、數(shù)據(jù)流)復(fù)合成單一的串行比特流。⑵保證基本流之間的同步。⑶保證信源與信宿之間的同步。⑷可隨機(jī)存取,便于加工。⑸速率可控。
系統(tǒng)層解決的問題⑴A/V同步(Audio/Video)同步。編碼時以STC為基準(zhǔn),為每一幀畫面、每一幀聲音均附加一個PTS值,解碼時即按此指定時間播放,從而達(dá)到A/V同步的目的。⑵編碼器/解碼器同步。解碼器的本地STC值,受控于音頻FTS值,不斷進(jìn)行更新與校正。⑶復(fù)合流速率控制。解碼器通過把SCR值與本地STC值比較,發(fā)出反饋信號,可能的話,控制輸入流速度。MPEG復(fù)合比特流示意圖
系統(tǒng)層編碼器系統(tǒng)層編碼器中系統(tǒng)時鐘STC是頻率為90Hz的計時器,PTS和SCR是系統(tǒng)的絕對時間。下圖為MPEG-1系統(tǒng)層編碼器框圖6.3基于對象的視頻編碼標(biāo)準(zhǔn)MPEG-4*第一代視頻編碼技術(shù):基于幀、塊和像素的編碼把視頻序列按時間先后分成一系列的幀,每一幀圖像分成宏塊進(jìn)行運動補(bǔ)償和編碼。如MPEG-1,MPEG-2,H.261,H.263第二代視頻編碼技術(shù):基于非像素的編碼,即基于區(qū)域或基于對象的編碼區(qū)域為一幅圖像中具有相同特性的多個片段;對象為一幅圖像中表征有含義的實體的一組區(qū)域。如MPEG-4
MPEG-4的背景
技術(shù)發(fā)展的趨勢與應(yīng)用要求的提高:
音視頻內(nèi)容越來越多,且很多是計算機(jī)生成(合成)的;視頻信息的傳送將擴(kuò)展到所有網(wǎng)絡(luò),無線通信不僅用于語音,而且將應(yīng)用于數(shù)據(jù)和視頻;對音視頻信息交互處理和應(yīng)用的要求不斷增長(Highinteractivity)
電信、計算機(jī)、影視廣播領(lǐng)域正逐步融合,相互滲透。例如:單向AV終端向交互式AV服務(wù)發(fā)展,固定寬帶和移動窄帶環(huán)境的結(jié)合,頻道傳輸與存儲媒體傳輸?shù)娜我饨M合(interoperation)
MPEG-4的背景
MPEG-1和MPEG-2的不足:
基于像素和像素塊進(jìn)行編碼,不能對圖像的內(nèi)容進(jìn)行查詢、編輯和選擇播放等操作,交互性較差;
無法在同一場景中集成自然媒體與人造(合成)媒體;不支持超鏈(hyperlinking)
不提供對低碼率應(yīng)用的支持,將圖像分成固定大小的塊,在高壓縮比的情況下會產(chǎn)生嚴(yán)重的塊效應(yīng);MPEG-4的編碼機(jī)制是基于1616像素塊來設(shè)計的。6.3.1AV對象MPEG-4標(biāo)準(zhǔn)中定義的中心概念是AV對象。MPEG-4標(biāo)準(zhǔn)的基本內(nèi)容:圍繞者AV對象的編碼、存儲、傳輸和組合而制定的,高效率地編碼、組織、存儲和傳輸AV對象。MPEG-4標(biāo)準(zhǔn)試圖達(dá)到兩個目標(biāo):低比特率下的多媒體通信和多媒體通信的綜合。
MPEG-4對AV對象的操作主要有:⑴用AV對象來表示聽覺、視覺或者視聽組合內(nèi)容。⑵允許組合已有的AV對象來生成復(fù)合的AV對象,并由此生成AV場景。MPEG-4采用SNHC(合成—自然混合編碼,Synthetic—NaturalHybridCoding)的方法來組織這些AV對象。⑶允許對AV對象的數(shù)據(jù)靈活地多路合成與同步,以便選擇合適的網(wǎng)絡(luò)來傳輸這些AV對象數(shù)據(jù)。⑷允許接收端的用戶在AV場景中對AV對象進(jìn)行交互。⑸MPEG-4支持AV對象知識產(chǎn)權(quán)與保護(hù)。6.3.2MPEG-4標(biāo)準(zhǔn)構(gòu)成1.DMIF,多媒體傳送整體框架使得在不同傳送技術(shù)和不同傳送媒體上都可以存取、播放、同步不同媒體的不同內(nèi)容,提供一個能滿足各種網(wǎng)絡(luò)應(yīng)用的公共接口,力爭既滿足現(xiàn)代網(wǎng)絡(luò)的要求,又能適應(yīng)未來網(wǎng)絡(luò)的要求。主要解決交互網(wǎng)絡(luò)中、廣播環(huán)境下以及磁盤應(yīng)用中多媒體應(yīng)用的操作問題。通過DMIF,MPEG-4可以建立起具有特殊品質(zhì)服務(wù)的信道和面向每個基本流的帶寬。2.音頻編碼MPEG-4支持自然聲音(如語音和聲樂)和合成聲音(如MIDI)的編碼。MPEG-4的音頻部分將音頻的合成編碼和自然聲音的編碼相結(jié)合,并支持音頻的對象特征。支持2kbit/s~64kbit/s的自然聲音編碼。合成聲音編碼。引入兩個編碼技術(shù):文本到語音(Text-to-Speech)的編碼和樂譜驅(qū)動合成編碼技術(shù)。是一種基于知識庫的參數(shù)編碼。3.視頻編碼MPEG-4支持自然視覺對象編碼和合成視覺對象編碼。合成的視覺對象包括2D、3D動畫和人面部表情動畫等。自然視覺對象編碼對于靜止圖像,采用零樹小波算法提供高壓縮比,同時提供多達(dá)11級的空間分辨率和質(zhì)量的可伸縮性。對于運動視頻對象編碼,采用形狀編碼來支持對象編碼,視頻編碼方框圖如下:MPEG-4視頻編碼方框圖4.數(shù)據(jù)平面MPEG-4中的數(shù)據(jù)平面分為兩部分:傳輸關(guān)系部分和媒體關(guān)系部分。為了使基本流和AV對象在同一場景中出現(xiàn),MPEG-4引用了對象描述(OD)和流圖桌面(SMT)概念。OD傳輸?shù)氖桥c特殊AV對象相關(guān)的基本流的信息流圖。桌面把每一個流與一個CAT(ChannelAssociationTag)相連,CAT可實現(xiàn)該流的順利傳輸。5.緩沖區(qū)管理和實時識別MPEG-4定義了一個系統(tǒng)解碼模式SDM,描述了一種理想的處理比特流。6.場景描述場景描述主要用于描述各AV對象在一具體AV場景坐標(biāo)下如何組織與同步等問題,同時還有AV對象與AV場景的知識產(chǎn)權(quán)保護(hù)等問題。場景描述以二進(jìn)制格式BIFS表示,與AV對象一起傳輸、編碼。6.3.3MPEG-4的結(jié)構(gòu)和語法MPEG-4的視頻碼流提供了對視頻場景的分層描述。分層的每一級都可以通過碼流中被稱為初始碼的特殊碼值進(jìn)行訪問。⒈視頻對象序列(VS,VideoObjectSequence)完整的MPEG-4場景可以包括任何二維(2D)或三維(3D),自然合成對象以及它們的增強(qiáng)層。⒉視頻對象(VO,VideoObject)一個視頻對象對應(yīng)著場景中的一個特定對象,可以是任意形狀的對象,也可以是一個矩形幀。用來描述場景的分層級為:⒊視頻對象層(VOL,VideoObjectLayer)根據(jù)應(yīng)用具體要求,每一個視頻對象都可以用分級(用空間或時間分級)或不分級的方式進(jìn)行編碼,用視頻對象層來表征。VOL包括基本層和增強(qiáng)層?;緦又挥幸粋€,增強(qiáng)層可以有多個,每一層表示一種分辨率。分辨率可以從粗糙到精細(xì)。⒋視頻對象平面組(GOV,GroupofVideoObjectPlanes)GOV可以提供對碼流的隨機(jī)訪問點,GOV是任選的。⒌視頻對象平面(VOP,VideoObjectPlane)一個VOP是對一個視頻對象的時間采樣,包括視頻對象的運動參數(shù),形狀信息和紋理數(shù)據(jù),對VOP編碼就是針對某一時刻該幀畫面VO的形狀、運動、紋理等信息進(jìn)行編碼。一個普通的視頻幀可以用矩形的VOP來表征。MPEG-4的視頻碼流邏輯結(jié)構(gòu)圖6.3.4形狀編碼MPEG4允許對圖象序列中具有任意形狀的視頻對象進(jìn)行編碼。在MPEG4標(biāo)準(zhǔn)中,VO的形狀信息有兩類:二值形狀信息和灰度形狀信息。⒈灰度形狀信息灰度形狀信息主要是給出像素的透明度。每一個像素在0~255之間取值。0表示完全透明的像素,255表示完全不透明的像素。采用基于塊的運動補(bǔ)償DCT方法,為有損編碼。⒉二值形狀信息二值形狀信息用0,1表示VOP形狀。0表示該像素在VOP區(qū)域外,1表示在VOP區(qū)域之內(nèi)。對二值形狀信息進(jìn)行編碼時可以采用基于塊的運動補(bǔ)償技術(shù),可以是無損編碼,可以是有損編碼.6.3.5運動信息編碼MPEG4采用運動估計和補(bǔ)償技術(shù)來去除幀間的時間冗余度。采用的是VOP結(jié)構(gòu)。VOP有三種編碼模式:
運動估計:前提:只有對P-VOP和B-VOP編碼需運動估計。場景被分成固定位置和尺寸的塊,估計時假定塊內(nèi)各部分的運動程度一致。僅僅對VOP邊框中的宏塊進(jìn)行運動估計。方法:如果一個宏塊完全位于一個VOP內(nèi),采用基于1616像素宏塊或88像素塊運動估計,只有一個運動矢量,以半像素精度進(jìn)行計算。如果一個宏塊只有一部分位于VOP內(nèi),采用修正塊匹配技術(shù)估計運動矢量,匹配誤差僅僅計算該宏塊屬于VOP的那些像素的絕對誤差之和。當(dāng)參考塊位于VOP邊界上時,采用重復(fù)填補(bǔ)技術(shù)給位于VOP外的那些像素指定值,然后利用填補(bǔ)后的像素值計算絕對誤差和。6.3.6紋理編碼紋理:由許多相互接近、互相編織的元素構(gòu)成的,并且具有一定程度的規(guī)律性或周期性。VOP的紋理信息包含在視頻信號的亮度分量Y和兩個色度分量U、V中。紋理編碼主要目的:壓縮數(shù)據(jù)量VOP紋理編碼的對象可以是幀內(nèi)編碼模式的I-VOP,也可以是幀間編碼模式B-VOP或P-VOP運動補(bǔ)償后的預(yù)測誤差。紋理編碼流程編碼方法基本上仍采用基于8×8像素塊的DCT方法在幀內(nèi)編碼模式中,位于VOP內(nèi)的像素塊,采用經(jīng)典DCT方法;位于VOP之外的像素塊則不進(jìn)行編碼;對于部分在VOP內(nèi),部分在VOP外的像素塊則采用圖像填充技術(shù)獲取VOP之外的像素值,之后再進(jìn)行DCT編碼。外接矩形框邊界宏塊VOP內(nèi)部宏塊外部宏塊外推(完整子塊)矩形框在幀間編碼模式中,將屬于在VOP最小矩形框內(nèi)但又不屬于VOP的像素填充對VOP最小矩形框劃分宏塊,檢測宏塊是否有運動無運動,為靜止宏塊,不用編碼,只需傳送一個標(biāo)志位運動過大,采用幀內(nèi)方式編碼有運動,進(jìn)行運動估計,然后進(jìn)行幀間編碼求殘差、DCT、量化、對殘差及運動矢量編碼VOP紋理編碼過程圖VOP紋理DTC量化系數(shù)預(yù)測系數(shù)掃描可變長編碼碼流⒈邊界宏塊邊界宏塊指橫跨VOP邊界,包含任意形狀紋理數(shù)據(jù)的宏塊。需要采用填補(bǔ)技術(shù)將這些形狀擴(kuò)展為矩形宏塊,亮度分量以1616像素塊為單位進(jìn)行,色度分量以88像素塊為單位進(jìn)行。
低通外推填補(bǔ)技術(shù)①計算VOP內(nèi)各個塊所含像素均值,作為填補(bǔ)值.N表示VOP內(nèi)各個宏塊所含像素數(shù).②填補(bǔ)后,利用下列“十”字平均運算對上步的填充值進(jìn)行修正(外推)。R和c分別表示位于VOP邊界外宏塊的像素行、列位置。計算從宏塊的左上角f
0,0開始,一行行進(jìn)行直到計算完右下角像素為止。⒉DCT變換采用二維基于8×8像素塊的DCT變換對內(nèi)部規(guī)劃紋理塊和填補(bǔ)后的邊界塊進(jìn)行編碼。⒊系數(shù)量化采用有損壓縮方法。兩種量化方法:①根據(jù)系數(shù)的空間頻率調(diào)整量化步長;②對所有系數(shù)采用相同量化步長。量化方法是用量化系數(shù)除以量化步長。⒋系數(shù)預(yù)測利用相鄰塊的預(yù)測可以進(jìn)一步降低量化系數(shù)的平均能量。預(yù)測時可以利用上面的塊、左邊的塊或左上角的塊。
DC預(yù)測:只對DC系數(shù)進(jìn)行預(yù)測,預(yù)測可根據(jù)A塊或C塊的DC系數(shù)。
AC預(yù)測:根據(jù)所選候選塊同位置處的系數(shù)預(yù)測當(dāng)前第一塊或第一列的系數(shù),通過適當(dāng)調(diào)整量化步長來解決量化誤差問題。相鄰塊B侯選塊C侯選塊A當(dāng)前塊⒌系數(shù)掃描和游程編碼對系數(shù)先掃描將二維數(shù)據(jù)轉(zhuǎn)換成一維數(shù)據(jù),然后進(jìn)行游程編碼。掃描方式:①Zig-zag掃描:系數(shù)以對角線方式讀出;②水平方向的輪流掃描:系數(shù)以水平方式讀出;③垂直方向的輪流掃描:系數(shù)以垂直方式讀出;DC預(yù)測方式?jīng)Q定了掃描方式。如果沒有DC預(yù)測,采用Zig-zag掃描;如果水平或垂直方向有DC預(yù)測,采用水平或垂直方向的輪流掃描游程編碼:利用兩個不同的VLC碼表,根據(jù)量化器的值確定采用哪個VLC表。⒍隔行掃描編碼用于視頻內(nèi)容是隔行掃描的。紋理編碼可以采用場DCT模式或幀DCT模式,以宏塊為單位進(jìn)行轉(zhuǎn)換。①幀DCT編碼:每一個色度塊由兩場掃描行交替組成。對色度塊總是采用幀DCT模式進(jìn)行編碼。②場DCT編碼:每一個色度塊由兩場中的一場掃描行組成。對亮度塊總是采用場DCT模式進(jìn)行編碼。⒎靜態(tài)紋理采用一種基于小波變換的靜態(tài)編碼技術(shù),對AC子帶和DC子帶分別編碼,采用零樹算法和算術(shù)編碼對小波系數(shù)進(jìn)行量化編碼。九、應(yīng)用情況目前,MPEG4在多媒體傳輸、存儲等領(lǐng)域具有廣泛應(yīng)用:①低比特率下的多媒體通信,如視頻電話、視頻電子郵件等;②互聯(lián)網(wǎng)上的視頻流與可視游戲、虛擬會議等;③數(shù)字電視、動態(tài)圖像、萬維網(wǎng)(WWW)等;④實時多媒體監(jiān)控;⑤基于內(nèi)容存儲和檢索的多媒體系統(tǒng);⑥基于面部表情模擬的虛擬會議;⑦DVD上的交互多媒體應(yīng)用;⑧電影電視后期制作。6.4H.264/AVC視頻編碼標(biāo)準(zhǔn)6.4.1概述JVT是由國際標(biāo)準(zhǔn)化組
織運動圖像專家組(ISO
MPEG)和國際電信聯(lián)
盟視頻編碼專家組
(ITU-TVCEG)成立的
聯(lián)合視頻工作組(Joint
VideoTeam),致力于
開發(fā)低比特率視頻標(biāo)準(zhǔn)。JVT標(biāo)準(zhǔn)于2003年推出H.264/AVC標(biāo)準(zhǔn)。在ISO/IEC中的正式名稱為:MPEG-4Part10在ITU-T中的名稱為:H.264/AVC
根據(jù)應(yīng)用范圍,H.264主要分為三檔:①基本檔次(BaselineProfile):使用I片和P片幀內(nèi)和幀間編碼,支持基于上下文自適應(yīng)變長熵編碼(CAVLC)。主要適用于低時延實時應(yīng)用場合。②主要檔次(MainProfile):支持B片的幀間編碼和采用加權(quán)預(yù)測的幀內(nèi)編碼,支持基于上下文自適應(yīng)算術(shù)編碼(CABAC)。主要針對時延要求不高但壓縮率和質(zhì)量要求比較高的場合。③擴(kuò)展檔次(ExtentedProfile):支持基本檔次所有特性,但不支持CABAC,主要用于各種網(wǎng)絡(luò)的視頻流傳輸。6.4.2H.264/AVC視頻編碼器H.264以宏塊作為基本處理單元,主要針對Y:U:V=4:2:0采樣的視頻序列進(jìn)行壓縮編碼。H.264采用預(yù)測加變換編碼的混合編碼結(jié)構(gòu)。變換編碼基于4×4大小的塊進(jìn)行,一個16×16宏塊將包含16個亮度塊和8個色度塊。對所有宏塊的亮度和色度信號進(jìn)行空間和時間預(yù)測,然后對預(yù)測的殘差信號進(jìn)行變換、量化和熵編碼。H.264將一視頻圖像編碼成一個或多個片(slice),一個片由一系列按光柵掃描順序排列的宏塊構(gòu)成,每片包含整數(shù)個宏塊或一副圖像的全部宏塊。H.264采用幀內(nèi)/幀間編碼模式,每個圖像片的編碼模式選擇有:①I片(Islice):只包括I宏塊,運用片內(nèi)預(yù)測方法進(jìn)行編碼。采用幀內(nèi)預(yù)測編碼方式。②P片(Pslice):包括P宏塊,也可以包括I宏塊。I宏塊使用I片中編碼方法,P宏塊使用幀間預(yù)測編碼。③B片(Bslice):包括B宏塊,也可以包括I宏塊。B宏塊使用雙向預(yù)測,利用時間軸上先于和后于當(dāng)前編碼幀圖像作為參考幀。
H.264編碼框架圖①當(dāng)前幀F(xiàn)n是以16×16宏塊大小為處理單位進(jìn)行編碼處理的。可采用幀內(nèi)預(yù)測編碼或幀間預(yù)測編碼。在任一種模式下,都要基于重建幀形成一個P宏塊。在幀內(nèi)模式下,P宏塊的值等于對于當(dāng)前幀F(xiàn)n進(jìn)行編碼、解碼。在幀間模式下,P宏塊的值等于以一個或多個參考幀預(yù)測后經(jīng)過運動補(bǔ)償后的值。預(yù)測P宏塊與當(dāng)前幀宏塊相減后產(chǎn)生的殘差信號Dn,經(jīng)過4×4的整數(shù)變換、量化、排序后,再經(jīng)熵編碼得到輸出比特流。輸出比特流下傳到網(wǎng)絡(luò)提取層NAL進(jìn)行網(wǎng)絡(luò)傳輸或存儲。②在編碼端的幀的重建路徑:經(jīng)過量化后輸出的值X經(jīng)過反量化、反變換后產(chǎn)生一個宏塊,再加上預(yù)測宏塊P,形成重建宏塊。再引入環(huán)路濾波以減小或消除塊變換造成的塊效應(yīng)。
H.264解碼框架圖在解碼端,從網(wǎng)絡(luò)提取單元中接收到傳輸比特流,提取數(shù)據(jù)部分經(jīng)過熵解碼、排序、反量化和反變換后產(chǎn)生的值(和在編碼端的值一樣)。在解碼端,利用從傳輸比特流中提取的頭部信息形成預(yù)測宏塊P(和編碼端一樣)。P和相加產(chǎn)生
經(jīng)過環(huán)路濾波器后形成重建宏塊。注意:在編碼端進(jìn)行幀重建的目的是為了確保編碼端和解碼端都用相同的參考幀來形成預(yù)測宏塊P。如果不是,則編碼端形成的預(yù)測宏塊P和解碼端形成的預(yù)測宏塊P值不同,而導(dǎo)致編碼端和解碼端的錯誤。6.4.4幀內(nèi)預(yù)測編碼在H.264中,當(dāng)編碼I圖像時,提出了在空間域上的幀內(nèi)預(yù)測方法,即利用已編碼重建的相鄰塊對當(dāng)前塊進(jìn)行預(yù)測,再對預(yù)測誤差進(jìn)行變換編碼。對于亮度塊,可選擇4×4和16×16兩種尺寸:
4×4亮度塊有9種可選的幀內(nèi)預(yù)測模式;
16×16亮度塊有4種可選的幀內(nèi)預(yù)測模式。對于色度塊,選擇8×8尺寸:
16×16色度塊有4種可選的幀內(nèi)預(yù)測模式。一、4×4亮度信號幀內(nèi)預(yù)測4×4亮度塊共有9種幀內(nèi)預(yù)測模式:序號預(yù)測模式名稱0垂直預(yù)測模式1水平預(yù)測模式2直流預(yù)測模式3左下方向?qū)蔷€預(yù)測模式4右下方向?qū)蔷€預(yù)測模式5垂直—向右預(yù)測模式6水平—向下預(yù)測模式7垂直—向左預(yù)測模式8水平—向上預(yù)測模式當(dāng)使用幀內(nèi)4×4模式時,16×16宏塊劃分成16個4×4子塊,每個子塊的16個值a~p都從空間上相鄰的13個重建樣值A(chǔ)~M預(yù)測而來。MABCDEFGHIabcdJefghKijklLmnop預(yù)測塊與相鄰塊的關(guān)系1.預(yù)測塊計算⑴垂直預(yù)測模式如果已編碼重建的A~D與預(yù)
測塊在同一片中,且預(yù)測塊
采用垂直預(yù)測模式,則有:a=e=i=m=Ab=f=i=n=Bc=g=k=o=Cd=h=l=p=D⑵水平預(yù)測模式如果已編碼重建的I~L與預(yù)測
塊在同一片中,且預(yù)測塊采
用水平預(yù)測模式,則有:a=b=c=d=Ie=f=g=h=Ji=j=k=l=Km=n=o=p=L⑶直流預(yù)測模式如果已編碼重建的A~D、I~L與預(yù)測塊在同一片中,則:如果只有I~L與預(yù)測塊在同一
片中,則:如果只有A~D與預(yù)測塊在同一
片中,則:如果A~D、I~L與預(yù)測塊不在同一片中,則:⑷左下對角線預(yù)測模式如果已編碼重建的A~D、E~H與預(yù)測塊在同一片中,則有:⑸
右下對角線預(yù)測模式如果已編碼重建的A~D、I~M與預(yù)測塊在同一片中,則有:⑹
垂直—向右預(yù)測模式⑺水平—向下預(yù)測⑻垂直—向左預(yù)測⑼水平—向上預(yù)測2.預(yù)測模式編碼*當(dāng)前宏塊采用4×4幀內(nèi)預(yù)測模式需要將其選擇預(yù)測模式編碼傳輸。計算當(dāng)前塊C的最佳預(yù)測模式已編碼塊A和B位于當(dāng)前塊C上方
和左方,設(shè)PA、PB為A和B塊的最佳幀內(nèi)預(yù)測模
式,PC為當(dāng)前塊C最佳幀內(nèi)預(yù)測模式,則有:ABCIf(A、B均有效)…A、B與C在同一片中或都是4×4幀內(nèi)編碼模式
PC=min(PA,PB)…塊C最合適模式為A、B預(yù)測模式最小值ElsePC=2…否則塊C最合適模式為直流預(yù)測模式當(dāng)前塊最佳預(yù)測模式標(biāo)志位
ust_most_probable_mode作為當(dāng)前塊最佳預(yù)測模式標(biāo)志位變量,以指定是否使用最佳模式。如果“ust_most_probable_mode”=1,則當(dāng)前塊采用最佳預(yù)測模式;如果“ust_most_probable_mode”=0,則發(fā)送參數(shù)變量remaining_mode_selector,以指出模式變化。如果remaining_mode_selector比PC小,則預(yù)測模式設(shè)置為remaining_mode_selector;否則預(yù)測模式設(shè)置為(remaining_mode_selector+1)。二、16×16亮度信號幀內(nèi)預(yù)測16×16亮度塊共有4種幀內(nèi)預(yù)測模式:序號預(yù)測模式名稱0垂直預(yù)測模式1水平預(yù)測模式2直流預(yù)測模式3平面預(yù)測模式設(shè)P[i,j](i,j=0,…,15)代表當(dāng)前塊的值。其中P[-1,-1]對應(yīng)當(dāng)前塊左上角的值,P[-1,j]對應(yīng)當(dāng)前塊左邊的值,P[i,-1]對應(yīng)當(dāng)前塊上方的值。⑴垂直預(yù)測模式如果已編碼重建的P[i,-1]與預(yù)
測塊在同一片中,則預(yù)測塊
采用垂直預(yù)測模式,則有:⑵水平預(yù)測模式如果已編碼重建的P[-1,j]與預(yù)
測塊在同一片中,則預(yù)測塊
采用水平預(yù)測模式,則有:⑶直流預(yù)測模式如果已編碼重建的P[i,-1],
P[-1,j](i,j=0,…,15)與
預(yù)測塊都不在同一片中:如果只有P[-1,j](j=0,…,15)
與預(yù)測塊在同一片:如果只有P[i,-1](i=0,…,15)與預(yù)測塊在同一片:如果已編碼重建的P[i,-1],P[-1,j](i,j=0,…,15)與預(yù)測塊都在同一片中,則:⑷平面預(yù)測模式如果已編碼重建的P[i,-1],P[-1,j]
(i,j=0,…,15)與預(yù)測塊都在同一片中:式子中:b,c代表上邊緣和左邊緣值的變化強(qiáng)度,正值說明從左到右或從上到下的值有增大趨勢。同樣,幀內(nèi)16×16預(yù)測模式信息也必須包含在語法流中進(jìn)行編碼傳輸。三、8×8色度信號幀內(nèi)預(yù)測8×8色度塊共有4種幀內(nèi)預(yù)測模式:序號預(yù)測模式名稱0直流預(yù)測模式1水平預(yù)測模式2垂直預(yù)測模式3平面預(yù)測模式與16×16亮度預(yù)測模式類似,只是模式編號不同。注意:①色度幀內(nèi)預(yù)測模式中直流預(yù)測模式是以4×4的塊為單位進(jìn)行的;②選擇色度幀內(nèi)預(yù)測模式的信息可以直接進(jìn)行編碼傳輸。四、幀內(nèi)預(yù)測模式的選擇采用拉格朗日率失真優(yōu)化RDO策略進(jìn)行最優(yōu)編碼模式選擇。通過遍歷所有可能編碼模式,尋找率失真最小的那一種作為最優(yōu)編碼模式。步驟:①計算當(dāng)前4×4塊和重建4×4塊之間差值的平方和SSD,以及相應(yīng)編碼比特率。②分別計算9種幀內(nèi)4×4模式的率失真值J:
其中,為拉格朗日因子,QP為量化參數(shù),R為所選模式相應(yīng)編碼比特率。③對宏塊中16個4×4塊重復(fù)①②步驟,獲得每一個
4×4塊最佳預(yù)測模式和相應(yīng)的最小率失真值。
通常選取具有最小率失真值的模式作為最佳4×4
幀內(nèi)預(yù)測模式。④將計算得到的16個4×4塊最小率失真值相加得到
當(dāng)前宏塊在幀內(nèi)4×4下的率失真值。⑤按類似方法分別計算當(dāng)前宏塊在4種幀內(nèi)16×16
模式下的率失真值,選擇宏塊率失真值最小模式
為最佳16×16幀內(nèi)預(yù)測模式。⑥根據(jù)步驟④⑤中最小宏塊率失真值,選擇宏塊采
用4×4或16×16幀內(nèi)預(yù)測模式。⑦對8×8色度宏塊的幀內(nèi)預(yù)測模式,方法類似。6.4.5幀間預(yù)測編碼H.264幀間編碼在現(xiàn)有標(biāo)準(zhǔn)幀間編碼框架上增加一些新技術(shù):①可變尺寸塊運動補(bǔ)償;②1/4像素精度的運動估計;③多參考幀運動補(bǔ)償一、可變尺寸塊運動補(bǔ)償合理地將圖像分塊有利于解決提高搜索速度和增加估計精度這一對矛盾。通常情況下,對于一幀圖像中變換緩慢的背景部分,采用較大的分塊可減少搜索次數(shù)但不降低估計精度;對于變化劇烈的運動物體,采用較小的塊能夠提高估計精度。
H.264采用樹結(jié)構(gòu)運動補(bǔ)償,利用了各種不同大小和形狀的塊分割模式:一個16×16亮度宏塊有16×16、16×8、8×16、8×8四種分割方法;對于8×8分割,進(jìn)一步劃分為8×8、8×4、4×8、4×4共4種形狀子塊。根據(jù)運動補(bǔ)償采用塊尺寸不同,宏塊編碼模式分為四種:對于16×16、16×8、8×16三種塊尺寸模式按照一個16×16塊、兩個16×8塊和兩個8×16塊進(jìn)行運動補(bǔ)償。對于8×8塊尺寸模式按照4個8×8塊進(jìn)行運動補(bǔ)償,而每一個8×8子塊有4中可能子模式,分別按照一個8×8塊、兩個8×4塊和兩個4×8塊及4個4×4塊進(jìn)行運動補(bǔ)償。對應(yīng)于劃分的每一個分塊或子塊都對應(yīng)一個運動矢量MV,這個運動矢量和塊的形狀信息要編碼傳輸。對于色度信號,宏塊分割方法同亮度塊一樣,只是尺寸減半。例如,亮度分量中的8×16模式對應(yīng)色度分量中4×8模式,而且色度塊運動矢量也對應(yīng)亮度塊運動矢量的各個分量的一半。二、多參考幀運動補(bǔ)償通常用于很多自然場景的周期變換以及鏡頭在兩個場景中交替轉(zhuǎn)換等情況下。
基本思想:對某一個塊進(jìn)行運動估計時,編碼器會從過去的一個或多個剛編碼過的參考幀中選定一幀作為參考幀,并指出是哪個幀被用于預(yù)測,以獲得更好預(yù)測效果。多參考幀的引入給運動估計帶來更大靈活性,提高估計精度,降低碼率。但由于具有多個參考幀,因此需要更大存儲空間。同時,在運動估計時,需要遍歷當(dāng)前所有參考幀,運算量加大。三、四分之一像素運動估計H.264對于亮度信號采用四分之一像素精度的運動估計,對于色度塊,運動估計精度可達(dá)到八分之一。
整數(shù)和非整數(shù)樣點值預(yù)測①當(dāng)運動矢量水平和垂直分量都是整數(shù),參考塊中樣值存在,預(yù)測值可直接由參考圖像中對應(yīng)樣點值組成。②當(dāng)運動矢量水平和垂直分量一個或兩個分量為非整數(shù),參考塊中處于非整數(shù)位置處亮度和色度樣點值不存在,預(yù)測值需要利用在參考幀中與其相鄰的樣點值進(jìn)行插值運算得到。問題:如何獲得半像素處和四分之一位置處的預(yù)測值呢?在參考幀中非整數(shù)位置插值運算圖中A、B、C、D、E、F等為整數(shù)像素點;b、h、m、s、aa、bb、cc、dd等為半像素點;a、c、d、n、f、i、k和q等為四分之一像素點。思想:半像素處值通過對水平和垂直方向的相鄰整像素使用一個權(quán)系數(shù)為(1,-5,20,20,-5,1)的6階FIR濾波器濾波得到,四分之一像素處值通過計算相鄰樣值均值得到。
半像素樣值生成。例如b和h:先通過6階FIR濾波器濾波后得到中間值b1,h1,然后b1,h1除以32舍入取整(0~255之內(nèi))作為該點的值。round()為取整函數(shù),輸出值等于輸入最近整數(shù)。例如j:依據(jù)鄰近水平方向(或垂直方向)6個半像素點值通過6階FIR濾波器濾波后得到中間值j1,再除以1024舍入取整(0~255之內(nèi))作為該點的值。其中m1,s1為m,s通過6階FIR濾波器濾波后得到的中間值。
四分之一像素樣值生成對于在水平和垂直方向上與一個整像素點或與兩個半像素點相鄰的四分之一點的求取是通過對相鄰兩像素取均值得到。如a,c,d,n,f,I,k,q
對于其他四分之一像素點如e,g,p,r的求取是通過對最近位于對角線上兩個半像素點取平均后得到。對于色度分塊,其運動估計精
度可達(dá)八分之一,非整像素位置
的值通過雙線性插值得到。根據(jù)八分之一像素的運動矢量求得相應(yīng)偏移量dx,dy,S-dx,S-dy通過下式獲取對應(yīng)位置估計值:四、運動矢量預(yù)測基本思想:利用空間上已編碼的相鄰分塊的相關(guān)性,對當(dāng)前分塊的運動矢量進(jìn)行預(yù)測,最后編碼時只對運動矢量的預(yù)測值MVP與實際運動矢量差值MVD進(jìn)行編碼傳輸,減少用于傳輸運動矢量信息所需要的比特數(shù)。
子塊分割尺寸相同或不同時相鄰塊的選擇設(shè)E為當(dāng)前宏塊或子塊,A、B、C分別代表與塊E相鄰的左、上、右上已編碼宏塊或子塊。如果E的左側(cè)是多于1個子塊分割,取其中最上的一個為A;如果E的上方是多于1個子塊分割,取其中最左的一個為B。BCAE分割尺寸相同時相鄰塊選擇分割尺寸不同時相鄰塊選擇運動矢量預(yù)測算法設(shè)VA、VB、VC代表A、B、C塊運動矢量,VE為E塊運動矢量預(yù)測值:對于E塊的816的分割,左邊部分運動矢量預(yù)測值等于VA,右邊部分運動矢量預(yù)測值等于VC。對于E塊的168的分割,上面部分運動矢量預(yù)測值等于VB,右邊部分運動矢量預(yù)測值等于VA。對于E塊為其他形狀塊的運動矢量預(yù)測算法:采用“中值預(yù)測”算法,原理為:如果B、C塊均不存在或在片邊界之外,則VE=VA;如果A、C塊均不存在或在片邊界之外,則VE=VB;如果A、B塊均不存在或在片邊界之外,則VE=VC;否則VE=median(VA,VB,VC),取三者中值。得到運動適量估計值MVP后,可利用它來定位搜索中心。注意:用于預(yù)測當(dāng)前塊的運動矢量的空間相鄰塊必須與當(dāng)前塊采用同樣參考幀。6.4.6十字優(yōu)先菱形搜索1.NCDS算法—十字菱形搜索算法NCDS算法根據(jù)現(xiàn)實中視
頻序列的運動矢量中心
分布特性而提出的。大約
有80%運動矢量集中在搜
索中心周圍搜索半徑r=2
的范圍內(nèi),并且在此范圍
內(nèi),位于十字中心上的運
動矢量處于主導(dǎo)地位。如圖,約有71.76%的MV集中在中心3×3(A+B+D)范圍內(nèi),其中約69%MV集中在十字中心(A+B)位置上。NCDS算法的搜索模板形狀:■小十字模板□﹢■大十字模板NCDS搜索過程:①用小十字模板SCSP在搜索區(qū)域中心及周圍4個點進(jìn)行搜索匹配,如果最佳匹配塊位置在十字模板中心,則結(jié)束搜索;否則,繼續(xù)第二步。②以第一步得到位置為中心,構(gòu)建新SCSP模板(已考察過點不再處理)。如果最佳匹配塊位置在十字模板中心,則結(jié)束搜索;否則,繼續(xù)第三步。③考察以搜索起點(0,0)為中心的LCSP模板中3個位于十字方向上未考慮過的值,確定是否需要更新搜索中心。④以上一步得到位置為搜索中心,采用大鉆石模板LDSP進(jìn)行搜索,如果最佳匹配塊位置位于當(dāng)前搜索中心,則轉(zhuǎn)入第五步;否則,更新當(dāng)前搜索中心,重復(fù)本步驟。⑤以上一步得到位置為搜索中心,采用小鉆石模板SDSP進(jìn)行搜索,則搜索到最佳匹配塊位置為最終匹配位置。舉例:第一步搜索停止MV為(0,0)第一步搜索停止MV為(-1,0)上圖中,NCDS算法搜索點數(shù)分別為5和8。對于運動內(nèi)容大都是靜止或運動較緩慢的視頻序列來說,出現(xiàn)以上兩種情況的概率比較多。在上圖中,搜索點數(shù)共19點,匹配位置從第一步到第五步的變換為(-1,0)(-2,0)(-2,0)(-2,0)(-2,-1)在上圖中,搜索點數(shù)共24點,匹配位置從第一步到第六步的變換為(-1,0)(-1,-1)(-1,-1)
(-3,-1)(-3,-1)(-3,-2)2.基于梯度的十字優(yōu)先菱形搜索算法*快速運動搜索算法減少搜索點數(shù)的關(guān)鍵在于確定搜索模板的形狀以及盡早地中止搜索過程。
基于梯度的十字優(yōu)先菱形搜索算法的改進(jìn)之處:①利用運動矢量預(yù)測技術(shù)使搜索中心接近真實匹配位置,從而以該搜索中心為起點的十字菱形搜索在頭兩步結(jié)束概率增大。并且,通過事先設(shè)定的門限值來確定當(dāng)前中心位置是否為最佳匹配位置進(jìn)一步減少搜索步驟。②在進(jìn)行菱形搜索時僅僅考察符合當(dāng)前搜索梯度方向的點。同時,遵循先考察十字方向,再對角方向原則,進(jìn)一步減少搜索步驟。
基于梯度的十字優(yōu)先菱形搜索算法步驟:①通過相鄰塊的運動矢量來預(yù)測當(dāng)前塊運動矢量,以確定搜索的起始中心位置。②計算當(dāng)前中心位置處的求和絕對誤差SAD值,與門限T比較,如果小于T,則當(dāng)前位置為最佳匹配位置,結(jié)束搜索;否則,進(jìn)入下一步。門限T的取值為:③以搜索起點(0,0)為中心,采用小十字模板SCSP進(jìn)行搜索匹配,如果最佳匹配塊位置在(0,0),則結(jié)束搜索;否則,繼續(xù)第4步。④以第一步得到位置為中心,構(gòu)建新SCSP模板(已考察過點不再處理)。如果最佳匹配塊位置在搜索起點,則結(jié)束搜索;否則,繼續(xù)第5步。⑤考察以搜索起點(0,0)為中心的大十字模板LCSP中3個位于十字方向上未考慮過的值,確定是否需要更新搜索中心。⑥以上一步得到位置為搜索中心,根據(jù)上一步搜索方向考察相應(yīng)大鉆石模板LDSP中1個(當(dāng)前中心位置是上次搜索的十字方向)或2個(當(dāng)前位置為上次搜索對角線方向)十字方向上的點進(jìn)行搜索,如果最佳匹配塊位置在當(dāng)前搜索中心,則進(jìn)入第8步;否則,繼續(xù)第7步。⑦根據(jù)當(dāng)前中心位置相對于上次搜索中心位置來選定相應(yīng)LDSP模板對角線方向的1個點(當(dāng)前位置為上次搜索對角線方向)或2個點(當(dāng)前中心位置是上次搜索的十字方向)進(jìn)行考察,確定當(dāng)前位于十字方向上的最優(yōu)匹配位置是否需要更新。無論結(jié)果如何,本步驟結(jié)束后都將以當(dāng)前得到的最優(yōu)匹配位置為中心點,重復(fù)第6步和第7步,直到從第6步跳出。⑧以得到最優(yōu)匹配位置為搜索中心,采用小鉆石模板SDSP進(jìn)行搜索,則搜索到的最優(yōu)匹配位置為最終的匹配位置。舉例:上圖中,所需要搜索點數(shù)共15點,匹配位置變化為:(-1,0)(-2,0)(-2,0)(-2,0)(-2,-1)上圖中,所需要搜索點數(shù)共19點,匹配位置變化為:(-1,0)(-1,-1)(-3,-1)(-3,-1)(-3,-2)6.4.7整數(shù)變換及量化
宏塊中的殘差塊及其傳送順序先傳送標(biāo)注為-1的塊(只適用于當(dāng)前塊編碼模式為16×16幀內(nèi)模式),每個4×4子塊包含直流系數(shù);再傳送標(biāo)記為0~15塊;然后傳送標(biāo)記為18~25塊數(shù)據(jù)。0~15號4×4子塊在16×16幀內(nèi)模式下DC系數(shù)為0;16、17號塊是色度分量Cb、Cr的直流系數(shù);18~25塊中設(shè)置直流系數(shù)為0。一、4×4整數(shù)離散余弦變換主要討論4×4整數(shù)DCT變換原理:4×4DCT正變換公式為:其中,則有:A=BCAT=CTBT符號代表矩陣對應(yīng)同一位置的元素相乘。對b,d值調(diào)整:對矩陣進(jìn)行尺度變換,調(diào)整系數(shù)矩陣E,則有:“整數(shù)DCT正變換”公式變換核整數(shù)DCT反變換公式由于變換核與Ef乘法可以和量化過程合并,所以:實際DCT輸出為:二、量化和反量化1.量化H.264標(biāo)準(zhǔn)支持52個量化步長,用量化參數(shù)QP來索引量化步長Qstep。表QP和Qstep關(guān)系可看出,量化參數(shù)QP每增加6,Qstep增加1倍;QP每增加1,Qstep近似增加12.5%。當(dāng)QP取最小值0時,代表最精細(xì)的量化;當(dāng)QP取最大值51時,代表最粗糙的量化。對于色度編碼,一般使用與亮度編碼同樣的量化步長。H.264草案把色度的QP最大值大約限制在亮度QP最大值的80%范圍內(nèi)。規(guī)定亮度QP的最大值是51;色度QP的最大值是39。令Zij表示量化后系數(shù),Yij表示經(jīng)過整數(shù)DCT變換后系數(shù),則有:由于變換核W作為實際DCT變換的輸出,與Ef乘法可以和量化過程合并,則進(jìn)一步表示有:PF為矩陣Ef中元素,表示對應(yīng)矩陣Ef不同位置關(guān)系,如下表:round為四舍五入函數(shù)為整個量化過程避免除法運算,進(jìn)一步表示有:其中:qbits的取值:當(dāng)0QP5,qbits=15;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- YY/T 0581.2-2024輸液連接件第2部分:無針連接件
- 貴州大學(xué)《生物防治學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年貴州省安全員《C證》考試題庫及答案
- 2025湖北建筑安全員《C證》考試題庫
- 2025山西建筑安全員《A證》考試題庫及答案
- 硅湖職業(yè)技術(shù)學(xué)院《唐詩宋詞賞析》2023-2024學(xué)年第一學(xué)期期末試卷
- 貴陽學(xué)院《物流英語》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年河北建筑安全員C證(專職安全員)考試題庫
- 2025海南省安全員考試題庫及答案
- 2025年-黑龍江省安全員《A證》考試題庫及答案
- 三支一扶協(xié)議書模板
- 燙傷的防治與護(hù)理
- 2024年全國職業(yè)院校技能大賽高職組(護(hù)理技能賽項)備賽試題庫(含答案)
- 駕駛員三年內(nèi)工作總結(jié)
- 青年你為什么要入團(tuán)-團(tuán)員教育主題班會-熱點主題班會課件
- 司法鑒定工作應(yīng)急預(yù)案
- 《竹結(jié)構(gòu)建筑技術(shù)規(guī)程》
- 大一中國近代史綱要期末考試試題及答案
- (完整版)鋼筋加工棚驗算
- 安徽省合肥市廬陽區(qū)2023-2024學(xué)年三年級上學(xué)期期末數(shù)學(xué)試卷
- 概念方案模板
評論
0/150
提交評論