馬 芳,張建平
(中州大學(xué) 信息工程學(xué)院,鄭州 450044)
一種優(yōu)化的基于閾值分割和數(shù)學(xué)形態(tài)學(xué)的邊緣檢測算法
馬 芳,張建平
(中州大學(xué) 信息工程學(xué)院,鄭州 450044)
圖像邊緣檢測是計(jì)算機(jī)圖像處理的最基本步驟之一。由于噪聲的干擾和圖像光照不均勻等因素的影響,目前的圖像邊緣檢則方法還不能有效地檢測出各種不同模式的邊界。本文介紹了已有邊緣檢測技術(shù),并分析這些技術(shù)的缺陷,在此基礎(chǔ)上提出一個(gè)改進(jìn)的基于閾值分割和數(shù)學(xué)形態(tài)學(xué)的邊緣檢測方法。并用MATLAB仿真實(shí)驗(yàn)進(jìn)行對比分析其適用環(huán)境。
圖像分割;邊緣檢測;閾值分割;數(shù)學(xué)形態(tài)學(xué)
隨著計(jì)算機(jī)視覺和圖像處理技術(shù)的發(fā)展,邊緣檢測技術(shù)應(yīng)用的領(lǐng)域越來越多,發(fā)揮的作用也越來越大。邊緣檢測技術(shù)是圖像理解、分析和模式識別過程的前處理階段,其檢測的效果是影響整個(gè)性能的一個(gè)關(guān)鍵因素。常用的幾個(gè)邊緣檢測方法大多通過檢測每個(gè)像素和其鄰域的狀態(tài)來確定該像元是否位于一個(gè)物體的邊界上。這些方法雖然簡單,但是它們只適用于檢測有限類型的邊緣, 而且對噪聲比較敏感,產(chǎn)生的邊緣會出現(xiàn)斷裂的情況,如何找到圖像中相對應(yīng)的真實(shí)邊緣越來越受到人們的關(guān)注,在這方面做了大量的研究, 不斷提出新的思想。本文在介紹已有邊緣檢測技術(shù)之外,提出一個(gè)改進(jìn)的基于閾值分割和數(shù)學(xué)形態(tài)學(xué)的邊緣檢測方法。并用MATLAB仿真實(shí)驗(yàn)進(jìn)行對比分析其適用環(huán)境。
1.邊緣檢測算法
計(jì)算機(jī)應(yīng)用于圖像處理有兩個(gè)作用:一是產(chǎn)生更適合人們觀察和認(rèn)識的圖像,二是希望能夠由計(jì)算機(jī)自動識別和理解圖像。無論為了實(shí)現(xiàn)哪種作用,其中關(guān)鍵的一步就是對包含有大量各式各樣信息的圖像進(jìn)行分解。分解的最終結(jié)果是被分解成一些具有某種特征的最小成分,稱為圖像的基元。相對于整幅圖像來說,這種基元更容易被快速處理。
圖像分割技術(shù)主要是根據(jù)圖像區(qū)域的不同邊緣效果來進(jìn)行分割。在圖像分割技術(shù)中,圖像邊緣檢測起到重要的作用,同時(shí)也是形狀特征和紋理等特征的重要信息來源的基礎(chǔ)。邊緣檢測技術(shù)也是圖像匹配的基礎(chǔ)。
圖像的邊緣是通過發(fā)生強(qiáng)度突變的點(diǎn)來區(qū)分的。根據(jù)判斷方式的不同,可采用并行技術(shù)或串行技術(shù)進(jìn)行邊緣檢測。并行技術(shù)的思想是通過當(dāng)前點(diǎn)和其鄰域點(diǎn)的情況來判斷當(dāng)前點(diǎn)是否是邊緣;串行技術(shù)主要是通過判斷前一點(diǎn)是否是邊緣來決定當(dāng)前點(diǎn)的情況。
在數(shù)字圖像中每個(gè)點(diǎn)有不同的灰度值,灰度的不連續(xù)性可以反映出圖像中邊緣的情況。因此可以通過考慮圖像中每個(gè)像素在一定區(qū)域的灰度變化,并根據(jù)一階或二階方向?qū)?shù)的變化規(guī)律檢測出圖像中的邊緣。
圖像邊緣檢測算法根據(jù)采用的數(shù)學(xué)思想不同可以分為下面兩種類型:一是以一階微分為基礎(chǔ)的。由于邊緣灰度變化規(guī)律一般體現(xiàn)為階梯狀或者脈沖狀。差分值與邊緣的關(guān)系一種是發(fā)生在差分最大值或者最小值處;一種是邊緣發(fā)生在過零處。采用Sobel算子、Roberts算子、Prewitt算子等一階差分算子得到的差分值可以檢測階梯狀的邊緣。這種算法可以檢測出平均灰度值對于階梯狀或者圖像灰度值的變化。二是以二階微分為基礎(chǔ)的。主要對灰度值變化呈階梯狀的圖像進(jìn)行檢測,這種圖像有過零點(diǎn),對于點(diǎn)、線的檢測效果較好,但是對含有噪聲的圖像檢測效果不理想。Laplacian算子就是一種二階差分算子。
介紹常用的幾種邊緣檢測算子:
1.1 Robert邊緣檢測算子
100-110-10
圖1 Robert算子
它是一個(gè)2×2算子,通過局部差分算子找到邊緣, 實(shí)際上該算子是旋轉(zhuǎn)±45°后兩個(gè)垂直方向上微分結(jié)果的求和過程。該算子在水平和垂直方向檢測效果較好,定位精度相對較高,直接計(jì)算圖像差分,但是不包含平滑,所以不能很好的抑制噪聲,一般只對低噪聲圖像響應(yīng)較好。[2]
下面圖2為細(xì)胞圖像原始圖,圖3是用Sobel算子對原始圖的邊緣檢測結(jié)果。
圖2 原始圖
1.2 高斯拉普拉斯算子
由于噪聲點(diǎn)(灰度與周圍點(diǎn)相差很大的點(diǎn))對邊沿檢測有一定的影響,所以效果更好的邊沿檢測器是高斯拉普拉斯(LOG)算子。它把高斯平滑濾波器和拉普拉斯銳化濾波器結(jié)合了起來,先平滑掉噪聲,再進(jìn)行邊沿檢測,所以效果會更好。[3,4]
常用的LOG算子是5×5的模板,如下矩陣所示到中心點(diǎn)的距離與位置加權(quán)系數(shù)的關(guān)系用曲線表示為圖4所示。圖5是用LOG濾波器處理后的結(jié)果。
圖3 Sobel算子
圖4 LOG到中心點(diǎn)的距離與位置加權(quán)系數(shù)的關(guān)系曲線
圖5 Log算子
相比之下,邊緣算子檢測結(jié)果圖中Log算子效果較好,但是還沒達(dá)到理想的效果,邊緣還不是非常清晰。
本文介紹一種基于數(shù)學(xué)形態(tài)學(xué)和閾值分割相結(jié)合的優(yōu)化方法檢測圖像邊緣,可以得到較以上清晰的邊緣圖像。
2.基于閾值分割和數(shù)學(xué)形態(tài)學(xué)的邊緣檢測算法
2.1 閾值分割
閾值分割[5]技術(shù)是一種圖像分割方法,這種方法的關(guān)鍵在于尋找適當(dāng)?shù)幕叶乳撝?。通常是根?jù)圖像的灰度直方圖來選取。閾值分割可以通過全局的信息如整個(gè)圖像的灰度直方圖,或者局部信息如灰度共生矩陣實(shí)現(xiàn)。如果在整個(gè)圖像中只使用一個(gè)閾值,則這種方法叫做全局閾值法。反之,如果這個(gè)圖像被分割成幾個(gè)區(qū)域,針對每一個(gè)區(qū)域均有一個(gè)閾值,則這種方法叫做局部閾值法。
還有一種方法是最佳閾值,閾值的選擇需要根據(jù)具體問題來確定,一般通過實(shí)驗(yàn)來確定。對于給定的圖像,可以通過分析直方圖的方法確定最佳的閾值,例如當(dāng)直方圖明顯呈現(xiàn)雙峰情況時(shí),可以選擇兩個(gè)峰值的中點(diǎn)作為最佳閾值。[6]
本文介紹的算法中要進(jìn)行分割的閾值T是通過迭代的方法求出。其思想如圖6所示。
圖6 迭代法求分割閾值T的算法流程圖
2.2 數(shù)學(xué)形態(tài)學(xué)
數(shù)學(xué)形態(tài)學(xué)[7,8]是一種針對物體幾何結(jié)構(gòu)進(jìn)行處理的非線性方法。利用它進(jìn)行邊緣提取在某些場合可以得到滿意的結(jié)果。所以在圖像分割后利用數(shù)學(xué)形態(tài)學(xué)進(jìn)行邊緣檢測。設(shè)圖像為A,它的邊界為β(A)=A-(AΘB)。
2.3 實(shí)驗(yàn)結(jié)果
圖7為用MATLAB實(shí)現(xiàn)基于閾值分割和數(shù)學(xué)形態(tài)學(xué)細(xì)胞圖像邊緣檢測圖。通過該算法,得到的邊緣檢測圖像比傳統(tǒng)邊緣檢測算法更清晰,而且細(xì)胞內(nèi)空洞也比較少。
圖7 基于閾值分割和數(shù)學(xué)形態(tài)學(xué)邊緣圖
3.結(jié)論
圖像邊緣檢測技術(shù)在圖像處理中具有重要地位,本文在對幾種典型的邊緣檢測算法進(jìn)行理論分析和仿真實(shí)驗(yàn)的基礎(chǔ)上,分析其優(yōu)點(diǎn)及不足,提出了一種改進(jìn)的基于閾值分割和數(shù)學(xué)形態(tài)學(xué)的邊緣檢測方法。通過MATLAB仿真實(shí)驗(yàn)驗(yàn)證了該方法比傳統(tǒng)算子邊緣檢測精度高,抗噪聲性能強(qiáng)。本算法不足之處是算法復(fù)雜度比普通算法大,相應(yīng)檢測時(shí)間會增長,目前數(shù)學(xué)和人工智能的發(fā)展為邊緣檢測技術(shù)提供了更廣闊的研究思想,邊緣檢測技術(shù)還有許多工作需要進(jìn)一步的研究。
[1]韋煒.常用圖像邊緣檢測方法及Matlab研究[J].現(xiàn)代電子技術(shù),2011,34(4):91-94.
[2]黃鋒華,劉琪芳,冀金鳳.基于 MATLAB 數(shù)字圖像邊緣檢測算子的研究[J].機(jī)械工程與自動化,2011(4):48-50.
[3]Gu PtaL,SortrakuI T.A Gaussian-Mixture-Based lmage Segmentation Algorithm[J].Pattern Recognition,1998,31(3):315-326.
[4]陳楊,陳榮娟,郭穎輝,等.MATLAB 6.X 圖形編程與圖像處理[M].西安:西安電子科技大學(xué)出版社,2002.
[5]飛思科技產(chǎn)品研發(fā)中心.MATLAB 6.5輔助圖像處理[M].北京:電子工業(yè)出版社,2003.
[6]楊麗雯,曾朝陽,張永繼.一種基于數(shù)學(xué)形態(tài)學(xué)的灰度圖像邊緣檢測方法[J].計(jì)算理論與方法,2012,31(2):27-29.
[7]章毓晉.圖像處理和分析[M].北京:清華大學(xué)出版社,2003.
[8]石躍祥,康蘊(yùn),劉海濤.基于數(shù)學(xué)形態(tài)學(xué)的彩色噪聲圖像邊緣檢測算法[J].計(jì)算機(jī)應(yīng)用研究,2012,12(3):1172-1174.
2013-09-27
馬芳(1979—),女,河南鄭州人,中州大學(xué)信息工程學(xué)院講師,主要研究方向是移動路由、下一代網(wǎng)絡(luò)。
TP391
A
1008-3715(2013)06-0124-03
(責(zé)任編輯趙冰)