999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

H.264運動估計硬件加速器的設(shè)計

2010-03-14 09:05:14李本齋吳從中陳家銀
電視技術(shù) 2010年1期
關(guān)鍵詞:結(jié)構(gòu)

李本齋,吳從中,陳家銀

(合肥工業(yè)大學(xué) 計算機與信息學(xué)院,安徽 合肥 230009)

1 引言

H.264標(biāo)準(zhǔn)的編碼效率與之前的視頻壓縮標(biāo)準(zhǔn)相比有了明顯提高,但這是以運算復(fù)雜度的增加為代價的。其中,可變塊大小的全搜索運動估計的運算量在整個編碼運算量中占約60%~80%。因此,如何提高運動估計的效率成為實時編碼的關(guān)鍵。塊匹配是運動估計最流行的方法[1],其基本思想是將圖像序列的每一幀分成許多互不重疊的宏塊,并認為宏塊內(nèi)所有像素的位移量都相同,然后對每個宏塊到參考幀某一給定特定搜索范圍內(nèi),根據(jù)一定的匹配準(zhǔn)則找出與當(dāng)前塊最相似的塊,即匹配塊。匹配塊與當(dāng)前塊的相對位移即為運動矢量。視頻壓縮時,只需保存運動矢量和殘差數(shù)據(jù)就可以完全恢復(fù)出當(dāng)前塊。它被廣泛應(yīng)用于各種視頻編碼標(biāo)準(zhǔn)中,但算法復(fù)雜度和龐大的運算量一直是視頻編碼實時實現(xiàn)的瓶頸。因此,算法研究人員研究利用快速算法降低計算的復(fù)雜度,而硬件設(shè)計人員致力于利用并行流水線技術(shù)開發(fā)有效的硬件加速器。筆者對運動估計算法進行優(yōu)化,提出了兩種適合于硬件實現(xiàn)的運動估計算法,設(shè)計出合理的硬件結(jié)構(gòu)和加速器,構(gòu)建基于PowerPC的驗證平臺,并驗證該加速器數(shù)據(jù)處理能力的正確性。

2 H.264運動估計算法優(yōu)化

在H.264標(biāo)準(zhǔn)的搜索算法中[2],圖像序列的當(dāng)前幀被劃分成互不重疊的16×16大小的子塊,而每個子塊又可劃分成更小的子塊,當(dāng)前子塊按一定的塊匹配準(zhǔn)則在參考幀中對應(yīng)位置的一定搜索范圍內(nèi)尋找最佳匹配塊,由此得到運動矢量和匹配誤差。運動估計的估計精度和運算復(fù)雜度取決于搜索策略和塊匹配準(zhǔn)則,常用的匹配準(zhǔn)則是MAD,因為它沒有乘除操作,不需要做乘法運算,實現(xiàn)簡單方便。通常使用求和絕對誤差(SAD)代替MAD,(i,j)點的絕對誤差值定義如下

式中:(i,j)為運動矢量(MV)的坐標(biāo),fk和 fk-1分別為當(dāng)前幀和上一幀圖像的相應(yīng)像素。將對應(yīng)最小的SADmin的塊用于預(yù)測。運動矢量定義為

為提高運動估計的效率,出現(xiàn)了很多快速搜索算法,如三步法、磚石搜索法、對數(shù)搜索和等級搜索等,這些算法減少了搜索點數(shù),降低了運算量,但數(shù)據(jù)流的不規(guī)則性和估計運算時間的不確定性使它們很難在硬件中實現(xiàn)。目前,硬件設(shè)計人員多采用全搜索的方法[3],即搜索前一幀搜索范圍內(nèi)的所有可能搜索點,給出最佳匹配點和運動矢量,它具有規(guī)則的數(shù)據(jù)流,有很好的搜索效果,但龐大的運算量需要很多硬件資源,降低了處理速度。如編碼 1 920×1 250@50 f/s(幀/秒)的圖像,搜索窗為16×16 時,計算量約為:3×1 024×1 920×1 250×50=3 686.4×108次/秒(每秒3 686.4億次的運算)。為減少計算量,現(xiàn)對運動估計算法進行優(yōu)化,提出以下兩種適合硬件實現(xiàn)的方法:

方法1:在搜索窗口內(nèi)以步長2進行抽樣搜索,即每隔1個像素點選1個候選宏塊,根據(jù)匹配準(zhǔn)則得到最佳匹配塊和運動矢量,如圖1所示。這種方法有規(guī)整的數(shù)據(jù)流,易于硬件實現(xiàn),搜索精度會有所降低,但可減少一半的計算量。

圖1 每隔1個像素抽樣搜索

方法2:采用兩步搜索:1)在搜索窗口內(nèi)以步長4進行初定位,即每隔3個像素點選1個候選宏塊,根據(jù)匹配準(zhǔn)則得到初定位點。2)在初定位點相鄰的4×4區(qū)域上進行全搜索,得到最佳匹配塊和運動矢量,如圖2所示,這種方法與全搜索相比約減少1-(1/4+1/16)=11/16的計算量。

圖2 初定位方式抽樣搜索

3 塊匹配運動估計結(jié)構(gòu)及加速器設(shè)計

3.1 PE結(jié)構(gòu)

圖3為PE(Processing Element)的內(nèi)部結(jié)構(gòu)。PE處理單元[4]的設(shè)計通常是先對C(當(dāng)前塊)和S(參考塊)進行差值絕對值運算,然后再將得到的結(jié)果直接與上次的SAD值累加。該PE結(jié)構(gòu)主要由1個運算模塊、1個SAD值的鎖存器(Latch)、1個累加單元(ALU)和1個輸出寄存器(REG)組成。運算單元主要完成C和S的絕對差值計算,將得到的SAD值鎖存在Latch中,同時將當(dāng)前存于Latch中的SAD值送入累加單元進行累加。當(dāng)編碼宏塊數(shù)據(jù)被掃描完一次后,累加單元中的SAD值將被送入其他單元做進一步處理,并置累加器為0,進行下一次塊匹配運算。

圖3 PE結(jié)構(gòu)

3.2 速度優(yōu)先的硬件結(jié)構(gòu)

在FPGA設(shè)計中,速度和資源是一對對立統(tǒng)一的矛盾體,要求一個系統(tǒng)同時具有較少的資源消耗和較高的運行頻率是不現(xiàn)實的。速度和資源的互換常常在FPGA設(shè)計中被用到。圖4中的速度優(yōu)先的硬件結(jié)構(gòu)[5]是以資源的犧牲為代價換取高的運行速度,同時數(shù)據(jù)帶寬相應(yīng)增加。該結(jié)構(gòu)利用16個PA(PE Array)來并行完成1個匹配點的計算,每個PA由4×4 PE組成,這樣就能同時產(chǎn)生16×16個當(dāng)前塊數(shù)據(jù)和搜索區(qū)數(shù)據(jù)的SAD計算,對于1個16×16搜索范圍,256個搜索點采用全搜索需要256個周期完成,采用方法1需要128個周期,方法2只需要80個周期,有較快的運行速度。

圖4 速度優(yōu)先的硬件結(jié)構(gòu)

3.3 資源優(yōu)先的硬件結(jié)構(gòu)

圖5中的資源優(yōu)先的硬件結(jié)構(gòu)是二維的脈動陣列結(jié)構(gòu)[6],相比于前一種結(jié)構(gòu)具有低硬件資源開銷、存儲帶寬小的優(yōu)點。利用4×4 PE陣列分時計算完1個16×16宏塊的16個4×4子塊,計算時,搜索區(qū)數(shù)據(jù)以總線方式輸入到PE的緩存中,當(dāng)前塊數(shù)據(jù)由寄存器裝入,16個PE輸出的絕對差值,被一起送入并行加法器中得到1個4×4塊的SAD。4×4 PE陣列每個周期計算1個4×4塊的SAD,在16個周期內(nèi)完成16個SAD值計算,累加得到16×16宏塊的SAD值。對于1個16×16搜索范圍,256個搜索點采用全搜索需要4 096個周期完成,而采用方法1需要2 048個周期,方法2僅需要1 280個周期。運行速度變慢,但所需資源和數(shù)據(jù)帶寬都相應(yīng)減少。

圖5 資源優(yōu)先的硬件結(jié)構(gòu)

3.4 加速器總體設(shè)計

加速器[7]的總體結(jié)構(gòu)如圖6所示,包括存儲模塊、地址產(chǎn)生模塊、PE陣列、控制單元和輸出比較模塊。存儲模塊用于緩存當(dāng)前塊和參考幀數(shù)據(jù);地址產(chǎn)生模塊產(chǎn)生讀取所需數(shù)據(jù)的相應(yīng)地址;PE陣列完成宏塊的SAD值計算;控制單元完成整個處理過程的控制和調(diào)度。MVbest為搜索到的最佳運動矢量,SADmin是對應(yīng)的最小SAD值。

圖6 加速器總體結(jié)構(gòu)

4 運動估計硬件加速器驗證平臺

筆者在Xilinx Virtex-II PRO開發(fā)板上對設(shè)計的硬件加速器進行驗證,驗證平臺結(jié)構(gòu)[8]如圖7所示。其中,PowerPC405是1個32位的定點硬核,負責(zé)總線的調(diào)度和各個模塊的協(xié)調(diào)工作;JTAG是調(diào)試接口,用于對程序的調(diào)試,系統(tǒng)有32 Mbyte的在片RAM和可擴展的DDR存儲控制器,有PLB總線和OPB總線,可以通過總線橋進行數(shù)據(jù)交互。

圖7 驗證平臺系統(tǒng)框圖

驗證時,首先使用EDK10.2構(gòu)建PowerPC的最小系統(tǒng),然后將硬件加速器集成到該系統(tǒng)中,編譯通過后由USB口下載到目標(biāo)板,系統(tǒng)開始運行后通過RS-232從上位機下載待編碼的圖像數(shù)據(jù),下載的數(shù)據(jù)保存在目標(biāo)板上的256 Mbyte DDR SDRAM中。數(shù)據(jù)下載完畢后程序?qū)⒋幋a數(shù)據(jù)依次寫入加速器并啟動,并將處理完的數(shù)據(jù)再寫入DDR SDRAM,待全部數(shù)據(jù)處理完畢,Power-PC將處理結(jié)果一起發(fā)送給上位機。上位機將結(jié)果與本機C代碼執(zhí)行結(jié)果相比較,最終確認硬件加速器的數(shù)據(jù)處理能力是否正確。

5 實驗結(jié)果分析

將文中所提到的兩種優(yōu)化算法用foreman,football,news序列在AVC下與全搜索進行了對比,結(jié)果見表1??梢?,方法1僅有平均0.45 dB的PSNR下降卻減少了50%的計算量,方法2有平均0.67 dB的PSNR下降,減少了約68.7%的計算量。

當(dāng)塊尺寸為 16,搜索范圍[-8,7],CIF@30 Hz時,對兩種硬件結(jié)構(gòu)的處理速度和資源消耗等性能進行了對比,結(jié)果見表2。

表1 優(yōu)化算法與全搜索性能對比

表2 兩種結(jié)構(gòu)性能對比

本文對H.264運動估計算法進行優(yōu)化,提出兩種適合硬件實現(xiàn)的搜索方法,表1的實驗數(shù)據(jù)表明,在不損失圖像質(zhì)量的同時,明顯減少了運算量,提高了速度。同時與硬件相結(jié)合,給出速度優(yōu)先和資源優(yōu)先的兩種結(jié)構(gòu),兩種結(jié)構(gòu)在速度和資源方面各有優(yōu)勢,設(shè)計出運動估計的硬件加速器,在Xilinx XUP Virtex-II PRO開發(fā)板中做了驗證,結(jié)果表明該加速器能正確完成H.264運動估計的數(shù)據(jù)處理功能。

[1]畢厚杰.新一代視頻壓縮編碼標(biāo)準(zhǔn)——H.264/AVC[M].北京:人民郵電出版社,2005.

[2]YANG KM,SUNM T,WU L.A family of VLSIdesigns for themotion compensation block-matching algorithm[J].IEEE Trans.Circuits and Systems,1989,36(10):1317-1325.

[3]CHENCY,HUANGCT,CHENYH,etal.LevelC+data reuse scheme formotion estimation with corresponding coding orders[J].IEEE Trans.Circuits and Systems for Video Technology,2006,16(4):553-558.

[4]王睿,林濤,林爭輝,等.一種H.264運動估計器的VLSI設(shè)計[J].微電子學(xué)與計算機,2004(11):153-157.

[5]黃衛(wèi)鋒,桑紅石,鄭兆青,等.用于H.264的高性能整像素運動估計 VLSI的設(shè)計[J].微電子學(xué),2007(4):260-264.

[6]CHENTC,HUANGYW,CHENLG.Analysisand design ofmacroblock pipelining for H.264/AVC VLSIarchitecture[EB/OL].[2009-12-20].http://ieeexplore.ieee.org/Xplore/login.jsp?url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F9255%2F29377%2F01329261.pdf%3Farnumber%3D1329261&authDecision=-203.

[7]HSU Meiyun,CHANG Haochieh,WANG Yichu,et al.Scalable module-based architecture for MPEG-4 BMA motion estimation[EB/OL].[2009-12-20].http://ntur.lib.ntu.edu.tw/bitstream/246246/2007041910021255/1/00921053.pdf.

[8]石磊,林濤,焦孟草.H.264/AVC硬件解碼器設(shè)計及其驗證策略[J].微電子學(xué),2006(2):16-19.

猜你喜歡
結(jié)構(gòu)
DNA結(jié)構(gòu)的發(fā)現(xiàn)
《形而上學(xué)》△卷的結(jié)構(gòu)和位置
論結(jié)構(gòu)
中華詩詞(2019年7期)2019-11-25 01:43:04
新型平衡塊結(jié)構(gòu)的應(yīng)用
模具制造(2019年3期)2019-06-06 02:10:54
循環(huán)結(jié)構(gòu)謹防“死循環(huán)”
論《日出》的結(jié)構(gòu)
縱向結(jié)構(gòu)
縱向結(jié)構(gòu)
我國社會結(jié)構(gòu)的重建
人間(2015年21期)2015-03-11 15:23:21
創(chuàng)新治理結(jié)構(gòu)促進中小企業(yè)持續(xù)成長
主站蜘蛛池模板: 麻豆国产在线不卡一区二区| 亚洲精品国产成人7777| 国产乱子伦无码精品小说 | 无码人妻免费| 9966国产精品视频| 婷婷六月综合网| 久久精品人人做人人爽97| 国产精品网拍在线| 国产精品免费p区| 精品久久国产综合精麻豆| 亚洲aaa视频| 国产青榴视频| 日韩美一区二区| 成人伊人色一区二区三区| 久久午夜夜伦鲁鲁片无码免费| 国产性生大片免费观看性欧美| 亚洲精品在线观看91| 伊人婷婷色香五月综合缴缴情 | 99久久免费精品特色大片| 国产99热| 欧美97欧美综合色伦图| 青青草91视频| 欧美中文字幕无线码视频| 国产精品亚洲αv天堂无码| 亚洲男人天堂网址| 亚洲国产精品久久久久秋霞影院| 夜夜爽免费视频| 四虎永久在线视频| 在线观看免费人成视频色快速| 在线播放91| 最新日韩AV网址在线观看| 久久五月天国产自| 午夜a级毛片| 一级爱做片免费观看久久| 在线看片免费人成视久网下载| 亚洲国产精品日韩av专区| 精品天海翼一区二区| 午夜视频日本| 国产特级毛片aaaaaa| 国产成人免费高清AⅤ| 日韩一级毛一欧美一国产| 国产区91| 波多野结衣AV无码久久一区| 国产乱人视频免费观看| 亚洲网综合| 国产精品伦视频观看免费| 日本一本在线视频| 国产在线无码一区二区三区| 久久精品日日躁夜夜躁欧美| 国产视频入口| 欧美黄网站免费观看| 国产精品黑色丝袜的老师| 亚洲精品卡2卡3卡4卡5卡区| 日韩欧美中文字幕一本| 婷婷久久综合九色综合88| 国产精品刺激对白在线| 天天综合天天综合| 亚洲综合精品第一页| 亚洲av无码牛牛影视在线二区| 国产综合亚洲欧洲区精品无码| 一级在线毛片| 无码中文字幕加勒比高清| 国产成熟女人性满足视频| 欧美日韩另类在线| 亚洲黄网在线| 美女无遮挡免费网站| 青青青国产视频手机| 亚洲成a人片| 日韩成人在线视频| 久久a毛片| 久久婷婷五月综合97色| 精品国产成人国产在线| 欧美日韩一区二区三区在线视频| AV在线天堂进入| 国产精女同一区二区三区久| 久久无码免费束人妻| 欧美色视频在线| 国产精品一区二区在线播放| 亚洲欧州色色免费AV| 天堂亚洲网| 日韩毛片免费视频| 欧美成人a∨视频免费观看|