數(shù)字圖像的邊緣檢測(cè)是圖像分割、目標(biāo)區(qū)域的識(shí)別、區(qū)域形狀提取等圖像分析領(lǐng)域十分重要的基礎(chǔ),圖像理解和分析的第一步往往就是邊緣檢測(cè),目前它已成為機(jī)器視覺研究領(lǐng)域最活躍的課題之一,在工程應(yīng)用中占有十分重要的地位。
圖像的特征指圖像場(chǎng)中可用作標(biāo)志的屬性,而圖像的邊緣是圖像最基本的特征。在數(shù)字圖像中,所謂邊緣是指其周圍像素灰度有階躍變化或屋頂變化的那些像素的集合。由于物體的邊緣是由灰度不連續(xù)性所反映的,因此一般邊緣檢測(cè)方法是考察圖像的每個(gè)像素在某個(gè)領(lǐng)域內(nèi)灰度的變化,利用邊緣鄰近一階或二階方向?qū)?shù)變化規(guī)律來檢測(cè)邊緣,這種方法通常稱為邊緣檢測(cè)局部算子法。目前主要的幾種經(jīng)典的邊緣檢測(cè)算子有:
- 基于一階微分的邊緣檢測(cè)算子,這其中包括Roberts算子,Sobel算子,Prewitt算子以及Krisch算子。該類算子,利用梯度最大值或?qū)?yīng)于一階微分幅度最大的方法提取邊界。在算法實(shí)現(xiàn)過程中,通過2x2(Robert)或者3x3的模塊作為核與圖像中的每個(gè)像素點(diǎn)做卷積和運(yùn)算,然后選取合適的閾值以提取邊緣。
- 基于二階微分算子,Laplacian邊緣檢測(cè)算子就是其中的代表,該算子利用二階微分過零點(diǎn)的原理提取邊界點(diǎn)。在算法實(shí)現(xiàn)過程中,也是通過3x3卷積核運(yùn)算,選取合適的閾值以提取邊緣。
基于最優(yōu)化方法算子,這類方法的目的是根據(jù)信噪比求得檢測(cè)邊緣的最優(yōu)化算子。現(xiàn)在常用的有Marr-Hildreth算子和Canny算子。
邊緣檢測(cè)算法有如下四個(gè)步驟:
濾波:邊緣檢測(cè)算法主要是基于圖像強(qiáng)度的一階和二階導(dǎo)數(shù),但導(dǎo)數(shù)的計(jì)算對(duì)噪聲很敏感,因此必須使用濾波器來改善與噪聲有關(guān)的邊緣檢測(cè)器的性能.需要指出,大多數(shù)濾波器在降低噪聲的同時(shí)也導(dǎo)致了邊緣強(qiáng)度的損失,因此,增強(qiáng)邊緣和降低噪聲之間需要折衷.
增強(qiáng):增強(qiáng)邊緣的基礎(chǔ)是確定圖像各點(diǎn)鄰域強(qiáng)度的變化值.增強(qiáng)算法可以將鄰域(或局部)強(qiáng)度值有顯著變化的點(diǎn)突顯出來.邊緣增強(qiáng)一般是通過計(jì)算梯度幅值來完成的.
檢測(cè):在圖像中有許多點(diǎn)的梯度幅值比較大,而這些點(diǎn)在特定的應(yīng)用領(lǐng)域中并不都是邊緣,所以應(yīng)該用某種方法來確定哪些點(diǎn)是邊緣點(diǎn).最簡(jiǎn)單的邊緣檢測(cè)判據(jù)是梯度幅值閾值判據(jù).
定位:如果某一應(yīng)用場(chǎng)合要求確定邊緣位置,則邊緣的位置可在子像素分辨率上來估計(jì),邊緣的方位也可以被估計(jì)出來.
邊緣檢測(cè)的三種方法:
- 直接利用閾值。這種方法簡(jiǎn)便,快速。但是精確度不高。用在光源比較穩(wěn)定的環(huán)境中。
- 利用灰度值投影曲線的一階導(dǎo)數(shù),返回值為指定的閾值處的一階導(dǎo)數(shù),此閾值比實(shí)際的閾值要小。此方法優(yōu)點(diǎn):周圍環(huán)境的影響小,可以在環(huán)境光照變化大時(shí)用此方法。速度和精確度在這三種方法中居中。
- 灰度值投影曲線的二階導(dǎo)數(shù),判斷零點(diǎn)。
精確度高,但速度低、噪聲大的圖像不易用此法。
應(yīng)用:
檢測(cè)芯片針腳是否規(guī)則整齊。目標(biāo)定位。存在/缺席檢測(cè)
|