亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        H.264/AVC幀內(nèi)4×4預(yù)測算法的高效流水線結(jié)構(gòu)

        2012-06-25 07:02:34任懷魯張德學(xué)
        電視技術(shù) 2012年7期
        關(guān)鍵詞:宏塊重構(gòu)像素

        任懷魯,張德學(xué)

        (山東科技大學(xué)信息科學(xué)與工程學(xué)院,山東 青島 266590)

        MPEG-4 AVC/H.264(以下簡稱為 H.264/AVC)標(biāo)準(zhǔn)[1]與 MPEG-2 標(biāo)準(zhǔn)相比,碼流節(jié)省了 50% 以上[2-3]。H.264標(biāo)準(zhǔn)中所用的編碼技術(shù)主要有幀內(nèi)預(yù)測、運動估計、整形變換、環(huán)路濾波等。H.264/AVC性能的提高是以高復(fù)雜度和大運算量為代價的,為了能夠?qū)崟r用H.264/AVC標(biāo)準(zhǔn)編碼圖像,人們對H.264/AVC的高效算法和硬件結(jié)構(gòu)做了大量的工作。在這些工作中,很多研究者把重心放到了幀內(nèi)4×4預(yù)測部分,這是因為幀內(nèi)4×4預(yù)測在整個H.264/AVC標(biāo)準(zhǔn)中占有很大的比重,而且比較難以用硬件設(shè)計。

        H.264/AVC預(yù)測編碼部分分為幀內(nèi)預(yù)測和幀間預(yù)測,幀內(nèi)預(yù)測用于減少視頻圖像空間上的冗余,幀間預(yù)測用于減少視頻圖像時間上的冗余。根據(jù)預(yù)測技術(shù)的不同,H.264/AVC中的圖像可以分為I,P,B幀,每一幀都由宏塊(16×16的像素塊)組成。宏塊可以分為幀內(nèi)宏塊(以幀內(nèi)預(yù)測技術(shù)編碼)和幀間宏塊(以幀間預(yù)測技術(shù)編碼)。I幀只由幀內(nèi)宏塊組成,P幀和B幀可以由幀內(nèi)宏塊或幀間宏塊組成。參考文獻[4]中的研究發(fā)現(xiàn),在場景變換比較劇烈的視頻序列中,即使在P幀和B幀圖像中,幀內(nèi)宏塊的數(shù)量也要高于幀間宏塊的數(shù)量。幀內(nèi)宏塊按預(yù)測塊的大小又可分為幀內(nèi)4×4宏塊(I4MB)和幀內(nèi)16×16宏塊(I16MB)。其中在圖像細(xì)節(jié)比較細(xì)膩的圖像中幀內(nèi)4×4宏塊將占據(jù)絕對大的比例。本文在H.264的參考軟件JM15.1中對foreman_cif碼流作了測試(IPPP,260幀,QP設(shè)為24),結(jié)果表明I4MB的比例占整個幀內(nèi)宏塊數(shù)的85.9%。由此可見,幀內(nèi)4×4預(yù)測在整個H.264/AVC視頻編碼過程中占有非常重要的地位。

        但是I4MB宏塊中的各個4×4塊之間有著嚴(yán)重的數(shù)據(jù)依賴性,這使幀內(nèi)4×4預(yù)測成為H.264/AVC編碼器中的一個主要瓶頸。在之前的設(shè)計中,主要有3種方法緩解幀內(nèi)4×4預(yù)測過程中的數(shù)據(jù)依賴性問題:第一種方法是在幀內(nèi)4×4預(yù)測的閑置周期中讓硬件執(zhí)行幀內(nèi)16×16預(yù)測[5-7],這可以提高硬件的利用率,但是它的關(guān)鍵路徑長度并沒有改變,不適用于高性能的視頻編碼器;第二種方法是重新對I4MB 的4×4塊進行重排序[8-9],它可以在一定程度上解決各個4×4塊間的數(shù)據(jù)依賴性問題,但是仍有至少5個4×4塊的數(shù)據(jù)依賴性問題它是解決不了的;第三種方法是采用原始圖像進行幀內(nèi)預(yù)測[10-11],但是它會導(dǎo)致解碼端和編碼端的重構(gòu)圖像不一致,有較大圖像PSNR損失。

        針對這種情況,本文提出了一種新的硬件結(jié)構(gòu),在沒有明顯的圖像PSNR損失和沒有增加額外硬件資源的前提下,可以使硬件的利用率幾乎達(dá)到100%,使處理一個宏塊的時鐘周期數(shù)減少到215個。

        1 幀內(nèi)4×4預(yù)測相關(guān)算法簡介

        一個I4MB可以分為16個4×4塊,編碼一個幀內(nèi)4×4塊首先需要用各種模式執(zhí)行幀內(nèi)預(yù)測,進而進行模式判決,得出最佳模式,把用最佳模式預(yù)測出的像素與原始像素做差,把殘差傳送給重構(gòu)循環(huán)模塊。由重構(gòu)循環(huán)模塊得出的重構(gòu)數(shù)據(jù)進一步作為之后4×4塊的參考像素。在DCT變換和量化之后的數(shù)據(jù)需輸出給之后的模塊(熵編碼)進行進一步處理。

        1.1 幀內(nèi)4×4預(yù)測相關(guān)算法

        幀內(nèi)4×4預(yù)測以之前已經(jīng)重構(gòu)的邊沿像素作為參考像素,幀內(nèi)4×4塊最多可以有13個參考像素,根據(jù)預(yù)測方向的不同幀內(nèi)4×4預(yù)測有8種預(yù)測模式[3],此外幀內(nèi)4×4預(yù)測還有一種沒有方向特性的DC模式(即是可得參考像素的平均值)。

        對于每一個4×4塊都要用這9種模式遍歷執(zhí)行幀內(nèi)4×4預(yù)測,由模式判決算法選出最優(yōu)預(yù)測模式[12]。模式判決所做的工作主要是評估幀內(nèi)預(yù)測各種模式的SATD(Sum of Absolute Transformed Difference)值。T代表著Hadamard變換。

        重構(gòu)循環(huán)主要包括DCT變換、量化(Q)、反量化(IQ)和IDCT變換4個部分。在IDCT變換之后需把得出的殘差數(shù)據(jù)與預(yù)測像素相加,得出重構(gòu)像素,一個4×4塊邊沿部分的重構(gòu)像素(其位置如圖1所示)將作為之后4×4塊的參考像素。

        1.2 幀內(nèi)預(yù)測過程中的數(shù)據(jù)依賴關(guān)系

        I4MB的16個4×4塊是按照zig-zag的順序進行編碼的,如圖1a所示。在一個4×4塊進行預(yù)測之前必須保證相鄰的(左、上、右上、左上)4×4塊已經(jīng)重構(gòu)完成,這就導(dǎo)致相鄰的4×4塊之間有很復(fù)雜的數(shù)據(jù)依賴關(guān)系,如圖1b所示。在圖1b中,箭頭所指4×4塊必須等待箭頭開始端所在4×4塊完成重構(gòu)循環(huán)之后才可進行預(yù)測。因此,幀內(nèi)4×4預(yù)測(和模式判決)和重構(gòu)循環(huán)之間無法用流水線的方式實現(xiàn),它們之間只能串行執(zhí)行(其時序如圖2a所示),這會導(dǎo)致編碼器的硬件利用率很低。而且由于幀內(nèi)4×4預(yù)測模式比較多,I4MB分成的4×4塊也比較多,使整個宏塊的執(zhí)行時間增長了1倍,已經(jīng)成為了整個H.264編碼器中的瓶頸。

        圖1 4×4塊掃描順序和數(shù)據(jù)依賴關(guān)系

        2 所提解決方案及其執(zhí)行時序

        在之前針對幀內(nèi)4×4預(yù)測的研究中,或者沒能徹底解決幀內(nèi)4×4預(yù)測的關(guān)鍵路徑過長的問題,或者使圖像的質(zhì)量有較大損失。為了解決1.2節(jié)中所分析的數(shù)據(jù)依賴性問題,又不令圖像的質(zhì)量有較大損失,筆者提出以下解決方案:在模式判決時使用原始圖像進行幀內(nèi)預(yù)測,當(dāng)模式判決完成后,上一個4×4塊的重構(gòu)數(shù)據(jù)也已經(jīng)準(zhǔn)備好,再用重構(gòu)像素和選擇的最佳模式進行一次幀內(nèi)預(yù)測,把得到的預(yù)測數(shù)據(jù)和殘差數(shù)據(jù)交給重構(gòu)循環(huán)模塊,而幀內(nèi)預(yù)測和模式判決模塊則在同時對下一個4×4塊用原始圖像預(yù)測并進行模式判決。此方法可使幀內(nèi)預(yù)測(帶模式判決)模塊和重構(gòu)循環(huán)模塊完全流水線化,同時又克服了文獻[10-11]中用原始圖像預(yù)測所導(dǎo)致的編碼端和解碼端重構(gòu)數(shù)據(jù)不一致的問題,減少了圖像PSNR損失(時序見圖2b)。

        圖2 幀內(nèi)4×4預(yù)測原始時序和所提出方案的流水線時序

        3 所提出的幀內(nèi)4×4預(yù)測總體結(jié)構(gòu)

        筆者提出的幀內(nèi)4×4預(yù)測整體結(jié)構(gòu)如圖3所示,與傳統(tǒng)的幀內(nèi)預(yù)測結(jié)構(gòu)相比,主要不同是:采用16像素并行結(jié)構(gòu),1個周期可以生成16個預(yù)測像素和16個重構(gòu)像素;用原始圖像進行模式判決,用重構(gòu)圖像進行幀內(nèi)4×4預(yù)測,幀內(nèi)4×4預(yù)測模塊和重構(gòu)循環(huán)模塊完全流水線執(zhí)行。這樣1個4×4塊可在13個時鐘周期內(nèi)生成最佳預(yù)測數(shù)據(jù),1個宏塊可以在215個時鐘周期內(nèi)完成整個幀內(nèi)4×4預(yù)測過程。以下對其中的主要模塊進行介紹。

        圖3 所提出的幀內(nèi)4×4預(yù)測整體結(jié)構(gòu)

        3.1 預(yù)測像素生成器模塊

        幀內(nèi)預(yù)測算法[3]主要就是以2抽頭或者3抽頭濾波器組成,為了提高硬件的利用率,筆者設(shè)計了一種通用的可處理所有幀內(nèi)4×4預(yù)測模式的濾波器,如圖4所示。而且?guī)瑑?nèi)4×4預(yù)測的算法中并不是所有位置的像素都各不相同,各種模式最多只有13個各不相同的值,由此最多只需用13個如圖4a所示的PE濾波器就可以了。幀內(nèi)4×4預(yù)測的整體結(jié)構(gòu)如圖4b所示。

        圖4 提出的幀內(nèi)4×4處理單元和16并行預(yù)測結(jié)構(gòu)

        3.2 重構(gòu)循環(huán)模塊

        整個重構(gòu)循環(huán)模塊也是16像素并行的,其結(jié)構(gòu)如圖5所示。重構(gòu)循環(huán)模塊的IDCT與DCT模塊結(jié)構(gòu)相同,反量化(IQ)和量化(Q)模塊結(jié)構(gòu)相似,所以圖5只給出了DCT變換和量化模塊的詳細(xì)結(jié)構(gòu)圖。首先一個二維DCT變換可變換成兩個一維的DCT變換,一維的DCT變換也可以采用蝶形結(jié)構(gòu)分兩級完成,其結(jié)構(gòu)如圖5所示。筆者采用的DCT變換結(jié)構(gòu)有8個一維DCT變換模塊,其中4個做行變換,4個做列變換,中間的交叉互聯(lián)(cross connection)結(jié)構(gòu)可實現(xiàn)DCT變換中間參數(shù)的行列轉(zhuǎn)換。量化模塊的處理單元參照參考文獻[1]中所述算法設(shè)計,量化模塊除量化處理單元外還包括一個存儲H.264/AVC標(biāo)準(zhǔn)中的量化矩陣的ROM和一個用于計算量化過程中所需參數(shù)的參數(shù)計算器(Parameters Calculator)。量化模塊有16個并行的處理單元,可并行處理16個像素。

        圖5 重構(gòu)循環(huán)模塊

        4 實驗結(jié)果和比較

        對于第3節(jié)中所提出的算法,基于H.264/AVC的參考軟件JM15.1進行了測試。其主要參數(shù)配置是:測試序列 foreman_cif,260 幀,全I幀,30 f/s(幀/秒)。在QP 從4變化到48時所提算法與JM15.1參考算法的PSNR變化如圖6所示。結(jié)果顯示所提出的算法與JM15.1中的參考算法平均只有0.03 dB的PSNR損失。

        圖6 所提算法在各種QP下的PSNR值及與JM15.1中的比較

        對提出的幀4×4預(yù)測的硬件結(jié)構(gòu)用SMIC 0.13 μm工藝庫進行了綜合。結(jié)果顯示,在SMIC 0.13 μm工藝下,用synopsys的DC綜合工具把時鐘約束設(shè)為250 MHz時,所需門數(shù)為116000(以一個NAND2X1為單位),它與之前相關(guān)設(shè)計的對比如表1所示。

        表1 所提出幀內(nèi)4×4預(yù)測結(jié)構(gòu)的性能及與之前工作的對比

        文獻[5]中由于沒有處理好幀內(nèi)4×4預(yù)測的數(shù)據(jù)依賴問題,它處理一個宏塊的時間很長;文獻[10]和[11]都是采用原始圖像預(yù)測,圖像質(zhì)量損失比較大;文獻[13]為了減少幀內(nèi)4×4預(yù)測的延遲采用了多了幀內(nèi)4×4預(yù)測核并行執(zhí)行的方法,但是這使面積有了很大的增加。

        5 結(jié)論

        針對H.264/AVC標(biāo)準(zhǔn)中幀內(nèi)4×4預(yù)測過程中所存在的數(shù)據(jù)依賴性問題,本文中提出了一種新的解決方案,它通過使用原始像素進行模式判決和使用重構(gòu)像素進行幀內(nèi)預(yù)測的方法,使幀內(nèi)預(yù)測和重構(gòu)循環(huán)可以采用流水線技術(shù)執(zhí)行,同時與直接用原始圖像做幀內(nèi)預(yù)測的方案相比又有效地減少了圖像的PSNR損失。本設(shè)計采用了16像素并行結(jié)構(gòu),此結(jié)構(gòu)可以在215個時鐘周期內(nèi)完成一個宏塊的幀內(nèi)預(yù)測。最后,本文對所設(shè)計的結(jié)構(gòu)面向ASIC作了綜合,與以往的相關(guān)工作相比較,結(jié)果顯示本設(shè)計在沒有增加額外的資源的情況下,達(dá)到了更高的性能。

        [1]ITU-T Rec.H.264/AVC.Advanced video coding for generic audiovisual services[S].2005.

        [2]WIEGAND T,SULLIVAN G J,BJONTEGAARD G,et al.Overview of the H.264/AVC video coding standard[J].IEEE TCSVT,2003,13(7):560-576.

        [3]蘇磊,李國源,張家謀.基于幀內(nèi)空間域預(yù)測的快速文理逼近算法[J].電視技術(shù),2004,28(9):11-14.

        [4]SHAFIQUE M,BAUER L,HENKEL J.A parallel approach for high performance hardware design of intra prediction in H.264/AVC video codec[C]//Proc.IEEE DATE 2009.[S.l.]:IEEE Press,2009:1434-1439.

        [5]HUANG Y W,HSIEH B Y,CHEN T C,et al.Analysis,fast algorithm,and VLSI architecture design for H.264/AVC intra frame coder[J].IEEE TCSVT,2005,15(3):378-401.

        [6]KU C W,CHENG C C,YU G S,et al.A high-definition H.264/AVC intra-frame codec IP for digital video and still camera applications[J].IEEE TCSVT,2006,16(8):917-928.

        [7]LIN Y K,KU C W,LI D W,et al.A 140-MHz 94 k gates HD1080p 30-frames/s intra-only profile H.264/AVC encoder[J].IEEE TCSVT,2009,19(3):432-436.

        [8]SMAOUI S,LOUKIL H,BEN ATITALLAH A,et al.An efficient pipeline execution of H.264/AVC intra 4x4 frame design[C]//Proc.20107th International Multi-Conference on Systems Signals and Devices(SSD).[S.l.]:IEEE Press,2010:1-5.

        [9]JIN G H,JUNG J S,LEE H J.An efficient pipelined architecture for H.264/AVC intra frame processing[C]//Proc.IEEE ISCAS 2007.[S.l.]:IEEE Press,2007:1605-1608.

        [10]CHUANG T D,CHEN Y H,TSAI C H,et al.Algorithm and architecture design for intra prediction in H.264/AVC high profile[EB/OL].[2011-05-01].http://video.ee.ntu.edu.tw/publication/paper/[C][2007][PCS][Tzu-Der.Chuang][1].pdf.

        [11]DING L F,CHEN W Y,TSUNG P K.A 212 Mpixels/s 4096 imes 2160p multiview video encoder chip for 3D/quad full HDTV applications[J].IEEE Journal of Solid-State Circuits,2010,45(1):46-58.

        [12]王海勇,孫雁飛,吳啟宗.H.264編碼中幀內(nèi)預(yù)測算法研究[J].電視技術(shù),2009,33(8):9-12.

        [13]KUO H C,LIN Y L.An H.264/AVC full-mode Intra-frame Encoder for 1080HD Video[C]//Proc.IEEE ICME 2008.[S.l.]:IEEE Press,2008:1037-1040.

        猜你喜歡
        宏塊重構(gòu)像素
        趙運哲作品
        藝術(shù)家(2023年8期)2023-11-02 02:05:28
        像素前線之“幻影”2000
        長城敘事的重構(gòu)
        攝影世界(2022年1期)2022-01-21 10:50:14
        “像素”仙人掌
        北方大陸 重構(gòu)未來
        北京的重構(gòu)與再造
        商周刊(2017年6期)2017-08-22 03:42:36
        論中止行為及其對中止犯的重構(gòu)
        高像素不是全部
        CHIP新電腦(2016年3期)2016-03-10 14:22:03
        基于選擇特征宏塊的快速視頻穩(wěn)像
        基于宏塊合并的H.264模式選擇算法
        免费看黄片视频在线观看| 暖暖视频在线观看免费| 无码国产午夜福利片在线观看| 无码日韩AⅤ一区二区三区| 中国产无码一区二区三区| 久久91精品国产91久久跳舞| 国产精品国产av一区二区三区| 亚洲欧洲成人精品香蕉网| 边啃奶头边躁狠狠躁| 国产精品九九九久久九九| 美腿丝袜一区二区三区| 国产精品自拍视频在线| 99re66在线观看精品免费| 久久久老熟女一区二区三区| 亚洲成在人线av| 黄片在线观看大全免费视频| 国产亚洲中文字幕久久网| 国产av无码专区亚洲av麻豆| 亚洲av不卡一区二区三区| 国产亚洲视频在线观看网址| 偷拍熟女亚洲另类| 亚洲最大不卡av网站| 人妻夜夜爽天天爽三区丁香花| 久久9精品区-无套内射无码| 激情内射亚洲一区二区三区爱妻| 色婷婷一区二区三区四区| 久久伊人精品中文字幕有| 中文字幕亚洲综合久久| 国产精品va无码一区二区| 精品91精品91精品国产片| 性色av一区二区三区四区久久| 国产夫妻自拍视频在线播放| 国产综合在线观看| 伊伊人成亚洲综合人网7777| 久久迷青品着产亚洲av网站| 亚洲最大一区二区在线观看| 精品国产精品国产偷麻豆| 色猫咪免费人成网站在线观看| 国产精品国产午夜免费看福利| 亚洲天码一区二区三区| 国产大片内射1区2区|