国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于DSP的H.264運(yùn)動(dòng)估計(jì)算法研究*

2013-02-21 04:02郭明松張麗暉周勁蕾藺吉虹
關(guān)鍵詞:搜索算法解碼編碼

郭明松,張麗暉,周勁蕾,藺吉虹,陳 芬

(寧波大學(xué) 信息科學(xué)與工程學(xué)院,浙江 寧波 315211)

隨著信息技術(shù)的發(fā)展,21世紀(jì)被形象地稱(chēng)為信息時(shí)代、數(shù)字時(shí)代、多媒體時(shí)代。多媒體信息主要包括文字、聲音、圖像、圖形和視頻等內(nèi)容,其中,視頻又是多媒體信息中最重要的組成部分。無(wú)論是存儲(chǔ)還是傳輸,數(shù)字視頻都必須經(jīng)過(guò)極大的壓縮才具有實(shí)際意義,這就使得視頻壓縮技術(shù)成為多媒體技術(shù)的關(guān)鍵所在。目前最優(yōu)秀的視頻編碼標(biāo)準(zhǔn)是H.264,但是它的優(yōu)異性能是以巨大的運(yùn)算量為代價(jià)的,這其中運(yùn)動(dòng)估計(jì)就占了70%,因此,對(duì)運(yùn)動(dòng)估計(jì)算法的研究具有很大的實(shí)用價(jià)值。

運(yùn)動(dòng)估計(jì)是視頻編碼中的一項(xiàng)核心技術(shù),能有效去除序列圖像的幀間冗余從而實(shí)現(xiàn)高效編碼。它利用在同一場(chǎng)景中相鄰兩幅圖像具有的時(shí)域相關(guān)性,在參考幀中搜索當(dāng)前塊的最佳匹配塊并計(jì)算兩塊的相對(duì)位移量,即運(yùn)動(dòng)矢量。當(dāng)前有很多經(jīng)典的運(yùn)動(dòng)估計(jì)算法,如全搜索算法、三步搜索算法 3SS(Three Step Search)、菱形搜索算法 DS(Diamond Search)和六邊形搜索算法 HEXBS(Hexa-gon Based Search)等。本文主要研究三步搜索算法在DSP平臺(tái)上的移植,并加入人機(jī)接口,設(shè)計(jì)一個(gè)基于運(yùn)動(dòng)估計(jì)算法的DSP應(yīng)用系統(tǒng)。

基于DSP實(shí)現(xiàn)該算法有以下優(yōu)勢(shì):(1)用戶(hù)開(kāi)發(fā)自由度更大,支持多種個(gè)性化開(kāi)發(fā),可以滿(mǎn)足市場(chǎng)不斷提出的新的要求,在第一時(shí)間提升產(chǎn)品性能,增強(qiáng)產(chǎn)品的競(jìng)爭(zhēng)能力;(2)DSP處理能力強(qiáng),可以在一個(gè)DSP上同時(shí)實(shí)現(xiàn)多路音視頻信號(hào)的壓縮處理,還可提供很多視頻專(zhuān)用功能,如視頻濾波、高分辨顯示輸出和 OSD等;(3)外圍接口豐富,開(kāi)發(fā)周期短,可實(shí)現(xiàn)快速技術(shù)更新和產(chǎn)品換代;(4)芯片功耗低,為提高產(chǎn)品的穩(wěn)定性提供可靠保障。

1 基于運(yùn)動(dòng)估計(jì)算法的DSP應(yīng)用系統(tǒng)總體設(shè)計(jì)

本文用SEED-DEC6437開(kāi)發(fā)板、攝像頭和液晶顯示器等搭建了硬件平臺(tái),在其上實(shí)現(xiàn)對(duì)采集的實(shí)時(shí)視頻的相鄰兩幀進(jìn)行運(yùn)動(dòng)估計(jì),在參考幀中找到最佳匹配塊并計(jì)算出相應(yīng)的運(yùn)動(dòng)矢量,同時(shí)加入人機(jī)接口,通過(guò)用戶(hù)按鍵,靈活地切換到不同的工作模式。系統(tǒng)流程圖如圖1所示。

圖1 基于運(yùn)動(dòng)估計(jì)算法的DSP應(yīng)用系統(tǒng)整體流程圖

整個(gè)系統(tǒng)的數(shù)據(jù)流程為:首先從CCD攝像頭采集PAL制式模擬視頻信號(hào),通過(guò)視頻解碼芯片TVP5150將模擬信號(hào)解碼成YCbCr422格式的數(shù)字圖像信號(hào)[1],并通過(guò)數(shù)據(jù)總線(xiàn)將數(shù)據(jù)存儲(chǔ)至DDR2,TMS320DM6437通過(guò)訪問(wèn)DDR2進(jìn)行視頻數(shù)據(jù)的相應(yīng)處理。在本系統(tǒng)中,數(shù)據(jù)處理過(guò)程主要在于實(shí)現(xiàn)運(yùn)動(dòng)估計(jì)算法,通過(guò)CCS3.3軟件中的Watch Window查看計(jì)算出的運(yùn)動(dòng)矢量。

2 基于SEED-DEC6437視頻回路設(shè)計(jì)

在進(jìn)行運(yùn)動(dòng)估計(jì)之前,首先要在SEED-DEC6437開(kāi)發(fā)板上搭建視頻回路,該回路包括視頻輸入模塊、算法處理模塊和視頻輸出模塊3部分。SEED-DEC6437開(kāi)發(fā)板上的TMS320DM6437處理器中集成的視頻處理子系統(tǒng)(VPSS)包含視頻處理前端(VPFE)[2]和視頻處理后端(VPBE)[3]。VPFE用于視頻輸入,可以連接 PAL標(biāo)準(zhǔn)模擬視頻輸入信號(hào),也可以連接數(shù)字視頻輸入信號(hào)。

2.1 系統(tǒng)的視頻輸入模塊設(shè)計(jì)

系統(tǒng)視頻輸入是利用解碼芯片TVP5150將模擬信號(hào)解碼成YCbCr422格式的數(shù)字圖像信號(hào),再送入TMS320DM6437進(jìn)行相應(yīng)的圖像處理。TVP5150是一款高性能的視頻解碼芯片,可以將PAL制式的視頻信號(hào)或NTSC制式的視頻信號(hào)轉(zhuǎn)換成YCbCr422格式的數(shù)字信號(hào)。TMS320DM6437與TVP5150的連接框圖如圖2所示,在SEED-DEC6437開(kāi)發(fā)板上接一路復(fù)合視頻輸入。

圖2 TVP5150與TMS320DM6437鏈接示意圖

TVP5150實(shí)時(shí)輸出的視頻圖像數(shù)據(jù)為符合ITU-R BT.656標(biāo)準(zhǔn)的 YCbCr 4:2:2數(shù)字視頻圖像數(shù)據(jù),其特點(diǎn)是,每個(gè)像素點(diǎn)具有自己?jiǎn)为?dú)的亮度信息Y,但是每?jī)蓚€(gè)相鄰的像素共用同一組色度數(shù)據(jù)Cb和Cr。

2.2 系統(tǒng)的視頻輸出模塊設(shè)計(jì)

TMS320DM6437視頻輸出是利用內(nèi)置的VPSS的視頻輸出編碼模塊(VENC)中 4路 10 bit的 DAC輸出,實(shí)現(xiàn)CVBS與VGA的輸出。其中,CVBS輸出接口使用了其中1路DAC,VGA輸出接口使用了共3路的DAC。本系統(tǒng)在設(shè)計(jì)過(guò)程中主要采用以composite復(fù)合信號(hào)的形式來(lái)進(jìn)行最終實(shí)時(shí)圖像的輸出顯示。其視頻輸出連接示意圖如圖3所示。

圖3 視頻輸出示意圖

3 系統(tǒng)的運(yùn)動(dòng)估計(jì)算法設(shè)計(jì)

3.1 H.264編碼器框架

圖4為H.264編碼器的主體結(jié)構(gòu)。其中,F(xiàn)n為當(dāng)前欲編碼的幀,它是以宏塊為單位進(jìn)行編碼處理的,每個(gè)宏塊是以幀內(nèi)或幀間模式進(jìn)行編碼。Fn-1是指前面已解碼的多個(gè)參考幀,在幀間模式下,宏塊根據(jù)參考幀F(xiàn)n-1進(jìn)行運(yùn)動(dòng)估計(jì)ME (Motion Estimation)和運(yùn)動(dòng)補(bǔ)償(Motion Compensation)得到預(yù)測(cè)值P,預(yù)測(cè)值與當(dāng)前幀F(xiàn)n得到殘差值,再對(duì)該殘差值進(jìn)行變換編碼T與量化Q,得到變換量化系數(shù);最后經(jīng)墑編碼輸出到網(wǎng)絡(luò)提取層 NAL(Network Abstraction Layer)。 Fn′為經(jīng)過(guò)濾波得到的重構(gòu)圖像,它將被放入?yún)⒖紟鎯?chǔ)器作為下一幀或幾幀編碼的參考幀之一。其中,運(yùn)動(dòng)估計(jì)是基礎(chǔ),也是運(yùn)算量最大的部分。

圖4 H.264編碼器流程

3.2 運(yùn)動(dòng)估計(jì)算法的DSP移植

運(yùn)動(dòng)估計(jì)的基本思想是將圖像序列的每一幀分成許多互不重疊的宏塊,并認(rèn)為宏塊內(nèi)所有像素的位移量都相同,然后對(duì)于當(dāng)前幀中的每一塊的前一幀或后一幀在某一給定搜索范圍內(nèi),根據(jù)一定的匹配準(zhǔn)則找出與當(dāng)前塊最相似的塊,即匹配塊由匹配塊與當(dāng)前塊的相對(duì)位置計(jì)算出運(yùn)動(dòng)位移,所得的運(yùn)動(dòng)位移即為當(dāng)前塊的運(yùn)動(dòng)矢量。

基于塊匹配的運(yùn)動(dòng)估計(jì)可以從塊的模式選擇、塊匹配準(zhǔn)則和搜索策略3個(gè)方面進(jìn)行研究。

(1)在 H.264 編碼標(biāo)準(zhǔn)中,有7個(gè)塊的模式可供選擇, 分別為 16×16、16×8、8×16、8×8、8×4、4×8、4×4,本文采用 8×8模式。

(2)運(yùn)動(dòng)估計(jì)算法中常用的匹配準(zhǔn)則有最小絕對(duì)差(MAD)、最小均方誤差 (MSE)和歸一化互相關(guān)函數(shù)(NCCF)3種。在運(yùn)動(dòng)估計(jì)中,匹配準(zhǔn)則對(duì)匹配的精度影響不大,由于求和絕對(duì)誤差SAD (Sum ofAbsolute Difference)準(zhǔn)則不需作乘法運(yùn)算,實(shí)現(xiàn)簡(jiǎn)單、方便,因此使用最多,通常使用SAD代替MAD。SAD定義為:

其中,fk(m,n)是當(dāng)前幀的亮度值,fk-1(m+i,n+j)為參考幀中相應(yīng)塊的亮度值。

(3)搜索策略是否恰當(dāng)對(duì)運(yùn)動(dòng)估計(jì)的準(zhǔn)確性、運(yùn)動(dòng)估計(jì)的速度都有很大影響。有關(guān)搜索策略的研究主要是解決運(yùn)動(dòng)估計(jì)中存在的運(yùn)算復(fù)雜度和搜索精度這一矛盾。目前運(yùn)動(dòng)估計(jì)的搜索方法很多,有全搜索法(FS)、二維對(duì)數(shù)法(TDL)、三步法(TSS)、交叉法(CS)、新三步法(NTSS)、四步法(FSS)、菱形法(DS)和運(yùn)動(dòng)場(chǎng)自適應(yīng)搜索算法(MVFAST)等。本文對(duì)三步搜索算法在DSP上的移植進(jìn)行研究。

三步搜索算法描述如下:

(1)三步搜索算法以略大于最大搜索范圍的一半開(kāi)始進(jìn)行搜索,計(jì)算搜索中心點(diǎn)四周的正方形區(qū)域,計(jì)算正方形8個(gè)點(diǎn)的SAD值,算出其中最小的一個(gè)也是最匹配的一個(gè);

(2)搜索范圍減半,在以匹配點(diǎn)為搜索中心的小正方形范圍內(nèi)繼續(xù)搜索,計(jì)算小正方形的SAD值,再判斷其中最小的一個(gè);

(3)以匹配點(diǎn)為中心進(jìn)行更小的正方形搜索,最終SAD值最小的宏塊即為最匹配的宏塊。

對(duì)采集到的相鄰兩幀圖像用三步搜索算法進(jìn)行處理,如圖5所示。

經(jīng)過(guò)三步搜索算法搜索到最佳匹配塊后,將當(dāng)前幀的當(dāng)前塊的坐標(biāo)與最佳匹配塊坐標(biāo)相減,得到運(yùn)動(dòng)矢量。本文對(duì)8×8的塊進(jìn)行搜索,第1步中步長(zhǎng)取4,第2步中步長(zhǎng)取2,第3步中步長(zhǎng)取1,搜索結(jié)果如圖6所示。其中,temp為一個(gè)含9個(gè)元素的一維數(shù)組,存放9個(gè)點(diǎn)的SAD值;mvx和mvy為SAD值最小點(diǎn)的坐標(biāo),通過(guò)該坐標(biāo)可以計(jì)算出相應(yīng)的運(yùn)動(dòng)矢量。

4 人機(jī)接口和DSP/BIOS任務(wù)調(diào)度

4.1 人機(jī)接口

人機(jī)接口如圖7所示。通過(guò)鍵盤(pán)控制算法選擇,同時(shí)在液晶上顯示相應(yīng)的算法名稱(chēng)。按鍵和液晶都是通過(guò)TMS320C5402 DSP控制,TMS320C5402DSP通過(guò)多通道緩沖串口McBSP與TMS320DM6437通信,從而實(shí)現(xiàn)上述功能。

圖7 人機(jī)接口框圖

4.2 DSP/BIOS任務(wù)調(diào)度

為了增強(qiáng)系統(tǒng)的實(shí)時(shí)性和靈活性,本文使用了DSP/BIOS來(lái)調(diào)度任務(wù)。本文設(shè)置了一個(gè)硬件中斷,兩個(gè)任務(wù),分別為McBSP硬件中斷、視頻回路任務(wù)和算法選擇任務(wù)。設(shè)置兩個(gè)任務(wù)的優(yōu)先級(jí)相同,通過(guò)TSK_yield()函數(shù)來(lái)切換任務(wù)。DSP/BIOS的任務(wù)時(shí)序圖如圖8所示。

本文以SEED-DEC6437開(kāi)發(fā)板為核心硬件,成功搭建了視頻回路,并在CCS3.3環(huán)境下編寫(xiě)算法代碼,實(shí)現(xiàn)了基于DSP的運(yùn)動(dòng)估計(jì)算法,取到了運(yùn)動(dòng)矢量。為了增強(qiáng)系統(tǒng)的靈活可控性和實(shí)時(shí)性,又成功加入了人機(jī)接口,成功實(shí)現(xiàn)了DSP/BIOS任務(wù)調(diào)度。

[1]Wu Xiaomin, Xu Weizhang, Zhu Nanhao, et al.A fast motion estimation algorithm forH.264 [C].International Conference on Signal Acquisition and Processing, IC5AP′10, 2010: 112-116.

[2]Jing Xuan,CHAU L P.An efficient three-step search algorithm for block motion estimation[J].IEEE Transactions on Multimedia, 2004, 6(3): 435-438.

[3]Texas Instruments Incorporated.TMS320DM6437 evaluation module(EVM)quick start installation guide[Z].2006.

[4]Texas Instruments Incorporated.TMS320DM643x DMP video processing front end(VPFE) user′s guide[Z].2008.

[5]王亮,徐佩霞.基于 DSP實(shí)時(shí)實(shí)現(xiàn)的H.264運(yùn)動(dòng)估計(jì)快速算法[J].小型微型計(jì)算機(jī)系統(tǒng),2005,26(11):2025-2028.

[6]雷琳,張俊峰,劉京,等.一種基于 H.264的改進(jìn)的運(yùn)動(dòng)估計(jì)三步搜索算法 [J].計(jì)算機(jī)技術(shù)與發(fā)展,2010,20(12):1-7.

[7]王恒,朱金秀.H.264快速運(yùn)動(dòng)估計(jì)算法研究[J].海大學(xué)常州分校學(xué)報(bào),2007,21(4):24-27.

[8]蔡自興,蔣冬冬,譚平,等.H.264中快速運(yùn)動(dòng)估計(jì)算法的一種改進(jìn)方案 [J].計(jì)算機(jī)應(yīng)用研究,2010,27(4):1524-1529.

[9]彭啟琮.達(dá)芬奇技術(shù)——數(shù)字圖像/視頻信號(hào)處理新平臺(tái)[M].北京:電子工業(yè)出版社,2008.

猜你喜歡
搜索算法解碼編碼
《解碼萬(wàn)噸站》
基于SAR-SIFT和快速稀疏編碼的合成孔徑雷達(dá)圖像配準(zhǔn)
改進(jìn)的非結(jié)構(gòu)化對(duì)等網(wǎng)絡(luò)動(dòng)態(tài)搜索算法
改進(jìn)的和聲搜索算法求解凸二次規(guī)劃及線(xiàn)性規(guī)劃
《全元詩(shī)》未編碼疑難字考辨十五則
子帶編碼在圖像壓縮編碼中的應(yīng)用
解碼eUCP2.0
NAD C368解碼/放大器一體機(jī)
Quad(國(guó)都)Vena解碼/放大器一體機(jī)
Genome and healthcare
建平县| 天全县| 关岭| 三河市| 积石山| 普洱| 合江县| 安义县| 广宗县| 四会市| 沙田区| 兴业县| 津南区| 高淳县| 东莞市| 策勒县| 丰城市| 得荣县| 六盘水市| 武强县| 金湖县| 崇明县| 偃师市| 保靖县| 陆川县| 增城市| 沛县| 乌兰县| 蒲江县| 砀山县| 高清| 龙岩市| 永清县| 福安市| 惠来县| 馆陶县| 威海市| 沅陵县| 田阳县| 黄冈市| 保康县|