新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計應(yīng)用 > 基于FPGA器件的Sobel算法實現(xiàn)

基于FPGA器件的Sobel算法實現(xiàn)

作者: 時間:2009-03-20 來源:網(wǎng)絡(luò) 收藏

0引言

本文引用地址:http://m.butianyuan.cn/article/192125.htm

邊緣檢測技術(shù)是圖像處理的一項基本技術(shù),在工業(yè)、航天、醫(yī)學(xué)、軍事等領(lǐng)域中有著廣泛的應(yīng)用。邊緣檢測的實現(xiàn)涉及復(fù)雜的計算步驟,故對處理速度有較高要求。采用實現(xiàn)系統(tǒng)設(shè)計是一種純硬件的解決方案,該方案可以使系統(tǒng)具備較高的實時性,能比較好地解決軟件編程方式所導(dǎo)致的處理速度問題。

1

在眾多的圖像邊緣檢測中,Soble算法具有計算簡便、檢測效果好等優(yōu)點,是一種被廣泛應(yīng)用的算法。算法依據(jù)圖像邊緣的灰度值會產(chǎn)生突變的原理,來對像素的灰度值進(jìn)行處理。在圖1所示的3×3像素窗中,中間像素[i,j]為待檢測像素,算法分別對此像素窗進(jìn)行水平(H)、垂直(V)、左對角(L)、右對角(R)四個方向的灰度值濾波運算,公式如下:



c=2。這里的H,V,L,R是為了計算梯度的大小和方向。梯度大小可由下式得到普遍估計:


若此幅值大于給定的某閾值,則可判定像素點[i,j]為邊緣像素,否則為一般像素。梯度方向與四個濾波值中絕對值最大的方向一致。

2 系統(tǒng)設(shè)計

一個完整的圖像邊緣檢測系統(tǒng)主要包括以下三個功能模塊:像素窗生成模塊、邊緣檢測模塊以及輸出處理模塊,圖2所示是邊緣檢測系統(tǒng)示意圖。其中像素窗生成模塊主要負(fù)責(zé)生成供邊緣檢測模塊計算的3×3像素窗;邊緣檢測模塊采用Soble算法對此像素窗進(jìn)行處理,以判斷中心像素是否為邊緣像素;輸出處理模塊負(fù)責(zé)后續(xù)處理任務(wù)(如生成完整的邊緣圖像)。


2.1 系統(tǒng)設(shè)計思路

本文主要討論邊緣檢測模塊的設(shè)計。這里使用行為域建模的方式對系統(tǒng)進(jìn)行算法描述。該方法可以使系統(tǒng)行為與結(jié)構(gòu)相分離,設(shè)計者只需對系統(tǒng)的功能進(jìn)行算法描述而不必關(guān)心系統(tǒng)具體的硬件構(gòu)成方式。這種設(shè)計方法在設(shè)計過程中借鑒了軟件設(shè)計的靈活性優(yōu)點,而設(shè)計結(jié)果則是具有高運算速度的硬件電路。

這種設(shè)計思路不必依次設(shè)計加法器、寄存器、比較器等功能單元。由于Sobel算法中的邊緣檢測主要包含兩個步驟:一是對像素窗進(jìn)行四個方向濾波;二是對濾波值進(jìn)行決斷。因此,可采用狀態(tài)機方式來描述系統(tǒng)功能。但這里需要三個狀態(tài):空閑態(tài)(IDLE)、濾波態(tài)(FILTER)和決斷態(tài)(JUDGE),圖3所示是其系統(tǒng)狀態(tài)圖。



圖3中的IDLE為邊緣檢測模塊默認(rèn)的初始狀態(tài),此狀態(tài)下不進(jìn)行任何處理動作。如果模塊接收到有效的檢測啟動信號,則轉(zhuǎn)入FILTER狀態(tài)。在此狀態(tài)下,模塊對輸入的像素窗進(jìn)行四個方向的濾波處理。下一時鐘周期到來后則轉(zhuǎn)入JUDGE狀態(tài),此狀態(tài)下,模塊進(jìn)行邊緣判斷,并輸出相應(yīng)結(jié)果。經(jīng)過這樣一個過程后,即可完成一個像素窗的處理,之后,如果檢測啟動信號繼續(xù)有效,則轉(zhuǎn)入FILTER狀態(tài)并處理下一個像素窗,否則轉(zhuǎn)入IDLE狀態(tài)待命。


上一頁 1 2 3 下一頁

關(guān)鍵詞: Sobel FPGA 器件 算法

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉