1引言
所謂圖像分割就是根據(jù)目標(biāo)與背景的先驗知識,對圖像中的目標(biāo)、背景進行標(biāo)記、定位,然后將要識別的目標(biāo)從背景或其他偽目標(biāo)中分離出來。圖像分割是圖像理解的重要組成部分,其目的是將目標(biāo)和背景分離,為目標(biāo)識別、精確定位等后續(xù)處理提供依據(jù),其結(jié)果將直接影響到其后的信息處理過程。如何快速、有效地將感興趣的目標(biāo)從復(fù)雜的背景中分割出來一直是國內(nèi)外研究的熱點。
圖像分割一般可分為基于區(qū)域的分割和基于邊緣的分割2種。而采用的方法通常有閾值比較法、區(qū)域生長法、象素迭代聚類法等。一般邊緣檢測具有邊緣定位準(zhǔn)確、運算速度較快等優(yōu)點,因此是人們研究得比較多的一種方法。本文簡單介紹了邊緣圖像分割的方法,列舉了一階微分算子、Canny算子、Roberts算子、Sobel算子的設(shè)計過程,分別對他們進行邊緣檢測設(shè)計仿真,并給出了仿真結(jié)果。
2基于邊緣信息的圖像分割方法
圖像的邊緣是圖像最基本的特征。所謂邊緣(或邊沿)是指其周圍象素灰度有階躍變化或“屋頂”變化的那些象素的集合。邊緣廣泛存在于物體與背景之間、物體與物體之間、基元與基元之間。因此,他是圖像分割依賴的重要特征。
物體的邊緣是由灰度不連續(xù)性形成的。經(jīng)典的邊緣提取方法是考察圖像的每個象素在某個鄰域內(nèi)灰度的變化,利用邊緣鄰近一階或二階方向?qū)?shù)變化規(guī)律,用簡單的方法檢測邊緣。這種方法稱為邊緣檢測局部算子法。如果一個象素落在圖像中某一個物體的邊界上,那么他的鄰域?qū)⒊蔀橐粋€灰度級的變化帶。對這種變化最有用的2個特征:灰度的變化率和方向,他們分別以梯度向量的幅度和方向來表示。邊緣檢測算子檢查每個象素的鄰域并對灰度變化率進行量化,也包括方向的確定。常用的檢測算子有Roerts算子、Sobel算子、Prewitt算子和Kirsh算子等。這些算子由于梯度或一階微分算子通常會在圖像邊緣附近的區(qū)域內(nèi)產(chǎn)生較寬的響應(yīng),故采用上述算子檢測的邊緣圖像常需做細(xì)化處理,邊緣定位的精度不是很高。
邊緣檢測的基本問題是檢測精度與抗噪性能間的矛盾。由于圖像邊緣和噪聲均為頻域中的高頻分量,簡單的微分運算會增加圖像中的噪聲。因此,在微分運算之前應(yīng)采取適當(dāng)?shù)钠交瑸V波以減少高頻分量中噪聲的影響。Canny應(yīng)用嚴(yán)格的數(shù)學(xué)方法對此問題進行了分析,提出了由4個指數(shù)函數(shù)線性組合形成的最佳邊緣檢測算子,其實質(zhì)是用一個準(zhǔn)高斯函數(shù)做平滑運算,然后以帶方向的一階微分定位導(dǎo)數(shù)最大值,他可用高斯函數(shù)的梯度來近似,屬于具有平滑功能的一階微分算子。
3常用的邊緣檢測算子的設(shè)計
3。1Roberts算子和Sobel算子的設(shè)計
Roberts算子的表達(dá)式:
式(1)中,f(i,j)是數(shù)字圖像中坐標(biāo)為(i,j)的象素值。
Sobel算子的表達(dá)式:
其中,由于Sobel算子是濾波算子的形式,用于提取邊緣??梢岳每焖倬矸e函數(shù),簡單有效,因此應(yīng)用廣泛。
上述算子的設(shè)計步驟如下:
(1)用高斯濾波器對圖像濾波,去除圖像中的噪聲。
(2)由于導(dǎo)數(shù)算子具有突出灰度變化的作用,對圖像運用導(dǎo)數(shù)算子,灰度變化較大的點處算得的值較高,因此可將這些導(dǎo)數(shù)值作為相應(yīng)點的邊界強度,通過設(shè)計門限的方法,提取邊界點集。
(3)對提取邊緣后的圖像進行連接和細(xì)化,使其形成一條有意義的邊界。
3。2Canny算子的設(shè)計
Canny把邊緣檢測問題轉(zhuǎn)換為檢測單元函數(shù)極大值的問題。在高斯噪聲中,一個典型的邊緣代表一個階躍的強度變化。根據(jù)這個模型,一個好的邊緣檢測算子應(yīng)具有的3個指標(biāo)位:
(1)低失誤概率,既要減少將真正的邊緣丟失也要減少將非邊緣判為邊緣。
(2)高位置精度,檢測出的邊緣應(yīng)在真正的邊界上。
(3)對每個邊緣有惟一的響應(yīng),得到的邊界為單象素寬。
為此,Canny提出了判定邊緣檢測算子的3個準(zhǔn)則:
(1)信噪比準(zhǔn)則。
(2)定義精度準(zhǔn)則。
(3)單邊緣響應(yīng)準(zhǔn)則。
將Canny的三個準(zhǔn)則相結(jié)合,可獲得一種最優(yōu)檢測算子。?
Canny算子的設(shè)計步驟如下:
(1)用高斯濾波器對圖像濾波,去除圖像中的噪聲。
(2)用高斯算子的一階微分對圖像進行濾波,得到每個象素梯度的大小|G|和方向θ。
?
其中:f為濾波后的圖像。
(3)對梯度進行“非極大抑制”
梯度的方向可以被定義為屬于4個區(qū)之一,各個區(qū)用不同的鄰近象素來進行比較,以決定局部極大值。
(4)對梯度取2次閾值得?T1和T2,T1=0。4T2。把梯度值小于T1的象素灰度值設(shè)為0,得到圖像1。然后把梯度值小于T2的象素灰度設(shè)為0,得到圖像2。由于圖像2的閾值較高,去除了大部分噪聲,但同時也損失了有用的邊緣信息。而圖像1的閾值較低,保留了較多的信息??梢砸詧D像2為基礎(chǔ),圖像1為補充來連接圖像。
(5)連接邊緣的具體步驟如下:
①對圖像2進行掃描,當(dāng)遇到一個非零灰度的象素?P時,跟蹤以P為開始點的輪廓線,直到該輪廓線的終點Q。
②考察圖像1與圖像2中Q點位置對應(yīng)的Q′的8鄰近區(qū)域。如果在Q′點的8鄰近區(qū)域中有非零象素R′存在,則將其包括到圖像2中,作為R點。從R開始,重復(fù)第①步,直到在圖像1和圖像2中都無法繼續(xù)為止。
③當(dāng)完成對包含P的輪廓線的連接之后,將這條輪廓線標(biāo)記為已訪問?;氐降冖俨?,尋找下一條輪廓線。
④重復(fù)①、②、③,直到圖像2中找不到新輪廓線為止。
4實驗仿真
運用Matlab6。0對以上設(shè)計的Robert算子、Sobel算子及Canny算子進行了邊緣檢測的實驗仿真,其邊緣檢測的仿真結(jié)果如圖1所示。??
從圖1可以看出,利用Roberts算子提取邊緣的結(jié)果比較粗,因此邊緣定位不是很準(zhǔn)確,而Sobel算子對邊緣的定位比較準(zhǔn)確,提取邊緣的輪廓比較清晰,但提取邊緣的完整性和連續(xù)性不是很好。Canny算子提取的邊緣十分完整,而且邊緣的連續(xù)性很好,效果優(yōu)于其他算子。這是因為他進行了“非極大值抑制”和形態(tài)學(xué)連接操作的結(jié)果。
5結(jié)語
本文對基于邊緣信息的圖像分割方法及其性能、特點做了一些分析研究。在算法的研究基礎(chǔ)上,對一階微分算子Roberts算子、Sobel算子及Canny算子進行了設(shè)計,并通過Matlab6。0進行了仿真,經(jīng)調(diào)試得出較為理想的實驗結(jié)果。總之,以上圖像分割方法具有較好的理論基礎(chǔ),而且針對不同的目標(biāo)對象和應(yīng)用領(lǐng)域具有實時性好、分割精度高等特點,具有十分廣闊的應(yīng)用前景。