一、分水嶺算法概念
分水嶺算法是基于地形學(xué)提出的一種算法,在這個算法中我們將一張灰度圖像看作是一張地形圖,在地形圖里,我們把水平坐標(biāo)和縱坐標(biāo)定義為灰度圖像的位置,把地形圖的高度定義為灰度圖形里面的灰度。在地形圖當(dāng)中,有海拔最低點,在灰度圖形當(dāng)中,有灰度值最小點,把地形圖種的海拔最低點看作是灰度圖形中的灰度值最小點。在地形圖種,我們在局部海拔最低點打一個洞,讓水不停的灌溉整個地形,當(dāng)水上升到一定程度的時候,就會淹沒整個地形。要想水不能淹沒頂部,就要修建大壩,而修建的大壩就相當(dāng)于分水嶺的分割線,也被稱為分水線。
要形成分水嶺,必須具備下面的條件:(1)地形有局部最小點,也就是灰度圖形的局部最小灰度值。(2)當(dāng)水放在某點的時候會下落到單一的局部最小值。(3)水不停的流向不止一個這樣的最小點。對于某個局部區(qū)域,滿足條件(2)就是該區(qū)域的最小值。這三個條件是互相制約互相影響的。
二、分水嶺算法原理
(一)分水嶺的形成
在自然界中,分水嶺較多是指有的河流成為兩個流域,甚至有的起伏的湖泊或平原分水嶺,分水線是分水嶺的脊線。在地形學(xué)中,分水嶺一般用來形容分隔相鄰兩個流域的山嶺或高地,河水從這里流向兩個相反的方向。分水嶺是相鄰流域的界線,也是高點的連線 。
(二)分水嶺的原理
要將地形學(xué)中的分水嶺用在圖像處理上,就要對圖像進(jìn)行三維化處理:圖像中的點用橫縱坐標(biāo)來表示,圖像的灰度值就是另外一維。浸水法,就是把圖像中灰度最小的值作為起點,相當(dāng)于集水盆的底;水從底部開始向上淹沒,當(dāng)?shù)竭_(dá)某個區(qū)域的邊緣,就得到了分水嶺。在這里,地形中的山頂就是灰度圖像中灰度值最大的點。當(dāng)水一直上升,直到快碰到山頂?shù)臅r候,不同區(qū)域的水將要在這里進(jìn)行交匯,要阻止這種情況發(fā)生就必須檢出大壩。不同圖像的灰度值分布是不一樣的。當(dāng)然,在沒有到達(dá)山頂,而是局部最大值的時候,也需要人工構(gòu)筑分水嶺來區(qū)分不同的區(qū)域。在計算機圖形學(xué)中,我們可以使用灰度表征地貌高來構(gòu)筑分水嶺。具體的就是利用空間分析,即地貌高度的相似性和圖像灰度值大小來研究圖像的灰度在空間上的變化,還可以通過其他形式的梯度計算進(jìn)行浸水處理。分水嶺算法是基于對地形中山頂邊界檢測的,所以應(yīng)用在圖像處理中,可以很好的檢測到圖像的邊緣。
三、改進(jìn)后的分水嶺算法
在圖像分割領(lǐng)域中,分水嶺分割技術(shù)是一種應(yīng)用很廣泛的分割技術(shù)。使得圖像進(jìn)行了很好的分割。但是這種算法也是有缺點的,如果要被處理的圖像噪聲比較大,圖像在分割前就會被分成很多區(qū)域,在這些區(qū)域分別使用“侵水法”,這時候因為噪聲比較多,每個很小的區(qū)域都會被分割出來,這樣就會造成圖像的過度分割;如果在圖像分割前不對圖像進(jìn)行濾波處理,又會使分割后的圖像的幾個物體合成為一個物體。所以圖像的質(zhì)量可以決定著分割后的效果。
針對這些問題,國內(nèi)外的學(xué)者提出了各種方法,而且也取得了一定的成果。有的研究人員將其他算法和分水嶺算法結(jié)合起來使用,還有一些學(xué)者提出了在利用分水嶺算法對他圖像進(jìn)行分割以后,再對相鄰或者相似的區(qū)域進(jìn)行合并。有人認(rèn)為在圖像分割前對圖像進(jìn)行去噪處理會避免那些問題,可是事實結(jié)果表明,對圖像進(jìn)行去噪以后再使用分水嶺算法對圖像進(jìn)行分割,還是會產(chǎn)生過度分割的現(xiàn)象??偟膩碚f,有下面幾種方法對分水嶺算法進(jìn)行改進(jìn):(1)在分割前,對圖像進(jìn)行去除噪聲處理;(2)在分割是時候,對圖像中的區(qū)域最小灰度值進(jìn)行強制標(biāo)記;(3)在分割后對過度分割的區(qū)域再次進(jìn)行合并;(4)和其他算法結(jié)合然后進(jìn)行分割。在這些方法中,都可以解決分水嶺算法過度分割的問題。
分水嶺算法是非常優(yōu)秀的圖像分割工具,具有分割速度快,準(zhǔn)確定位目標(biāo)的輪廓并得到封閉輪廊線等特點。但圖像本身都有著不同程度的噪聲,直接使用分水嶺算法對圖像進(jìn)行分割往往會導(dǎo)致過分割,從而生成大量的小區(qū)域而使目標(biāo)模糊其中。形態(tài)學(xué)的開閉重建運算對源圖像的形態(tài)學(xué)梯度圖像濾波重建后,修正區(qū)域極小值和極大值,簡化圖像梯度,使圖像易于分割。進(jìn)而對重建后的梯度圖形進(jìn)行分水嶺變換,將目標(biāo)從自然背景中分離。經(jīng)過形態(tài)學(xué)開閉重建運算濾波后,可以改善直接分水嶺變換中因局部極小值數(shù)量過多而造成的梯度圖像的過分割現(xiàn)象,但所分割出來的區(qū)域仍然較多,不能達(dá)到較好的分割效果,我們需要對分割出來的區(qū)域進(jìn)行相鄰區(qū)域合并。
四、分水嶺算法的應(yīng)用
科技日新月異的發(fā)展使得人們對視覺的要求不斷的提高。因為人們可以通過視覺系統(tǒng)形象的了解很多抽象的東西。在某些時候,我們只需要圖片中的一部分,或者說我們需要把圖片中連在一起的部分分割出來。在醫(yī)學(xué)中,經(jīng)常會有細(xì)胞重疊在一起的現(xiàn)象,而如何將這些重疊在一起的細(xì)胞分開一直是困擾醫(yī)學(xué)界的難題。
分水嶺算法是二十世紀(jì)發(fā)展起來的數(shù)學(xué)形態(tài)學(xué)圖像分割方法。很好的將地形學(xué)應(yīng)用到圖像的分割當(dāng)中來。這種算法的分割就是將兩個相鄰的河水分開來,可以很好提取到分水線,就類似于將兩個粘連或者重疊的細(xì)胞分開。把圖像的灰度看作的地形的高度,灰度不同區(qū)域就對應(yīng)山峰和山谷。讓最低點首先進(jìn)水,慢慢的向上淹沒到山峰。等到水位快到達(dá)山峰的時候就建立堤壩來阻止水的溢出,建立的堤壩就是分水嶺,也就是細(xì)胞的邊緣。
分水嶺算法能很好的感應(yīng)到圖像的輪廓,所以使用這種算法對圖像進(jìn)行分割,可以得到不間斷的邊緣輪廓。目前已經(jīng)在各大領(lǐng)域廣泛的使用,尤其是在處理醫(yī)學(xué)粘連細(xì)胞和重疊細(xì)胞的方面。例如,采用分水嶺算法對多粘連細(xì)胞(圖6-1)進(jìn)行圖像分割,傳統(tǒng)的分水嶺算法由該方法簡單、快速、精確度高,能夠較好地將粘連在一起的細(xì)胞分割出來,分割結(jié)果不受細(xì)胞重疊的影響,平均分割正確率能夠達(dá)到86%以上,具有一定的有效性和實用價值。
參考文獻(xiàn):
[1]章三妹. 基于聚類和區(qū)域生長的彩色圖像分割方法[D]. 成都理工大學(xué), 2008.7-8
[2]王璇.基于圖像邊緣提取的液位檢測系統(tǒng)研究與實[D].湖南大學(xué),2010,19-20
[3]分水嶺百度百科http://baike.baidu.com/view/146890.htm#3. 2013.02.01.
[4]刁智華.趙春江,郭新宇等.分水嶺算法的改進(jìn)方法研究[J].計算機工程. 2010 -9 .4-5.
作者簡介:李聰穎(1982.9-),男,廣西岑溪人,研究生,助理工程師,岑溪市中小企業(yè)服務(wù)中心工作。