機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
基于DSP的圖像旋轉(zhuǎn)算法數(shù)據(jù)調(diào)度策略
基于DSP的圖像旋轉(zhuǎn)算法數(shù)據(jù)調(diào)度策略
 更新時(shí)間:2008-8-3 15:45:02  點(diǎn)擊數(shù):6
【字體: 字體顏色


    摘 要: 為了在DSP平臺上實(shí)現(xiàn)實(shí)時(shí)大圖像旋轉(zhuǎn),結(jié)合TMS320DM642的性能結(jié)構(gòu)特點(diǎn),針對旋轉(zhuǎn)算法中嚴(yán)重影響DSP CPU效率發(fā)揮的大量非連續(xù)圖像像素地址訪問的問題,提出了基于視口圖像塊覆蓋的DSP圖像旋轉(zhuǎn)算法數(shù)據(jù)調(diào)度策略,對算法的結(jié)構(gòu)流程進(jìn)行了優(yōu)化調(diào)整。
關(guān)鍵詞: 大圖像旋轉(zhuǎn);數(shù)據(jù)調(diào)度;DM642;DSP;實(shí)時(shí);優(yōu)化

    圖像旋轉(zhuǎn)是一種應(yīng)用廣泛的數(shù)字圖像處理技術(shù),隨著應(yīng)用水平的不斷提高,對在嵌入式系統(tǒng)中實(shí)現(xiàn)高分辨率大圖像旋轉(zhuǎn)的需求也越來越高。如在航空領(lǐng)域的高分辨率數(shù)字地圖圖像的顯示處理過程中,由于現(xiàn)有的顯示芯片均不能支持圖像旋轉(zhuǎn)功能,就需要在資源有限的嵌入式平臺上實(shí)現(xiàn)大幅面地圖圖像的實(shí)時(shí)旋轉(zhuǎn)。采用DSP平臺是一種實(shí)現(xiàn)方式,具體實(shí)現(xiàn)時(shí)需仔細(xì)考慮兩個方面的問題,一是選用計(jì)算量小的旋轉(zhuǎn)算法,二是充分發(fā)揮DSP平臺強(qiáng)大的并行計(jì)算能力。
    目前,已經(jīng)有很多有效降低計(jì)算量的圖像旋轉(zhuǎn)算法,基于圖像線性存儲結(jié)構(gòu)的旋轉(zhuǎn)方法[1]就是其中之一。然而,在DSP平臺上,有限的高速存儲資源限制了這些算法效率的直接發(fā)揮,需要針對算法及DSP平臺的性能結(jié)構(gòu)特點(diǎn)進(jìn)行高效的數(shù)據(jù)調(diào)度。對于圖像旋轉(zhuǎn)問題而言,數(shù)據(jù)調(diào)度還需要克服由于存在大量非連續(xù)圖像像素地址訪問而嚴(yán)重影響DSP數(shù)據(jù)存取及CPU效率發(fā)揮的問題。這是圖像旋轉(zhuǎn)本身的特殊性,在其他圖像處理技術(shù)中是不存在的。本文主要討論如何利用TI公司TMS320DM642芯片的資源特點(diǎn),進(jìn)行高效圖像旋轉(zhuǎn)的大規(guī)模數(shù)據(jù)調(diào)度,從而實(shí)現(xiàn)適用于大圖像的DSP實(shí)時(shí)圖像旋轉(zhuǎn)。
1 基于圖像線性存儲結(jié)構(gòu)的旋轉(zhuǎn)方法介紹
    目前,圖像旋轉(zhuǎn)大多采用基于視口映射的處理。視口是指屏幕上的顯示區(qū)域范圍,方法是先計(jì)算出旋轉(zhuǎn)后視口圖像像素在源圖像中的坐標(biāo)地址值,再依據(jù)該地址在源圖像中對應(yīng)讀取像素值,最后利用讀取的像素值進(jìn)行插值,得到最終旋轉(zhuǎn)后視口圖像。實(shí)際上,由于存在對稱性,一幅圖像任意角度的旋轉(zhuǎn)可分解為一次90°或180°或270°的旋轉(zhuǎn),再加上一次±45°以內(nèi)的旋轉(zhuǎn)。
    傳統(tǒng)的圖像旋轉(zhuǎn)一般通過矩陣乘法實(shí)現(xiàn):

   

其中,α為旋轉(zhuǎn)角度。
    本文選用的張克黛[1]等人提出的基于圖像線性存儲結(jié)構(gòu)的旋轉(zhuǎn)方法是一種理論上運(yùn)算效率較高的方法。下面具體介紹。
    由于圖像是線性存儲的,各個像素點(diǎn)之間的相對位置關(guān)系確定。如圖1(a)所示,圖像旋轉(zhuǎn)前,任意像素點(diǎn)P(x,y)和P1(x1,y1)、P2(x2,y2)及A(xA,yA)在幾何上是矩形的四頂點(diǎn)關(guān)系。由于旋轉(zhuǎn)變換是線性變換,如圖1(b)所示,圖像旋轉(zhuǎn)后,各個像素點(diǎn)之間的相對位置關(guān)系不發(fā)生變化,

   

 

   

 

    所以,對圖像作旋轉(zhuǎn)變換,只需對第一行和第一列的像素用式(1)作矩陣乘法運(yùn)算,對除第一行和第一列以外的像素,用式(2)進(jìn)行簡單的加減運(yùn)算即可。這樣避免了對整幅圖像的每個像素作矩陣乘法運(yùn)算,可節(jié)省5~6倍的CPU周期。
    另外,對于旋轉(zhuǎn)計(jì)算后非整數(shù)像素地址的插值,本文采用雙線性插值法,基本能夠滿足對圖像質(zhì)量的要求。
2 圖像旋轉(zhuǎn)的DSP結(jié)構(gòu)優(yōu)化
2.1 TMS320DM642結(jié)構(gòu)特點(diǎn)

    該芯片的結(jié)構(gòu)如圖2所示,它基于C64x內(nèi)核,采用TI的第二代高級超長指令字結(jié)構(gòu),可在600MHz時(shí)鐘頻率下工作,每個指令周期可并行8條32位指令,可達(dá)到4 800MIPS的峰值計(jì)算速度。DM642具有64個增強(qiáng)DMA(EDMA)通道,可進(jìn)行高效的一維及二維數(shù)據(jù)傳輸,二維數(shù)據(jù)傳輸可用于一個矩形圖像數(shù)據(jù)塊的高速搬移。

 


    DM642的存儲空間由片內(nèi)和片外兩級存儲體系構(gòu)成,其中片內(nèi)存儲器又分為L1和L2兩層。第一層L1為CPU Cache,其訪問速度與CPU的速度相匹配,包括相互獨(dú)立的L1P(16KB)和L1D(16KB);第二層L2(256KB)具有靈活的RAM/Cache分配。片外存儲器具備32位的訪問地址,通過EDMA控制器和EMIF外部存儲器接口進(jìn)行數(shù)據(jù)訪問。其中,片內(nèi)存儲器和片外存儲器在訪問速度方面存在很大差異。
    此外,作為多媒體處理專用芯片,DM642具有用于視頻數(shù)據(jù)I/O的專用接口,易于實(shí)現(xiàn)視頻信號的顯示輸出。
2.2 旋轉(zhuǎn)算法的結(jié)構(gòu)優(yōu)化
    針對DM642性能結(jié)構(gòu)特點(diǎn)的算法結(jié)構(gòu)優(yōu)化,其目的是使上述大圖像旋轉(zhuǎn)快速算法的效率能夠在DSP平臺上得到充分發(fā)揮,其核心思想是合理優(yōu)化存儲空間分配和數(shù)據(jù)傳輸流,使CPU能連續(xù)不斷地處理圖像數(shù)據(jù),消除處理過程中的等待延遲。
    由DSP的結(jié)構(gòu)特點(diǎn)可知,只有在數(shù)據(jù)和程序均位于片內(nèi)存儲器當(dāng)中的條件下,DSP的效率才能得到最大化的發(fā)揮。在大圖像旋轉(zhuǎn)算法中,由于涉及的圖像數(shù)據(jù)量遠(yuǎn)大于DSP的片內(nèi)存儲器容量,源圖像和最終視口圖像等數(shù)據(jù)必須被存放在片外存儲器中。在這種情況下,為了保證DSP CPU高速處理能力的發(fā)揮,必須優(yōu)化數(shù)據(jù)流,將源圖像分塊,依次搬移至片內(nèi)處理,并設(shè)法保證CPU當(dāng)前要處理的圖像數(shù)據(jù)塊已經(jīng)事先在片內(nèi)存儲器中準(zhǔn)備好了。因此在算法整體優(yōu)化結(jié)構(gòu)上采用Ping-Pong雙緩沖技術(shù),利用EDMA與CPU并行工作來隱藏圖像數(shù)據(jù)塊在片內(nèi)和片外之間的傳輸時(shí)間,使CPU能連續(xù)不斷地處理數(shù)據(jù),中間不會出現(xiàn)空閑等待。
    Ping-Pong雙緩沖是一種同時(shí)利用兩個數(shù)據(jù)緩沖區(qū)的數(shù)據(jù)傳輸技術(shù),它將SRAM分成兩大塊,一塊用于存儲源圖像塊,另一塊用于存儲旋轉(zhuǎn)后的圖像塊;每一個存儲塊又分為兩個區(qū)(Ping區(qū)和Pong區(qū)),輪流用于圖像塊傳輸和處理。其具體并行工作流程如圖3所示。

 

[1] [2] [3]  下一頁
  • 上一篇: 一種新型汽車空調(diào)節(jié)能控制器的設(shè)計(jì)
  • 下一篇: ADS7852與TLV5613在DSP中的接口設(shè)計(jì)
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1