摘要:圖像邊緣檢測技術(shù)是圖像分割、目標(biāo)識別、區(qū)域形態(tài)提取等圖像分析領(lǐng)域中十分重要的基礎(chǔ)。簡要介紹各種圖像邊緣檢測算子的基本原理,并對具有代表性的幾種算子進(jìn)行了討論。用MATLAB仿真實驗結(jié)果表明各種算子的特點(diǎn)及其對噪聲的敏感度。這有助于學(xué)習(xí)和尋找更好的邊緣檢測方法。
關(guān)鍵詞:邊緣檢測;噪聲;MATLAB仿真
中圖分類號:TP391文獻(xiàn)標(biāo)識碼:A文章編號:1009-3044(2010)05-1189-02
Study the Edge Detection Operators Based on MATLAB Simulation
ZHENG Jing, LIANG Shao-hua, WANG Teng
(College of Computer Science, Yangtz University, Jingzhou 434023, China)
Abstract: The image edge detection technique is very important to the image analysis, such as the image segmentation, the target recognition, and extraction of the regional patterns. Outlined a variety of image edge detection operators of the basic principles, and representative of several operators have been discussed. With the MATLAB simulation results show that the characteristics of the various operators and their noise sensitivity. This helps to learn and find a better edge detection method.
Key words: edge detection; noise; MATLAB simulation
邊緣檢測技術(shù)對于處理數(shù)字圖像非常重要,因為邊緣是所要提取目標(biāo)和背景的邊界線,提取出邊緣才能將目標(biāo)和背景區(qū)分開來。圖像的邊緣中包含著景物有價值的邊界信息,這些信息可以用于圖像分析、目標(biāo)識別以及圖像濾波,并且通過邊緣檢測可以極大地降低圖像分析處理的數(shù)據(jù)量。
在圖像中,邊界表明一個特征區(qū)域的終結(jié)和另一個特征區(qū)域的開始,邊界所分開區(qū)域的內(nèi)部特征或?qū)傩允且恢碌模煌瑓^(qū)域內(nèi)部的特征或?qū)傩允遣煌模吘壍臋z測正是利用物體和背景在某種圖像特性上的差異來實現(xiàn)的。這種差異包括灰度、顏色或者紋理特征。邊緣檢測實際上就是檢測圖像特性發(fā)生變化的位置。
由于噪聲和模糊的存在,檢測到的邊界可能會變寬或在某些點(diǎn)處發(fā)生間斷,因此,邊界檢測包括兩個基本內(nèi)容:首先抽取出反應(yīng)灰度變化的邊緣點(diǎn),然后剔除某些邊界點(diǎn)或填補(bǔ)邊界間斷點(diǎn),并將這些邊緣連接成完整的線。
最簡單的邊緣檢測方法是邊緣檢測算子,它利用相鄰區(qū)域的像素值不連續(xù)的性質(zhì),采用一階或二階導(dǎo)數(shù)來檢測邊緣點(diǎn)。
1 邊緣檢測算法分析
經(jīng)典的邊緣提取方法是考查圖像的每個像素在某個領(lǐng)域內(nèi)灰度的變化,利用邊緣鄰近一階或二階方向?qū)?shù)變化規(guī)律,用簡單的方法檢測邊緣,這種方法稱為邊緣檢測局部算子法。邊緣檢測的基本思想是通過檢測每個像元和其鄰域的狀態(tài),以決定該像元是否位于一個物體的邊界上。如果每一個像元位于一個物體的邊界上,則其鄰域像元灰度值的變化就比較大。例如可以應(yīng)用某種算法檢測出這種變化并進(jìn)行量化表示,那么就可以確定物體的邊界。
常用的邊緣檢測算子主要有:Roberts、Sobel、Prewitt、Laplacian、Laplacian of Gaussian和Canny邊緣算子。
本文只對Roberts、Sobel、Prewitt、Canny這幾種基于一階導(dǎo)數(shù)的邊緣檢測算子進(jìn)行簡要介紹。
1.1Roberts算子
Roberts邊緣算子是一種斜向偏差分的梯度計算方法,梯度的大小代表邊緣的強(qiáng)度,梯度的方向與邊緣走向垂直。
Roberts操作實際上是求旋轉(zhuǎn)±45°兩個方向上微分值的和。
Roberts邊緣算子定位精度高,在水平和垂直方向效果較好,但對噪聲敏感。
1.2 Sobel算子
Sobel算子是一組方向算子,從不同的方向檢測邊緣。Sobel算子不是簡單的求平均再差分,而是加強(qiáng)了中心像素上下左右四個方向像素的權(quán)重,運(yùn)算結(jié)果是一副邊緣圖像。
Sobel算子通常對灰度漸變和噪聲較多的圖像處理得較好。
1.3 Prewitt算子
Prewitt邊緣算子是一種邊緣樣板算子,利用像素點(diǎn)上下、左右鄰點(diǎn)灰度差,在邊緣處達(dá)到極值檢測邊緣,對噪聲具有平滑作用。由于邊緣點(diǎn)像素的灰度值與其領(lǐng)域點(diǎn)像素的灰度值有顯著不同,在實際應(yīng)用中通常采用微風(fēng)算子和模板匹配方法檢測圖像的邊緣。
Prewitt算子不僅能檢測邊緣點(diǎn),而且能抑制噪聲的影響,因此對灰度和噪聲較多的圖像處理得較好。
1.4 Canny算子
Canny算子是一類最優(yōu)邊緣檢測算子,它在許多圖像處理領(lǐng)域得到了廣泛應(yīng)用。
Canny考核邊緣檢測算子的指標(biāo)是:低誤判率,即盡可能地把邊緣點(diǎn)誤認(rèn)為是非邊緣點(diǎn);高定位精度,即準(zhǔn)確地把邊緣點(diǎn)定位在灰度變化最大的像素上;抑制虛假邊緣。
Canny從這三項指標(biāo)出發(fā),推導(dǎo)出了最佳邊緣檢測算子-Canny邊緣算子。
該算子的基本思想是:先對處理的圖像選擇一定的Guass濾波器進(jìn)行平滑濾波,抑制圖像噪聲然后采用抑制稱之為“非極值抑制”(Nonmaxima Suppression)的技術(shù),細(xì)化平滑后的圖形梯度幅值矩陣,尋找圖像中的可能邊緣點(diǎn);最后利用雙門限檢測通過雙閾值遞歸尋找圖像邊緣點(diǎn),實現(xiàn)邊緣提取。
Canny方法也使用Laplacian算子,該方法與其他邊緣檢測方法的不同之處在于,它使用兩種不同的閾值分別檢測強(qiáng)邊緣和弱邊緣,并且僅當(dāng)弱邊緣與強(qiáng)邊緣相連時才將弱邊緣包含在輸出圖像中,因此這種方法容易檢查出真正的弱邊緣。
2 實驗結(jié)果與分析
2.1 各算子仿真結(jié)果比較
圖1是我們要進(jìn)行實驗的原圖,圖2,圖3,圖4分別是利用Canny算子,Prewitt算子和Roberts算子對圖1進(jìn)行仿真所檢測出的邊緣信息。
圖5-圖8是利用Sobel算子在45度角,-45度角,垂直,水平和垂直,四個不同方向上對圖1進(jìn)行仿真所得出的邊緣信息。
從以上實驗結(jié)果可看出,Roberts 算子檢測水平和垂直方向邊緣的性能好于斜線方向的邊緣;而Sobel和Prewitt算子在這方面則比較弱,尤其是Prewitt算子,基本丟失了角點(diǎn)信息; Sobel 算子檢測出的邊緣容易出現(xiàn)多像素寬度;Canny算子能夠檢測到真正的弱邊緣,是最優(yōu)邊緣檢測算子。
2.2 各方法對噪聲敏感度仿真結(jié)果比較
圖9是我們要進(jìn)行實驗的椒鹽噪聲圖像,圖10,圖11,圖12分別是利用Canny算子,Prewitt算子和Roberts算子對圖9進(jìn)行仿真所檢測出的邊緣信息。
圖13-圖16,是分別利用Sobel算子在45度角,-45度角,垂直,水平和垂直,四個不同方向上對圖9進(jìn)行邊緣檢測所得出的邊緣信息。
從以上仿真結(jié)果可以看出,Roberts對噪聲較敏感;Sobel 算子雖對噪聲有一定的抑制能力,但檢測出的邊緣容易出現(xiàn)多像素寬度; Canny 算子不容易受噪聲的干擾, 能夠檢測到真正的弱邊緣,但由于具有較強(qiáng)的噪聲抑制,同樣也會將一些高頻邊緣平滑掉,造成邊緣丟失;Prewitt算子對噪聲具有較好的平滑作用。
4 結(jié)論
圖像的邊緣檢測是圖像特征提取和圖像分析理解的基礎(chǔ),它的檢測質(zhì)量對圖像的后續(xù)處理有著較大的影響。目前,邊緣檢測技術(shù)在很多領(lǐng)域中都得到了廣泛的應(yīng)用。 如對醫(yī)學(xué)圖像的邊緣特征提取、車牌識別、人臉檢測技術(shù)等。在圖像邊緣檢測領(lǐng)域中有許多傳統(tǒng)、經(jīng)典的邊緣檢測算子,但它們都不是具有絕對優(yōu)勢的方法。仿真實驗表明這些方法,在圖像的抗噪聲、圖像邊緣的定位情況、圖像部分邊緣是否可以檢測出和算法運(yùn)行的速度等方面,各自存在優(yōu)缺點(diǎn)。對于圖像的邊緣檢測,要根據(jù)不同的系統(tǒng),針對不同的環(huán)境條件和要求,選擇合適的算子。
參考文獻(xiàn):
[1] 王愛玲,葉明生,鄧秋香.圖像處理技術(shù)與應(yīng)用[M].北京:電子工業(yè)出版社,2008.
[2] 管宏蕊,丁輝.圖像邊緣檢測經(jīng)典算法研究綜述[J].首都師范大學(xué)學(xué)報,2009,(30):66-69.
[3] 秦襄培.MATLAB圖像處理與界面編程寶典[M].北京:電子工業(yè)出版社,2009.
[4] 張婷曼,王慶. 基于邊緣檢測與分層的車牌定位[J].科技資訊,2009(33):191-192.
[5] 劉蕊,陳紅衛(wèi).一種改進(jìn)的圖像邊緣檢測算法[J].科學(xué)技術(shù)與工程,2009(9):6395-6398.