Blackfin處理器在工業(yè)圖像處理中的設(shè)計(jì)應(yīng)用
由于處理器(PC))能提供低成本、小尺寸、可擴(kuò)展的圖像處理系統(tǒng),所以它們比功耗和價(jià)格較高的其它同類系統(tǒng)更具吸引力。公司的處理器系列時(shí)鐘頻率為,包括便于高效數(shù)據(jù)搬移和處理的增強(qiáng)結(jié)構(gòu),這種結(jié)構(gòu)類似雙乘法累加單元,提供了用作視頻和數(shù)據(jù)通道的高速并行接口。下面將介紹一些常用的圖像處理和視頻處理的算法,以說(shuō)明處理器的這些特性如何在當(dāng)今的圖像處理系統(tǒng)中發(fā)揮其作用。
本文引用地址:http://m.butianyuan.cn/article/166748.htm1Blackfin處理器具有很多適合于圖像應(yīng)用的特點(diǎn)
2Blackfin 處理器由于具有雙單元,所以可以在個(gè)周期內(nèi)產(chǎn)生兩個(gè)輸出點(diǎn),相當(dāng)于每個(gè)周期做一個(gè)×卷積
1所示,靠近內(nèi)核處理器的等級(jí)是最快的,但是通常容量太小而沒有大的圖像緩存。這也是直接存儲(chǔ)器存取如此重要的原因之一。在方式下,數(shù)據(jù)框架可以將數(shù)據(jù)從快速內(nèi)存中存入和取出,同時(shí)源自視頻外圍設(shè)備的數(shù)據(jù)裝入片外較大的緩沖器中??刂破鳘?dú)立于內(nèi)核處理器工作,而內(nèi)核周期僅僅用于在傳輸完成時(shí)提供中斷。下面介紹的每種算法都利用了一些基于的框架類型以達(dá)到盡可能最佳性能。選擇這些算法是因?yàn)樗鼈冞m用在很廣的應(yīng)用領(lǐng)域。
3×卷積
3×的掩碼,但是掩碼又不能太小,否則將無(wú)法檢測(cè)出一幅圖像的邊緣。
2示出了個(gè)矩陣:一個(gè)輸入矩陣,一個(gè)×掩碼矩陣和一個(gè)輸出矩陣。通過適當(dāng)?shù)貙?duì)其輸入數(shù)據(jù),處理器的單元能夠在一個(gè)處理器周期內(nèi)每次處理兩個(gè)輸出點(diǎn),同時(shí)讀取與運(yùn)算并行執(zhí)行的多個(gè)數(shù)據(jù)。這種方法允許對(duì)每次循環(huán)重復(fù)周期或者每像素周期的雙輸出點(diǎn)的高效計(jì)算。
3×卷積內(nèi)核來(lái)逼近水平邊緣和垂直邊緣。第一個(gè)矩陣檢測(cè)垂直邊緣的變化,而第二個(gè)矩陣檢測(cè)水平邊緣的變化。
Blackfin處理器采用保留×像素圖像兩個(gè)梯度中的較大值的方法,處理一幀大約要用,同時(shí),它使用基于的二維數(shù)據(jù)框架從快速處理器內(nèi)存中存取數(shù)據(jù)。
Blackfin處理器的幾個(gè)特性
Blackfin處理器上,即使處理器有級(jí)通道,一個(gè)預(yù)分支的處理也可以小至一個(gè)周期。這對(duì)具有信號(hào)處理功能的處理器來(lái)說(shuō)是相當(dāng)可觀的,而且這顯然有助于縮短這種情況下的計(jì)算時(shí)間。
Blackfin處理器信號(hào)處理功能可以在一個(gè)周期內(nèi)完成兩個(gè)乘法運(yùn)算,同時(shí)訪問兩次存儲(chǔ)器讀取累加表值。事實(shí)證明,這種方式可以很好地完成定點(diǎn)霍夫變換,效果與浮點(diǎn)計(jì)算相當(dāng)。
// loop over the values
a0 += a1; // add the results
Blackfin處理器提供一個(gè)矢量指令以從兩個(gè)操作數(shù)對(duì)中找出兩個(gè)最大值。這種處理方法可以有效地將找出一個(gè) N
MAC和算術(shù)邏輯單元外,處理器還有可以應(yīng)用于單周期指令的四個(gè)附加的。這四個(gè)可以同時(shí)處理四組字節(jié)例如添加、刪減和求平均。在包含圖像幀之間的運(yùn)動(dòng)估算中非常有用。
8 位減法絕對(duì)值累加指令減去四對(duì)值,取每個(gè)差值的絕對(duì)值,并將每個(gè)結(jié)果累加到一個(gè)累加器中,從而對(duì)物體運(yùn)動(dòng)進(jìn)行辨別??傊?處理器有多種有效檢測(cè)相鄰圖像幀運(yùn)動(dòng)的方法。
FFT
(FFT)是計(jì)算離散傅立葉變換的快速算法。在計(jì)算二維數(shù)據(jù)時(shí),其主要用途包括通過快速卷積濾波、快速相關(guān)、圖像增強(qiáng)和物體識(shí)別。×圖像的二維大小也應(yīng)是×。其旋轉(zhuǎn)因子通常在運(yùn)行時(shí)間之前計(jì)算。
FFT算法高效運(yùn)算的位反轉(zhuǎn)和蝴蝶加減指令。為了完成二維位反轉(zhuǎn),將×輸入圖像展開成大小為2的一維矢量,這主要是因?yàn)橛晌环崔D(zhuǎn)一維矢量生成的轉(zhuǎn)置矩陣等于二維位反轉(zhuǎn)。
16×合成二維要求的周期數(shù)目是包括開銷。這段代碼實(shí)際上可以通過將輸入數(shù)組元素的虛部設(shè)為零而用來(lái)計(jì)算實(shí)數(shù)。對(duì)于使用復(fù)數(shù)代碼的更高效實(shí)數(shù)執(zhí)行方法,兩個(gè)實(shí)數(shù)矩陣可被打包為復(fù)數(shù)二維的一個(gè)復(fù)數(shù)輸入。這種被稱為“打包和分裝”或者“大量生產(chǎn)”的方法需要后端處理來(lái)分離輸出,并需要兩個(gè)圖像來(lái)變換。但這在快速卷積和快速相關(guān)中通常不是問題,因?yàn)閮蓚€(gè)變換總是需要計(jì)算的。
Blackfin處理器的體系構(gòu)造有助于使其成為工業(yè)圖像處理系統(tǒng)中非常有用的處理器。此外,公司還提供基于處理器的圖像處理和分析的公用“圖像處理工具箱”內(nèi)核。最新的樣片――將以太網(wǎng)、控制器和接口集成在一顆芯片上,增強(qiáng)了外圍設(shè)備功能,加上這些工具,將會(huì)大大擴(kuò)展工業(yè)圖像處理應(yīng)用領(lǐng)域的范圍。
評(píng)論