數(shù)字圖像處理-圖像分割_第1頁
數(shù)字圖像處理-圖像分割_第2頁
數(shù)字圖像處理-圖像分割_第3頁
數(shù)字圖像處理-圖像分割_第4頁
數(shù)字圖像處理-圖像分割_第5頁
已閱讀5頁,還剩179頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、1北京航空航天大學(xué)儀器科學(xué)與光電工程學(xué)院School of Instrumentation Science & Optoelectronics Engineering數(shù)字圖像處理Digital Image Processing2第十章 圖像分割3引言4引言分割將圖像細(xì)分為構(gòu)成它的子區(qū)域或物體。細(xì)分的程度取決于要解決的問題。異常圖像的分割是圖像處理中最困難的任務(wù)之一。分割的精度決定著計(jì)算分析過程最終的成敗。 5本章中的多數(shù)分割算法均基于灰度值的兩個(gè)基本性質(zhì)之一:不連續(xù)性和相似性。在第一類中,方法是以灰度突變?yōu)榛A(chǔ)分割一幅圖像,比如圖像的邊緣。在第二類中,主要方法是根據(jù)一組預(yù)定義的準(zhǔn)則將一幅圖像分

2、割為相似的區(qū)域。 610.1 基礎(chǔ)知識(shí)7基礎(chǔ)知識(shí) 令R表示一幅圖像占據(jù)的整個(gè)空間區(qū)域。我們可以將圖像分割視為把R分為n個(gè)子區(qū)域R1,R2,Rn的過程,滿足: 。Ri是一個(gè)連通集,i=1,2,n。 對于所有i和j,ij。Q(Ri)=TRUE,i=1,2,n。Q(RiRj)=FALSE,對于任何Ri和Rj的鄰接區(qū)域。8其中,Q(Rk)是定義在集合Rk的點(diǎn)上的一個(gè)邏輯屬性,并且表示空集。符號(hào)和分別表示集合的并和交。若Ri和Rj的并形成一個(gè)連通集,則我們說這兩個(gè)區(qū)域是鄰接的。9條件(a)指出,分割必須是完全的;也就是說,每個(gè)像素都必須在一個(gè)區(qū)域內(nèi)。條件(b)要求一個(gè)區(qū)域中的點(diǎn)以某些預(yù)定義的方式來連接(

3、即這些點(diǎn)必須是4連接的或8連接的)。條件(c)指出,各個(gè)區(qū)域必須是不相交的。10條件(d)涉及分割后的區(qū)域中的像素必須滿足的屬性例如,如果Ri中的所有像素都有相同的灰度級(jí),則Q(Ri)TRUE。條件(e)指出,兩個(gè)鄰接區(qū)域Ri和Rj在屬性Q的意義上必須是不同的。一般來說,Q可以是一個(gè)復(fù)合表達(dá)式。 11分割中的基本問題就是把一幅圖像分成滿足前述條件的多個(gè)區(qū)域。不連續(xù)性和相似性。通常,針對單色圖像的分割算法基于處理灰度值的兩類特性之一:12在第一類特性中,假設(shè)這些區(qū)域的邊界彼此完全不同,且與背景不同,從而允許基于灰度的局部不連續(xù)性來進(jìn)行邊界檢測。基于邊緣的分割是這一類中所用的主要方法。第二類中基于

4、區(qū)域的分割方法是根據(jù)事先定義的一組準(zhǔn)則把一幅圖像分割成相似的幾個(gè)區(qū)域。13基于灰度不連續(xù)性(邊界)的分割包含恒定灰度區(qū)域的圖像顯示內(nèi)部區(qū)域邊界的圖像,該圖像是由灰度不連續(xù)性獲得的。將圖像分割成兩個(gè)區(qū)域后的結(jié)果14基于灰度相似性(區(qū)域)的分割包含一個(gè)紋理區(qū)域的圖像計(jì)算邊緣后的結(jié)果。由于存在大量連接到原始邊界的小邊緣,僅使用邊緣信息很難找到一條唯一的邊界?;趨^(qū)域特性的分割結(jié)果(44子區(qū)域中像素的標(biāo)準(zhǔn)差)1510.2 點(diǎn)、線和邊緣檢測16引言本節(jié)將集中在以灰度局部劇烈變化檢測為基礎(chǔ)的分割方法上。我們感興趣的三種圖像特征是孤立點(diǎn)、線和邊緣。邊緣像素是圖像中灰度突變的那些像素。邊緣(或邊緣線段)是連接

5、的邊緣像素的集合。17邊緣檢測器是設(shè)計(jì)用來檢測邊緣像素的局部圖像處理方法。一條線可視為一條邊緣線段,該線兩側(cè)的背景灰度要么遠(yuǎn)亮于該線像素的灰度,要么遠(yuǎn)暗于該線像素的灰度。孤立點(diǎn)可視為一條線,只是其長度和寬度都為一個(gè)像素。 1810.2.1 背景知識(shí)數(shù)字函數(shù)的導(dǎo)數(shù)可用差分來定義。對于用于一階導(dǎo)數(shù)的任何近似,我們要求: (1) 在恒定灰度區(qū)域必須為零; (2) 在灰度臺(tái)階或斜坡開始處必須不為零; (3) 在沿灰度斜坡點(diǎn)處也必須不為零。19對于所用的二階導(dǎo)數(shù)的近似,我們要求: (1) 在恒定灰度區(qū)域必須為零; (2) 在灰度臺(tái)階或斜坡的開始處和結(jié)束處 必須不為零; (3) 沿灰度斜坡必須為零。簡化后

6、的剖面線20為簡化起見,灰度級(jí)數(shù)限制為8級(jí)斜坡邊緣臺(tái)階邊緣噪聲點(diǎn)線通過該圖像中心的水平灰度剖面,包括孤立噪聲點(diǎn)平坦區(qū)域圖像21灰度斜坡邊緣的一階和二階導(dǎo)數(shù)在灰度斜坡的開始處并沿著整個(gè)灰度斜坡:一階導(dǎo)數(shù)不為零,同時(shí)二階導(dǎo)數(shù)僅在斜坡的開始處和結(jié)尾處不為零。一階導(dǎo)數(shù)會(huì)產(chǎn)生“粗”邊緣,而二階導(dǎo)數(shù)則會(huì)產(chǎn)生細(xì)得多的邊緣。進(jìn)入邊緣和離開邊緣過渡時(shí)的二階導(dǎo)數(shù)的符號(hào)相反(從正到負(fù)或從負(fù)到正)。22噪聲點(diǎn)的一階和二階導(dǎo)數(shù)在孤立噪聲點(diǎn)處的二階導(dǎo)數(shù)響應(yīng)幅度遠(yuǎn)強(qiáng)于一階導(dǎo)數(shù)響應(yīng)幅度。在增強(qiáng)劇烈變化方面,二階導(dǎo)數(shù)要比一階導(dǎo)數(shù)更為激進(jìn)??梢灶A(yù)期在增強(qiáng)細(xì)節(jié)(包括噪聲)方面二階導(dǎo)數(shù)遠(yuǎn)強(qiáng)于一階導(dǎo)數(shù)。23線、臺(tái)階邊緣的一階和二階導(dǎo)數(shù)

7、線的二階導(dǎo)數(shù)的幅度比其一階導(dǎo)數(shù)的幅度更大。進(jìn)入臺(tái)階邊緣和離開臺(tái)階邊緣過渡時(shí)的二階導(dǎo)數(shù)的符號(hào)相反(從正到負(fù)或從負(fù)到正)這種“雙邊緣效應(yīng)”是可用于定位邊緣的一種重要特性。二階導(dǎo)數(shù)的符號(hào)也可用于確定一個(gè)邊緣是從亮到暗(負(fù)二階導(dǎo)數(shù))過渡還是從暗到亮(正二階導(dǎo)數(shù))過渡。24結(jié)論一階導(dǎo)數(shù)通常在圖像中產(chǎn)生較粗的邊緣;二階導(dǎo)數(shù)對精細(xì)細(xì)節(jié),如細(xì)線、孤立點(diǎn)和噪聲有較強(qiáng)的響應(yīng);二階導(dǎo)數(shù)在灰度斜坡和灰度臺(tái)階過渡處會(huì)產(chǎn)生雙邊緣響應(yīng);二階導(dǎo)數(shù)的符號(hào)可用于確定邊緣的過渡是從亮到暗還是從暗到亮。25用于計(jì)算圖像中每個(gè)像素位置處的一階導(dǎo)數(shù)和二階導(dǎo)數(shù)的可選擇方法是使用空間濾波器。對于33濾波器模板,該過程是計(jì)算模板系數(shù)與被該模板

8、覆蓋的區(qū)域中的灰度值的乘積之和。2610.2.2 孤立點(diǎn)的檢測點(diǎn)的檢測應(yīng)以二階導(dǎo)數(shù)為基礎(chǔ),由3.6.2節(jié)的討論,這意味著使用拉普拉斯算子。 點(diǎn)檢測(拉普拉斯)模板27拉普拉斯算子可以使用以上模板來實(shí)現(xiàn)。如果在某點(diǎn)處該模板的響應(yīng)的絕對值超過了一個(gè)指定的閾值,那么我們說在模板中心位置(x,y)處的該點(diǎn)已被檢測到了。在輸出圖像中,這樣的點(diǎn)被標(biāo)注為1,而所有其他點(diǎn)則被標(biāo)注為0,從而產(chǎn)生一幅二值圖像g(x,y),T是一個(gè)非負(fù)的閾值。28輸出是使用如下表達(dá)式得到的:該式簡單地度量一個(gè)像素及其8個(gè)相鄰像素間的加權(quán)差。從直觀上看,這一概念是一個(gè)孤立點(diǎn)的灰度將完全不同于其周圍像素的灰度。通常對于一個(gè)導(dǎo)數(shù)模板,這

9、些系數(shù)之和為零表明在恒定灰度區(qū)域模板響應(yīng)將是0。這種類型的檢測過程相當(dāng)特殊,因?yàn)樗趩蝹€(gè)像素位置處灰度的突變,這些位置被檢測模板區(qū)域中的同質(zhì)背景所圍繞。29圖像中孤立點(diǎn)的檢測帶有一個(gè)通孔的渦輪葉片的X射線圖像。該通孔含有一個(gè)黑色像素。點(diǎn)檢測模板與圖像卷積的結(jié)果。使用式得到的結(jié)果,結(jié)果中顯示了一個(gè)點(diǎn)。T取“模板與圖像卷積的結(jié)果”中像素的最高絕對值的90。3010.2.3 線檢測對于線檢測,可以預(yù)期二階導(dǎo)數(shù)將導(dǎo)致更強(qiáng)的響應(yīng),并產(chǎn)生比一階導(dǎo)數(shù)更細(xì)的線。對于線檢測,我們也可以使用拉普拉斯模板,二階導(dǎo)數(shù)的雙線效應(yīng)必須做適當(dāng)?shù)奶幚怼?1用拉普拉斯進(jìn)行線檢測原圖像(二值圖像)拉普拉斯圖像,放大部分顯示了拉

10、普拉斯的正/負(fù)雙線效應(yīng)(中等灰度表示零;較暗的灰色調(diào)表示負(fù)值;而較亮的色調(diào)表示正值)拉普拉斯的絕對值(會(huì)使線的寬度加倍)拉普拉斯的正值(產(chǎn)生更細(xì)的線)當(dāng)線的寬度比拉普拉斯模板的尺寸寬時(shí),這些線就被一個(gè)零值“山谷”分開了。32具有檢測特定方向的線的最佳相應(yīng)模板以上所用的拉普拉斯檢測子是各向同性的,因此其響應(yīng)與方向無關(guān)(相對于該33拉普拉斯模板的4個(gè)方向:垂直方向、水平方向和兩個(gè)對角方向)。通常,我們的興趣在于檢測特定方向的線。水平+45垂直-45線檢測模板每個(gè)模板的首選方向用一個(gè)比其他方向更大的系數(shù)加權(quán)。每個(gè)模板中的系數(shù)之和為零,這表明恒定灰度區(qū)域中的響應(yīng)為零。33特定方向線的檢測(a) 接線板

11、掩模圖像;(b) 使用45線檢測子模板處理后的結(jié)果;(c) 圖(b)左上方區(qū)域的放大觀察圖;(d) 圖(b)右下區(qū)域的放大觀察圖;(e) 將圖(b)中所有負(fù)值置為零后的圖像;(f) 其值滿足條件gT的所有點(diǎn)(白色), 其中g(shù)是圖(e)中的圖像 為便于查看,圖(f)中的點(diǎn)已被放大3410.2.4 邊緣模型邊緣檢測是基于灰度突變來分割圖像的最常用的方法。邊緣模型根據(jù)它們的灰度剖面來分類。臺(tái)階邊緣是指在1個(gè)像素的距離上發(fā)生兩個(gè)灰度級(jí)間理想的過渡。實(shí)際中,數(shù)字圖像都存在被模糊且?guī)в性肼暤倪吘?,在這種情況下,邊緣被建模為一個(gè)更接近灰度斜坡的剖面。35邊緣的第三種模型是所謂的“屋頂”邊緣,屋頂邊緣是通過一

12、個(gè)區(qū)域的線的模型,屋頂邊緣的基底(寬度)由該線的寬度和尖銳度決定。臺(tái)階模型斜坡模型屋頂邊緣模型36顯示了(放大后的)實(shí)際斜坡(左下)、臺(tái)階(右上)和屋頂邊緣剖面的一幅大小為15081970的圖像37(a) 由一條理想垂直邊緣分開的兩個(gè)恒定灰度區(qū)域;(b) 邊緣附近的細(xì)節(jié),顯示了一個(gè)水平灰度剖面 及其一階導(dǎo)數(shù)和二階導(dǎo)數(shù)水平灰度剖面一階導(dǎo)數(shù)二階導(dǎo)數(shù)二階導(dǎo)數(shù)的零交叉點(diǎn)38由這些觀察我們可以得出結(jié)論:一階導(dǎo)數(shù)的幅度可用于檢測圖像中的某個(gè)點(diǎn)處是否存在一個(gè)邊緣。同樣,二階導(dǎo)數(shù)的符號(hào)可用于確定一個(gè)邊緣像素位于該邊緣的暗的一側(cè)還是亮的一側(cè)。39我們注意到圍繞一條邊緣的二階導(dǎo)數(shù)的兩個(gè)附加性質(zhì):對圖像中的每條邊緣

13、,二階導(dǎo)數(shù)生成兩個(gè)值(一條不希望的特點(diǎn));二階導(dǎo)數(shù)的零交叉點(diǎn)可用于定位粗邊緣的中心。40一條有噪聲邊緣的一階導(dǎo)數(shù)和二階導(dǎo)數(shù)的性質(zhì)第一列:被均值為0、標(biāo)準(zhǔn)差分別為0.0,0.1,1.0和10.0個(gè)灰度級(jí)的隨機(jī)高斯噪聲所污染的斜坡邊緣的圖像和灰度剖面。第二列:一階導(dǎo)數(shù)圖像和灰度剖面線。第三列:二階導(dǎo)數(shù)圖像和灰度剖面線(二階導(dǎo)數(shù)對于噪聲甚至更為敏感)41執(zhí)行邊緣檢測的三個(gè)基本步驟為降噪對圖像進(jìn)行平滑處理:需要這一步的原因已由上圖的第二列和第三列中的結(jié)果做了詳細(xì)說明。邊緣點(diǎn)的檢測:這是一個(gè)局部操作,從一幅圖像中提取所有的點(diǎn),這些點(diǎn)是變?yōu)檫吘夵c(diǎn)的潛在候選者。邊緣定位:從候選邊緣點(diǎn)中選擇組成邊緣點(diǎn)集合中的

14、真實(shí)成員。4210.2.5 基本邊緣檢測為了達(dá)到尋找邊緣的目的,檢測灰度變化可用一階或二階導(dǎo)數(shù)來完成。為了在一幅圖像f的(x, y)位置處尋找邊緣的強(qiáng)度和方向,所選擇的工具就是梯度,梯度用 f來表示,并用向量來定義:43圖像梯度及其性質(zhì)梯度向量指出了f在位置(x, y)處的最大變化率的方向。梯度向量f的大?。ㄩL度)表示為M(x, y),是梯度向量方向變化率的值:梯度向量的方向由對于x軸度量的角度給出:任意點(diǎn)(x,y)處一個(gè)邊緣的方向與該點(diǎn)處梯度向量的方向(x,y)正交。44用梯度確定某個(gè)點(diǎn)處的邊緣強(qiáng)度和方向。某點(diǎn)處的邊緣垂直于該點(diǎn)處的梯度向量的方向。相對于x軸正方向45梯度算子要得到一幅圖像的

15、梯度,則要求在圖像的每個(gè)像素位置處計(jì)算偏導(dǎo)數(shù) 和 。用于計(jì)算梯度偏導(dǎo)數(shù)的濾波器模板,通常稱為梯度算子、差分算子、邊緣算子或邊緣檢測子。46羅伯特交叉梯度算子 一階微分梯度圖像近似梯度圖像Prewitt算子47近似x方向的一階偏微分近似y方向的一階偏微分48Sobel算子近似x方向的一階偏微分近似y方向的一階偏微分49檢測對角邊緣的Prewitt和Sobel模板50兩個(gè)梯度分量gx和gy的絕對值響應(yīng),以及由這兩個(gè)分量之和形成的梯度圖像(a) 灰度值已標(biāo)定為范圍0, 1內(nèi)的、大小為8341114的原圖像;(b) gx,用檢測水平方向的Sobel模板濾波圖像得到的x方向上的梯度分量;(c) gy,用

16、檢測垂直方向的Sobel模板得到的y方向上的梯度分量;(d) 梯度圖像gxgy 。51梯度角度圖像使用 計(jì)算的梯度角度圖像。在該圖像中的恒定灰度區(qū)域指出這些區(qū)域中所有像素位置處的梯度向量的方向均相同。52原圖像平滑后得到的梯度圖像,得到的幾乎都是主要的邊緣。(a) 灰度值已標(biāo)定為范圍0, 1內(nèi)的、大小為8341114的原圖像;在邊緣檢測之前,用大小為55的均值濾波器對原圖像進(jìn)行了平滑;(b) gx,用檢測水平方向的Sobel模板濾波圖像得到的x方向上的梯度分量;(c) gy,用檢測垂直方向的Sobel模板得到的y方向上的梯度分量;(d) 梯度圖像gxgy 。53對角邊緣檢測使用45Sobel模

17、板得到的結(jié)果使用-45Sobel模板得到的結(jié)果這些模板有較強(qiáng)的對角響應(yīng)。54與閾值處理相結(jié)合的梯度消除弱小邊緣的另一種方法是對梯度圖像進(jìn)行閾值處理。經(jīng)過閾值處理后的圖像中邊緣更少,并且圖像中的邊緣要尖銳得多。另一方面,在閾值處理后的圖像中,許多邊緣,被斷開了。55經(jīng)閾值處理后的梯度圖像,此時(shí)其值大于或等于梯度圖像的最大值的33的像素顯示為白色,而低于該閾值的像素則顯示為黑色。原圖像未經(jīng)平滑的梯度圖像gxgy 左邊圖像經(jīng)閾值處理后的圖像,閾值選擇為圖像中最高值的33。56經(jīng)閾值處理后的梯度圖像,此時(shí)其值大于或等于梯度圖像的最大值的33的像素顯示為白色,而低于該閾值的像素則顯示為黑色。原圖像經(jīng)平滑

18、后的梯度圖像gxgy 左邊圖像經(jīng)閾值處理后的圖像,閾值選擇為圖像中最高值的33。5710.2.6 更先進(jìn)的邊緣檢測技術(shù)前一節(jié)中討論的邊緣檢測方法是以用一個(gè)或多個(gè)模板對圖像進(jìn)行濾波為基礎(chǔ)的,而未對圖像特性和噪聲內(nèi)容采取預(yù)防措施。在這一節(jié),我們討論更為先進(jìn)的技術(shù),嘗試考慮諸如圖像噪聲和邊緣本身特性的因素改進(jìn)簡單的邊緣檢測方法。58MarrHildreth(馬爾海德斯)邊緣檢測器最早的成功地嘗試將更高級(jí)的分析結(jié)合到邊緣檢測處理之一應(yīng)歸功于Marr和Hildreth。Marr和Hildreth證明了:灰度變化與圖像尺寸無關(guān),因此他們的檢測要求使用不同尺寸的算子;灰度的突然變化會(huì)在一階導(dǎo)數(shù)中引起波峰或波

19、谷,或在二階導(dǎo)數(shù)中等效地引起零交叉。59用于邊緣檢測的算子應(yīng)有兩個(gè)顯著的特點(diǎn)。它應(yīng)該是一個(gè)能計(jì)算圖像中每一點(diǎn)處的一階導(dǎo)數(shù)或二階導(dǎo)數(shù)的數(shù)字近似的微分算子;它應(yīng)能被“調(diào)整”以便在任何期望的尺寸上起作用。因此,大的算子也可用于檢測模糊邊緣,小的算子可用于檢測銳度集中的精細(xì)細(xì)節(jié)。 60Marr和Hildreth論證過,滿足這些條件的最令人滿意的算子是濾波器2G。高斯拉普拉斯(LoG)61高斯拉普拉斯(LoG)(a) 負(fù)LoG的三維圖;(b) 顯示為一幅圖像的負(fù)LoG圖;(c) 顯示了零交叉的圖(a)的橫截面;(d) 對圖(a)中形狀55模板的近似,實(shí)際中將使用該模板的負(fù)值。622G的兩個(gè)基本概念選擇算

20、子2G的基礎(chǔ)有兩個(gè)基本概念。第一,算子的高斯部分會(huì)模糊圖像;另一個(gè)概念涉及2,即濾波器的二階導(dǎo)數(shù)部分。拉普拉斯有各向同性(旋轉(zhuǎn)不變)的重要優(yōu)點(diǎn),這不僅符合人的視覺系統(tǒng)特性,而且對任何模板方向的灰度變化有相等的響應(yīng),從而避免了使用多個(gè)模板去計(jì)算圖像中任何點(diǎn)處的最強(qiáng)響應(yīng)。63MarrHildreth算法MarrHildreth算法由LoG濾波器與一幅輸入圖像f(x,y)卷積組成,即:然后尋找g(x,y)的零交叉點(diǎn)來確定f(x,y)中邊緣的位置。 64MarrHildreth邊緣檢測算法用一個(gè)對式 取樣得到的nn的高斯低通濾波器對輸入圖像濾波;計(jì)算由第一步得到的圖像的拉普拉斯;找到步驟2所得圖像的零

21、交叉。在濾波后的圖像g(x,y)的任意像素p處,尋找零交叉的一種方法是用以p為中心的一個(gè)33鄰域。p點(diǎn)處的零交叉意味著至少有兩個(gè)相對的鄰域像素的符號(hào)不同。有4種要測試的情況:左/右、上/下和兩個(gè)對角。65MarrHildreth邊緣檢測算法說明(a) 大小為8341114像素、灰度值已標(biāo)定到范圍0,1的原圖像;(b) MarrHildreth算法的步驟1和步驟2得到的結(jié)果,其中4和n25;(c) 使用零閾值的圖(b)的零交叉(注意閉環(huán)邊緣);(d) 使用等于圖(b)中圖像的最大值的4的閾值時(shí),找到的零交叉。注意細(xì)邊緣。66Marr和Hildreth指出過,使用高斯差分(DoG)來近似LoG濾波

22、器是可能的:其中1267高斯差(DoG)算子2G算子可以非常有效地用兩個(gè)具有明顯不同的高斯平滑掩模的差來近似。這種方法被稱為高斯差分,縮寫為DoG。68坎尼邊緣檢測器坎尼檢測器是迄今為止討論過的邊緣檢測器中最為優(yōu)秀的??材岱椒ɑ谌齻€(gè)基本目標(biāo):低錯(cuò)誤率。所有邊緣都應(yīng)被找到,并且應(yīng)該沒有偽響應(yīng)。也就是檢測到的邊緣必須盡可能是真實(shí)的邊緣。邊緣點(diǎn)應(yīng)被很好地定位。已定位邊緣必須盡可能接近真實(shí)邊緣。由檢測器標(biāo)記為邊緣的點(diǎn)和真實(shí)邊緣的中心之間的距離應(yīng)該最小。69單一的邊緣點(diǎn)響應(yīng)。對于真實(shí)的邊緣點(diǎn),檢測器僅應(yīng)返回一個(gè)點(diǎn)。也就是真實(shí)邊緣周圍的局部最大數(shù)應(yīng)該是最小的。這意味著在僅存一個(gè)單一邊緣點(diǎn)的位置,檢測器不

23、應(yīng)指出多個(gè)邊緣像素。70坎尼的工作的本質(zhì)是從數(shù)學(xué)上表達(dá)了前面的三個(gè)準(zhǔn)則,并試圖找到這些表達(dá)式的最佳解。通常,尋找一個(gè)滿足前述目標(biāo)的、嚴(yán)格形式的解是很困難的(或不可能的)。然而,對由加性高斯白噪聲污染的一維臺(tái)階邊緣使用數(shù)字最佳化會(huì)得到這樣一個(gè)結(jié)論,即對最佳臺(tái)階邊緣檢測器的一個(gè)較好近似是高斯一階導(dǎo)數(shù)。71把該結(jié)果推廣到二維情況會(huì)涉及識(shí)別一維方法是否仍適用于邊緣法線的方向。因?yàn)轭A(yù)先法線方向未知,這就要求在所有可能的方向上應(yīng)用一維邊緣檢測器。這一任務(wù)可由如下方法來近似:首先使用一個(gè)環(huán)形二維高斯函數(shù)平滑圖像,計(jì)算結(jié)果的梯度,然后使用梯度幅度和方向來估計(jì)每一點(diǎn)處的邊緣強(qiáng)度和方向。72因?yàn)樗鞘褂锰荻犬a(chǎn)生的

24、,典型地,M(x,y)在局部最大值周圍通常包含更寬的范圍。下一步是細(xì)化那些邊緣。一種方法是使用非最大抑制。這可通過幾種方式來做,但該方法的本質(zhì)是指定邊緣法線的許多離散方向(梯度向量)。例如,在一個(gè)33區(qū)域內(nèi),對于一個(gè)通過該區(qū)域中心點(diǎn)的邊緣,我們可以定義四個(gè)方向:水平、垂直、45和45。73邊緣方向(必須把所有可能的邊緣方向量化為四個(gè)方向)(a) 在一個(gè)33鄰域中,一個(gè)水平邊緣(灰色)的兩個(gè)可能方向;(b) 一個(gè)水平邊緣的邊緣法線的方向角的值的范圍(灰色);(c) 在一個(gè)33鄰域中,4種類型的邊緣方向的邊緣法線的角度范圍。每個(gè)邊緣方向都有兩個(gè)范圍,以對應(yīng)的灰色顯示。74非最大抑制方案令d1,d2

25、,d3和d4表示剛才討論的33區(qū)域的四個(gè)基本邊緣方向:水平、-45、垂直、+45。對于在(x,y)中以每一點(diǎn)(x,y)為中心的33區(qū)域,我們可給出如下非最大抑制方案:75尋找最接近(x,y)的方向dk。如果M(x,y)的值至少小于沿dk的兩個(gè)鄰居之一,則令gN(x,y)0 (抑制);否則,令gN(x,y)M(x,y),這里gN(x,y)是非最大抑制后的圖像。例如,令(x,y)在p5處,并假設(shè)一個(gè)水平邊緣通過p5,在步驟2中我們感興趣的像素是p2和p8。圖像gN(x,y)僅包含細(xì)化后的邊緣;它等于抑制了非最大邊緣點(diǎn)的M(x,y)。76滯后閾值方案最后的操作是對gN(x,y)進(jìn)行閾值處理,以便減少

26、偽邊緣點(diǎn)。之前我們使用單閾值進(jìn)行閾值處理,其中低于該閾值的所有值均置為零。如果設(shè)的閾值過低,則仍會(huì)存在一些偽邊緣(稱為偽正值)。如果閾值設(shè)得過高,則會(huì)刪除實(shí)際上有效的邊緣點(diǎn)(偽負(fù)值)。 77坎尼算法通過使用滯后閾值試圖改進(jìn)這一狀況,使用兩個(gè)閾值:一個(gè)低閾值TL和一個(gè)高閾值TH??材峤ㄗh,高閾值和低閾值的比率應(yīng)為2:1或3:1。我們可以將閾值操作想象為創(chuàng)建兩幅附加的圖像:78閾值處理后,gNH(x,y)的非零像素通常比gNL(x,y)少,但是gNH(x,y)中的所有非零像素都將包含在gNL(x,y)中,因?yàn)楹笠粓D像是使用一個(gè)低閾值形成的。我們從gNL(x,y)中刪除所有來自gNH(x,y)的非零

27、像素。gNH(x,y)和gNL(x,y)中的非零像素可分別看成是“強(qiáng)”和“弱”邊緣像素。79閾值處理后,gNH(x,y)中的所有強(qiáng)像素均被假設(shè)為有效的邊緣像素,并被立即標(biāo)記。取決于TH的值,gNH(x,y)中的邊緣通常會(huì)存在縫隙。較長的邊緣用下列步驟形成:在gNH(x,y)中定位下一個(gè)未被訪問的邊緣像素p。在gNL(x,y)中將所有的弱像素標(biāo)記為有效邊緣像素,用8連通性的連接方法連接到p。80如果gNH(x,y)中的所有非零像素已被訪問,則跳到步驟(d),否則返回步驟(a)。將gNL(x,y)中未標(biāo)記為有效邊緣像素的所有像素置零。在這一過程的末尾,將來自gNL(x,y)的所有非0像素附加到gN

28、H(x,y),用坎尼算子形成最終的輸出圖像。在實(shí)際中,滯后閾值處理可在非最大抑制期間直接執(zhí)行。81坎尼邊緣檢測算法的基本步驟用一個(gè)高斯濾波器平滑輸入圖像。計(jì)算梯度幅值圖像和角度圖像。對梯度幅值圖像應(yīng)用非最大抑制。用雙閾值處理和連接分析來檢測并連接邊緣。盡管非最大抑制后的邊緣比原來的梯度邊緣細(xì),但仍保持了比1像素粗的邊緣。為得到1個(gè)像素粗的邊緣,典型地,緊跟步驟4,用一遍邊緣細(xì)化算法。82坎尼邊緣檢測方法說明(a) 大小為8341114像素、灰度值標(biāo)定為范圍0,1內(nèi)的原圖像;(b) 平滑過的圖像經(jīng)閾值處理后得到的梯度圖像;(c) 使用MarrHildreth算法得到的圖像;(d) 使用坎尼算法得

29、到的圖像。注意,與其他兩幅圖像相比,坎尼圖像有明顯的改進(jìn)。TL0.04,TH0.10(低閾值的2.5倍),4,以及對應(yīng)于大于6的最小奇整數(shù)的、大小為2525的模板。 要求:1、檢測主要邊緣,同時(shí)要減少“無關(guān)”特征,如由磚塊和屋瓦引起的邊緣;2、連續(xù)性、細(xì)度和筆直度等線的質(zhì)量。83三種主要邊緣檢測方法的說明作為三種主要邊緣檢測方法的另一比較,考慮一幅大小為512512的頭部CT圖像。在這個(gè)例子中,我們的目的是提取大腦外輪廓(圖像中的灰色區(qū)域)、脊髓區(qū)域輪廓(直對著鼻子的后邊、朝著大腦前)和頭部外輪廓的邊緣。在消除眼部和大腦區(qū)域中與灰色有關(guān)的邊緣細(xì)節(jié)時(shí),我們希望生成盡可能最細(xì)且連續(xù)的輪廓。84圖(

30、b)顯示了一幅閾值處理后的梯度圖像,它已先用一個(gè)55均值濾波器平滑過。達(dá)到所示結(jié)果要求的閾值是該梯度圖像的最大值的15。圖(c)顯示了使用MarrHildreth邊緣檢測算法得到的結(jié)果,閾值為0.002,3,模板大小為1919像素。圖(d)是使用坎尼算法得到的,TL0.05,TH0.15(低閾值的3倍),2,模板大小為1313。像MarrHildreth情況那樣,它對應(yīng)于大于6的最小奇整數(shù)。85在邊緣質(zhì)量及消除無關(guān)細(xì)節(jié)的能力方面,坎尼算法是唯一能為大腦后邊界產(chǎn)生完整無斷裂的邊緣的過程,它也是在消除原始圖像中與灰度物質(zhì)有關(guān)的所有邊緣時(shí),有可能發(fā)現(xiàn)最好輪廓的過程。坎尼算法改進(jìn)性能所付出的代價(jià)是比早

31、些時(shí)候討論的兩種方法實(shí)現(xiàn)起來更復(fù)雜,同時(shí)執(zhí)行時(shí)間會(huì)更長。在實(shí)時(shí)工業(yè)圖像處理的應(yīng)用中,成本和速度需求通常要求我們使用更簡單的技術(shù),主要是閾值梯度方法。當(dāng)關(guān)注的主要是邊緣質(zhì)量時(shí),通常會(huì)使用MarrHildreth算法和坎尼算法,特別是坎尼算法。8687(a) 大小為512512像素、灰度值已標(biāo)定到范圍0, 1內(nèi)的原始頭部CT圖像;(b) 平滑后的圖像經(jīng)閾值處理后的梯度圖像;(c) 用MarrHildreth算法得到的圖像;(d) 用坎尼算法得到的圖像。10.2.7 邊緣連接和邊界檢測理想情況下,邊緣檢測應(yīng)該僅產(chǎn)生位于邊緣上的像素集合。實(shí)際上,由于噪聲、不均勻照明引起的邊緣間斷,以及其他引入灰度值虛

32、假的不連續(xù)的影響,這些像素并不能完全描述邊緣特性。因此,一般是在邊緣檢測后緊跟著連接算法,所設(shè)計(jì)的算法將邊緣像素組合成有意義的邊緣或區(qū)域邊界。88在這一節(jié)中,我們討論一種基本的邊緣連接方法,需要有關(guān)局部區(qū)域中邊緣點(diǎn)(如一個(gè)33鄰域)的知識(shí)。連接邊緣點(diǎn)最簡單的方法之一是在每個(gè)點(diǎn)(x,y)處的一個(gè)小鄰域內(nèi)分析像素的特點(diǎn),該點(diǎn)是用前節(jié)討論過的技術(shù)之一聲明了的邊緣點(diǎn)。89根據(jù)預(yù)定的準(zhǔn)則,將所有的相似點(diǎn)連接起來,以形成根據(jù)指定準(zhǔn)則滿足相同特性像素的一條邊緣。在這種類型的分析中,用于確定邊緣像素相似性的兩個(gè)主要性質(zhì)是:(1)梯度向量的強(qiáng)度(幅度);(2)梯度向量的方向。第一個(gè)性質(zhì)基于式:第二個(gè)性質(zhì)基于式:

33、90令Sxy表示一幅圖像中以點(diǎn)(x,y)為中心的一個(gè)鄰域的坐標(biāo)集合。如果 , 式中,E是一個(gè)正閾值。如果 , 式中,A是一個(gè)正角度閾值。則Sxy中,坐標(biāo)(s,t)處的一個(gè)邊緣像素有一個(gè)與(x,y)處像素類似的角度。91如果既滿足幅度準(zhǔn)則,也滿足方向準(zhǔn)則,則Sxy中,坐標(biāo)為(s,t)的像素被連接到坐標(biāo)為(x,y)的像素。在圖像中的每個(gè)位置重復(fù)這一處理。當(dāng)鄰域的中心從一個(gè)像素移到另一個(gè)像素時(shí),必須將已連接的點(diǎn)記錄下來。一個(gè)簡單的記錄過程是對每組被連接的像素分配不同的灰度值。92前面的公式計(jì)算代價(jià)很高,因?yàn)楸仨殭z驗(yàn)每個(gè)點(diǎn)的所有鄰點(diǎn)。一種特別適合于實(shí)時(shí)應(yīng)用的一種簡化由如下步驟組成:93計(jì)算輸入圖像f(

34、x,y)的梯度幅度陣列M(x,y)和梯度角度陣列(x,y)。形成一幅二值圖像g,任何坐標(biāo)對(x,y)處的值由下式給出: TM是一個(gè)閾值,A是一個(gè)指定的角度方向,TA定義了一個(gè)關(guān)于A的可接受方向“帶寬”。94掃描g的行,并在不超過指定長度K的每一行中填充(置1)所有縫隙(0的集合)。注意,按照定義,縫隙一定要限制在一個(gè)1或多個(gè)1的兩端。分別地處理各行,它們之間沒有記憶。在任何其他方向上檢測縫隙,以該角度旋轉(zhuǎn)g,并應(yīng)用步驟3中的水平掃描過程。然后,將結(jié)果以-旋轉(zhuǎn)回來。95當(dāng)興趣在于水平邊緣連接和垂直邊緣連接時(shí),步驟4就變?yōu)橐粋€(gè)簡單的過程,在該過程中,g被旋轉(zhuǎn)90,掃描各行后,結(jié)果再被旋轉(zhuǎn)回來。96

35、使用局部處理的邊緣連接(a)顯示了一輛汽車尾部的圖像。該例的目的是說明用前述算法來尋找大小適合車牌的矩形的應(yīng)用。該矩形可以通過檢測強(qiáng)的水平和垂直邊緣構(gòu)成。(b)顯示了梯度幅度圖像M(x,y)。97(c)和(d)顯示了該算法步驟3和步驟4的結(jié)果,其中,令TM等于最大梯度值的30,A90,TA45,并填充了全部25個(gè)或更少像素的縫隙(約為圖像寬度的5)。為檢測車牌殼的全部拐角和汽車的后窗,要求使用一個(gè)較大范圍的容許角度方向。98(e)是前兩幅圖像邏輯“或”(OR)操作的結(jié)果。(f)是使用9.5.5節(jié)討論的細(xì)化過程細(xì)化圖10.27(e)得到的。如圖(f)所示,在圖像中清楚地檢測到了對應(yīng)于車牌的矩形。

36、99(a)一幅大小為534566的汽車后部圖像;(b)梯度幅度圖像;(c)水平連接的邊緣像素;(d)垂直連接的邊緣像素;(e)前兩幅圖像的邏輯“或”(OR);(f)用形態(tài)學(xué)細(xì)化得到的最終結(jié)果。100數(shù)字圖像處理實(shí)驗(yàn)3完成數(shù)字圖像處理P468頁例10.10的編程實(shí)驗(yàn),編程語言可以選擇Matlab,C,C+,OpenCV,Python等。設(shè)計(jì)方案可參照教科書中的分析,也可以自行設(shè)計(jì)新的方案。10110210.3 閾值處理10310.3.1 基礎(chǔ)知識(shí)-灰度閾值處理基礎(chǔ)由于閾值處理直觀、實(shí)現(xiàn)簡單且計(jì)算速度快,因此圖像閾值處理在圖像分割應(yīng)用中處于核心地位。在前面的章節(jié)中,我們采用首先尋找邊緣線段,然后試

37、圖將這些線段連接為邊界的方法來識(shí)別區(qū)域。在這一節(jié)中,我們將討論基于灰度值和/或灰度值的特性來將圖像直接劃分為區(qū)域的技術(shù)。104被單閾值分隔的灰度直方圖假設(shè)上圖中的灰度直方圖對應(yīng)于圖像f(x,y),該圖像由暗色背景上的較亮物體組成。從背景中提取物體的一種明顯方法是選擇一個(gè)將這些模式分開的閾值T。然后,f(x,y)T的任何點(diǎn)(x,y)稱為一個(gè)對象點(diǎn);否則將該點(diǎn)稱為背景點(diǎn)。換句話說,分割后的圖像g(x,y)由下式給出:使用灰度0來表示背景像素而使用灰度1來表示物體像素。105當(dāng)T是一個(gè)適用于整個(gè)圖像的常數(shù)時(shí),該公式給出的處理稱為全局閾值處理。當(dāng)T值在一幅圖像上改變時(shí),稱為可變閾值處理。術(shù)語局部閾值處

38、理或區(qū)域閾值處理有時(shí)用于表示可變閾值處理,此時(shí),圖像中任何點(diǎn)(x,y)處的T值取決于(x,y)的鄰域的特性(例如鄰域中的像素的平均灰度)。如果T取決于空間坐標(biāo)(x,y)本身,則可變閾值處理通常稱為動(dòng)態(tài)閾值處理或自適應(yīng)閾值處理。106被雙閾值分隔的灰度直方圖上圖顯示了一個(gè)更為困難的閾值處理問題,它包含有三個(gè)支配模式的直方圖。例如,這三個(gè)支配模式對應(yīng)于暗色背景上的兩個(gè)明亮物體。這里,如果f(x,y)T1,則多閾值處理把點(diǎn)(x,y)分類為屬于背景;如果T1f(x,y)T2,則分為一個(gè)物體;如果f(x,y)T2,則為分另一個(gè)物體。即分割的圖像由下式給出:其中,a,b和c是任意三個(gè)不同的灰度值。107影

39、響基于灰度閾值分割的因素基于前面的討論,可以憑直覺推斷灰度閾值的成功與否直接關(guān)系到可區(qū)分的直方圖模式的谷的寬度和深度。而影響波谷特性的關(guān)鍵因素是:波峰間的間隔(波峰離得越遠(yuǎn),分離這些模式的機(jī)會(huì)越好);圖像中的噪聲內(nèi)容(模式隨噪聲的增加而展寬);物體和背景的相對尺寸;光源的均勻性;圖像反射特性的均勻性。108圖像閾值處理中噪聲的作用(a) 無噪聲的8比特圖像;(b) 帶有均值為零、標(biāo)準(zhǔn)差為10個(gè)灰度級(jí)的加性高斯噪聲的圖像;(c) 帶有均值為零、標(biāo)準(zhǔn)差為50個(gè)灰度級(jí)的加性高斯噪聲的圖像;(d)(f)相應(yīng)的直方圖。109光照和反射的作用(a) 帶有噪聲的圖像;(b) 在0.2,0.6范圍內(nèi)的灰度斜坡

40、圖像;(c) 圖(a)和圖(b)的乘積;(d)(f) 相應(yīng)的直方圖。通過一個(gè)可變的灰度函數(shù)乘以圖(a)中的圖像來說明非均勻光照的影響。如果光照不均勻,或者反射不均勻都會(huì)得到類似的結(jié)果。11010.3.2 基本的全局閾值處理當(dāng)物體和背景像素的灰度分布十分明顯時(shí),可以用適用于整個(gè)圖像的單個(gè)(全局)閾值。在大多數(shù)應(yīng)用中,通常圖像之間有較大變化,即使全局閾值是一種合適的方法,對每一幅圖像有能力自動(dòng)估計(jì)閾值的算法也是需要的。下面的迭代算法可用于這一目的:111基本的全局閾值處理算法為全局閾值T選擇一個(gè)初始估計(jì)值。在 中用T分割該圖像。這將產(chǎn)生兩組像素:G1由灰度值大于T的所有像素組成,G2由所有小于等于

41、T的像素組成。對G1和G2的像素分別計(jì)算平均灰度值(均值)m1和m2。計(jì)算一個(gè)新的閾值:重復(fù)步驟2到步驟4,直到連續(xù)迭代中的T值間的差小于一個(gè)預(yù)定義的參數(shù)T為止。112當(dāng)與物體和背景相關(guān)的直方圖模式間存在一個(gè)相當(dāng)清晰的波谷時(shí),這個(gè)簡單的算法工作得很好。在速度是一個(gè)重要因素的情形下,參數(shù)T用于控制迭代的次數(shù)。通常,T越大,則算法執(zhí)行的迭代次數(shù)越少。所選的初始閾值必須大于圖像中的最小灰度級(jí)而小于最大灰度級(jí)。圖像的平均灰度對于T來說是較好的初始選擇。113全局閾值處理的例子(a) 帶噪聲的指紋;(b) 直方圖;(c) 使用全局閾值對圖像分割的結(jié)果。用Tm(平均圖像灰度)開始,并令T0,應(yīng)用前述迭代算

42、法經(jīng)過3次迭代后,得到閾值T125.4。圖(c)顯示了使用閾值T125來分割原圖像得到的結(jié)果。11410.3.3 用Otsu方法的最佳全局閾值處理閾值處理可視為一種統(tǒng)計(jì)決策理論問題,其目的是在把像素分配給兩個(gè)或多個(gè)組(也稱為分類)的過程中引入的平均誤差最小。這一問題已知有一個(gè)精致的閉合形式的解,稱為貝葉斯決策規(guī)則。該解僅以兩個(gè)參數(shù)為基礎(chǔ):即每一類的灰度級(jí)的概率密度函數(shù)(PDF)和在給定應(yīng)用中每一類出現(xiàn)的概率。遺憾的是估計(jì)PDF并不容易,通常采取假定一個(gè)PDF形式的可行方法來簡化該問題,例如,假設(shè)它們是高斯函數(shù)。即便采用了簡化,用這些假設(shè)求解的過程也可能是復(fù)雜的,并且對實(shí)際應(yīng)用也不總是合適的。本

43、節(jié)中討論的Otsu方法是另一種有吸引力的方案。該方法在類間方差最大的情況下是最佳的,即眾所周知的統(tǒng)計(jì)鑒別分析中所用的度量。115116基本概念是好閾值的分類結(jié)果,就它的像素灰度值而言,應(yīng)該是截然不同的;反過來說,就它的灰度值而言,給出最好的類間分離的閾值就是最好的(最佳的)閾值。除了其最佳性之外,Otsu方法有一個(gè)重要的特性,即它完全以在一幅圖像的直方圖上執(zhí)行計(jì)算為基礎(chǔ),直方圖是很容易得到的一維陣列。117令0, 1, 2, , L-1表示一幅大小為MN像素的數(shù)字圖像中的L個(gè)不同的灰度級(jí),ni表示灰度級(jí)為i的像素?cái)?shù)。圖像中的像素總數(shù)MN為MN=n0+n1+n2+nL-1。歸一化的直方圖具有分量

44、pini/MN,由此有:118現(xiàn)在,假設(shè)我們選擇一個(gè)閾值T(k)k,0kL-1,并使用它把輸入圖像閾值化處理為兩類C1和C2,其中,C1由圖像中灰度值在范圍0, k內(nèi)的所有像素組成,C2由灰度值在范圍k+1, L-1內(nèi)的所有像素組成。用該閾值,像素被分到類C1中的概率P1(k)由如下的累積和給出:119貝葉斯公式:P(A/B)P(B/A)P(A)/P(B)換一個(gè)角度看,這是類C1發(fā)生的概率。例如,如果我們置k0,則任何像素分到類C1中的概率為零。類似地,類C2發(fā)生的概率為:由式 ,可知分配到類C1的像素的平均灰度值為:貝葉斯公式 P(A/B)P(B/A)P(A)/P(B)120其中, 。P(i

45、/C1)項(xiàng)是值i的概率,已知i來自類C1。 來自貝葉斯公式:P(A/B)P(B/A)P(A)/P(B)給定i的C1的概率P(C1/i)為1,因?yàn)槲覀冎惶幚韥碜灶怌1的i值。P(i)是第i個(gè)值的概率,它是直方圖p(i)的第i個(gè)分量。P(C1)是類C1的概率,由 知道它等于P1(k)。 121類似地,分配到類C2中的像素的平均灰度值為:已知直至級(jí)k的累積均值為:整個(gè)圖像的平均灰度(即全局均值)為:122下面兩個(gè)公式的正確性可通過直接代入前面的結(jié)果來驗(yàn)證。其中,為有利于清楚地說明,我們暫時(shí)忽略了k項(xiàng)。為了評價(jià)級(jí)別k處的閾值的“質(zhì)量”,我們使用歸一化的無量綱矩陣: ,其中 是全局方差:123 為類間方

46、差,它定義為:該表達(dá)式還可寫為:其中,mG是全局均值,m是累積均值。這種形式在計(jì)算上稍微有效一些,因?yàn)槿志祄G僅計(jì)算一次,故對k的任何值僅需要計(jì)算兩個(gè)參數(shù)m和P1。124從上式可以看出,兩個(gè)均值m1和m2彼此隔得越遠(yuǎn), 越大,這表明類間方差是類之間的可分性度量。因?yàn)?是一個(gè)常數(shù),由此得出也是一個(gè)可分性度量,且最大化這一度量等價(jià)于最大化 。然后,目標(biāo)是確定閾值k,使它最大化類間方差。125注意,式 隱含假設(shè)了 0。僅當(dāng)圖像中的所有灰度級(jí)相同時(shí),這一方差才為零,這意味著僅存在一類像素。同樣,這也意味著對于常數(shù)圖像有0,因?yàn)閬碜云渥陨韱蝹€(gè)類的可分性為零。再次引入k,我們有最終結(jié)果:126從而最佳

47、閾值是k*,其最大化 :換句話說,為尋找k*,我們對k的所有整數(shù)值保持上述0P1(k)1的條件簡單地計(jì)算下式: ,并選取使得 最大的k值。如果 的最大值對應(yīng)于多個(gè)k值,習(xí)慣上是對于使 最大的k的各個(gè)值做平均。其中k所具有的整數(shù)值的最大數(shù)量是L。 127一旦得到k*,輸入圖像就可像之前那樣進(jìn)行分割:注意,僅僅用f(x,y)的直方圖就可以得到計(jì)算式 所需的所有參量。除了最佳閾值外,還可以提取在最佳閾值處計(jì)算出的類的概率P1(k*)和P2(k*),以及平均灰度的估計(jì)m1(k*)和m2(k*)。128在最佳閾值處計(jì)算的歸一化度量,即(k*),可用于得到類別可分性的定量估計(jì),同時(shí)給出了很容易對一幅給定圖

48、像進(jìn)行閾值處理的概念。這一度量的值域?yàn)?。 如先前提到的那樣,僅由單一且恒定灰度級(jí)的圖像就能得到下界,且僅由灰度等于0和L1的二值圖像就能得到上界。129Otsu算法小結(jié)計(jì)算輸入圖像的歸一化直方圖。使用pi,i=0,1,2,L-1表示該直方圖的各個(gè)分量。用式 ,對于k=0,1,2,L-1,計(jì)算累積和P1(k)。用式 ,對于k=0,1,2,L-1,計(jì)算累積均值m(k)。用式 計(jì)算全局灰度均值mG。 130用式 ( ,對于k=0,1,2,L-1,計(jì)算類間方差 。得到Otsu閾值k*,即使得 最大的k值。如果最大值不唯一,用相應(yīng)檢測到的各個(gè)最大值k的平均得到k*。在kk*處計(jì)算式 ,得到可分性度量*

49、。 131使用Otsu方法的最佳全局閾值處理(聚合細(xì)胞的光學(xué)顯微鏡圖像)(a) 原圖像;(b) 直方圖(為突出低值中的細(xì)節(jié),高峰已被裁剪);(c) 用基本全局算法得到的分割結(jié)果(計(jì)算出的閾值是169);(d) 用Otsu方法得到的結(jié)果(計(jì)算出的閾值是181,可分性度量是0.467)。10.3.4 用圖像平滑改善全局閾值處理噪聲可將一個(gè)簡單的閾值處理問題變?yōu)橐粋€(gè)不可解決問題。當(dāng)噪聲不能在源頭減少,并且閾值處理又是所選擇的分割方法時(shí),那么通??稍鰪?qiáng)性能的一種技術(shù)是在閾值處理之前平滑圖像。132133(a)來自圖10.36的噪聲圖像;(b)該圖像的直方圖;(c)用Otsu方法得到的結(jié)果;(d)用一個(gè)

50、大小為55的均值模板平滑噪聲圖像的結(jié)果;(e)結(jié)果圖像的直方圖;(f)用Otsu方法閾值處理后的結(jié)果(經(jīng)平滑和分割后的圖像中,物體和背景間的邊界稍微有點(diǎn)失真是由于對邊界的模糊造成的)。白色區(qū)域中的每個(gè)黑點(diǎn)和黑色區(qū)域中的每個(gè)白點(diǎn)是閾值處理的誤差,所以分割很不成功。134(a)噪聲圖像;(b)其直方圖;(c)用Otsu方法得到的結(jié)果;(d)用大小為55的均值模板平滑噪聲圖像后的結(jié)果;(e)結(jié)果圖像的直方圖;(f)用Otsu方法對圖像進(jìn)行閾值處理后的結(jié)果。兩種情形下,閾值處理均失敗。分割失敗的原因可歸于這樣一個(gè)事實(shí),即區(qū)域太小,以至于該區(qū)域?qū)χ狈綀D的貢獻(xiàn)與由噪聲引起的灰度擴(kuò)散相比無足輕重。10.3.

51、5 利用邊緣改進(jìn)全局閾值處理我們得出如下結(jié)論:如果直方圖的波峰是高、窄、對稱的,且被深的波谷分開,則選取一個(gè)“較好”閾值的機(jī)會(huì)是相當(dāng)大的。改進(jìn)直方圖形狀的一種方法是僅考慮那些位于或靠近物體和背景間的邊緣的像素。一種直接且明顯的改進(jìn)是直方圖很少依賴物體和背景的相對大小。135例如,大背景區(qū)域上一個(gè)小物體(或相反)組成的圖像的直方圖將會(huì)有一個(gè)較大的波峰,因?yàn)橐环N類型的像素高度集中。在前一節(jié)中我們已了解到,這可能會(huì)導(dǎo)致閾值處理失敗。如果僅用位于或接近物體和背景間的邊緣的像素,則得到的直方圖將有幾個(gè)高度近似相同的波峰。136此外,像素位于物體上的概率將近似等于其位于背景中的概率,從而改進(jìn)了直方圖模式的

52、對稱性。最后,用滿足某些基于梯度和拉普拉斯算子的簡單度量的像素有加深直方圖波峰間的波谷的傾向。根據(jù)10.2節(jié)中的討論,一個(gè)像素是否位于邊緣上可通過計(jì)算其梯度或拉普拉斯來確定。137例如,在一個(gè)邊緣的過渡處,拉普拉斯的平均值為零,因此,根據(jù)拉普拉斯準(zhǔn)則選取的像素所形成的直方圖的波谷應(yīng)該很少。這一特性往往會(huì)產(chǎn)生上面討論的較深波谷。實(shí)際上,無論是使用梯度圖像還是使用拉普拉斯圖像得到的典型結(jié)果相比較,后者比較有利,因?yàn)樗谟?jì)算上更有吸引力,同時(shí)也是一個(gè)各向同性邊緣檢測器。138有可能修改該算法以便同時(shí)使用梯度圖像的幅度和拉普拉斯圖像的絕對值。在這種情況下,我們會(huì)為每幅圖像指定一個(gè)閾值,并求兩個(gè)結(jié)果的邏

53、輯“或”(OR),以得到標(biāo)記圖像。當(dāng)需要對有效的邊緣點(diǎn)施加更多的控制時(shí),這種方法很有用。139利用邊緣改進(jìn)全局閾值處理算法1. 用10.2節(jié)討論的任何一種方法來計(jì)算一幅邊緣圖像,無論是f(x,y)梯度的幅度還是拉普拉斯的絕對值都可以。2. 指定一個(gè)閾值T。3. 用步驟2中的閾值T對步驟1中的邊緣圖像進(jìn)行閾值處理,產(chǎn)生一幅二值邊緣圖像gT(x,y)。在從f(x,y)中選取對應(yīng)于“強(qiáng)”邊緣像素的下一步中,該圖像用做一幅模板圖像。4. 僅用f(x,y)中對應(yīng)于gT(x,y)中像素值為1的位置的像素計(jì)算直方圖。5. 用步驟4中的直方圖全局地分割f(x,y),例如使用Otsu方法。140如果將T設(shè)置為小

54、于邊緣圖像的最小值的任何值,gT(x,y)將由全1組成,這意味著f(x,y)的所有像素將用于計(jì)算圖像的直方圖。在這種情況下,前述算法變成使用原始圖像的直方圖的全局閾值處理。習(xí)慣上以百分比的形式來指定T值,百分比通常設(shè)置得較高(如90),以便在計(jì)算中用梯度/拉普拉斯圖像中的較少像素。141用以梯度為基礎(chǔ)的邊緣信息改進(jìn)全局閾值處理和用拉普拉斯為基礎(chǔ)的邊緣信息改進(jìn)全局閾值處理下面的例子說明了剛才討論的概念。第一個(gè)例子使用梯度,第二個(gè)例子使用拉普拉斯。在兩個(gè)例子中,無論使用哪一種方法都可得到類似的結(jié)果。重要的問題是生成一幅合適的導(dǎo)數(shù)圖像。142143(a)來自圖10.41(a)的帶噪聲圖像;(b)該圖

55、像的直方圖;(c)在99.7處經(jīng)閾值處理后的梯度幅度圖像;(d)圖(a)和圖(c)相乘形成的圖像;(e)圖(d)所示圖像中非零像素的直方圖;(f)以(e)中的直方圖為基礎(chǔ),用Otsu方法得到一個(gè)閾值(134),然后將該閾值全局地應(yīng)用到(a)中帶噪聲圖像。其結(jié)果近于完美。這幅圖像不能用平滑后緊跟著閾值處理來分割。這個(gè)例子的目是解決利用邊緣信息的問題??紤]一個(gè)更為復(fù)雜的閾值處理問題。圖(a)顯示了一幅酵母細(xì)胞的8比特圖像,其中,我們希望用全局閾值處理得到相對于亮點(diǎn)的區(qū)域。圖(b)顯示了該圖像的直方圖,圖(c)是Otsu方法直接用于所示的直方圖的圖像上得到的結(jié)果。Otsu方法未能實(shí)現(xiàn)檢測亮點(diǎn)這一原始

56、目標(biāo),并且右側(cè)的幾個(gè)分割后的區(qū)域卻沒有分開。Otsu方法計(jì)算出的閾值是42,可分性度量是0.636。144圖(d)顯示了圖像gT(x,y),該圖像是按如下方式得到的:先計(jì)算拉普拉斯圖像的絕對值,然后用范圍0,255內(nèi)的灰度級(jí)115作為T值進(jìn)行閾值處理。這個(gè)T值近似對應(yīng)拉普拉斯圖像絕對值中的99.5,所以在這個(gè)水平上閾值處理應(yīng)該得到一個(gè)稀疏的像素集合,如圖(d)所示。在該圖像中,很多點(diǎn)聚集在亮點(diǎn)的邊緣附近,圖(e)是圖(a)和圖(d)乘積的非零像素的直方圖。145最后,圖(f)顯示了以圖(e)中的直方圖為基礎(chǔ),采用Otsu方法全局地分割原圖像后的結(jié)果。該結(jié)果與圖像中亮點(diǎn)的位置一致。用Otsu方法

57、計(jì)算出的閾值是115,可分性度量是0.762,這兩個(gè)值都要高于使用原始直方圖得到的值。146147(a)酵母細(xì)胞圖像;(b)圖(a)的直方圖;(c)使用圖(b)中的直方圖,用Otsu方法對圖(a)進(jìn)行分割;(d)經(jīng)閾值處理后的絕對拉普拉斯圖像;(e)圖(a)和圖(d)乘積中的非零像素的直方圖;(f)以(e)中的直方圖為基礎(chǔ),使用Otsu的方法對原圖像進(jìn)行閾值處理后的結(jié)果。數(shù)字圖像處理實(shí)驗(yàn)4完成數(shù)字圖像處理P485頁例10.17和10.18的編程實(shí)驗(yàn),編程語言可以選擇Matlab,C,C+,OpenCV,Python等。設(shè)計(jì)方案可參照教科書中的分析,也可以自行設(shè)計(jì)新的方案。148通過在可變的百分

58、比處設(shè)置閾值,還可以改善細(xì)胞區(qū)域的分割。例如,上圖顯示了使用前段中的相同步驟得到的結(jié)果,但閾值設(shè)置在55處,它近似拉普拉斯圖像最大絕對值的5。該值位于圖像中的所有值的53.9。很明顯,這個(gè)結(jié)果好于上圖(c)所示對原始圖像的直方圖用Otsu的方法得到的結(jié)果。14910.3.7 可變閾值處理噪聲和非均勻光照這樣的因素對閾值處理算法的性能起著重要作用。圖像平滑和使用邊緣信息可以得到有益的幫助。然而,常常會(huì)出現(xiàn)這種情況,即用迄今為止所討論的任何方法解決問題時(shí),都會(huì)無效。在這種情況下,更為高級(jí)的且復(fù)雜的閾值處理涉及可變閾值問題。150圖像分塊可變閾值處理最簡單的方法之一是把一幅圖像分成不重疊的矩形。這種

59、方法用于補(bǔ)償光照和/或反射的不均勻性。選擇的矩形要足夠小,以便每個(gè)矩形的光照都近似是均勻的。我們用一個(gè)例子來說明這一方法。151通過圖像分塊的可變閾值處理152(a)帶噪聲陰影的圖像;(b)該圖像的直方圖;(c)用來自10.3.2節(jié)的全局迭代算法對圖(a)的分割;(d)使用Otsu方法得到的結(jié)果;(e)分為6幅子圖像后的圖像;(f)分別對每幅子圖像應(yīng)用Otsu方法的結(jié)果,圖像細(xì)分產(chǎn)生了合理的結(jié)果。153上圖(e)中6幅子圖像的直方圖每幅子圖像都由一個(gè)雙模式直方圖來表征,兩個(gè)模式之間有一個(gè)較深的波谷,這是我們所知的將導(dǎo)致有效全局閾值處理的一個(gè)事實(shí)?;诰植繄D像特性的可變閾值處理更為一般的方法是在

60、一幅圖像中的每一點(diǎn)(x,y)計(jì)算閾值,該閾值是以一個(gè)或多個(gè)在(x,y)鄰域計(jì)算的特性為基礎(chǔ)的。用一幅圖像中每個(gè)點(diǎn)的一個(gè)鄰域內(nèi)的像素的標(biāo)準(zhǔn)差和均值來說明局部閾值處理的基本方法。這兩個(gè)量對于確定局部閾值非常有用,因?yàn)樗鼈兪蔷植繉Ρ榷群推骄叶鹊拿枋鲎印?54令xy和mxy表示一幅圖像中以坐標(biāo)(x,y)為中心的鄰域Sxy所包含的像素集合的標(biāo)準(zhǔn)差和均值。下面是可變局部閾值的通用形式:其中,a和b是非負(fù)常數(shù),mG是全局圖像均值。分割后的圖像計(jì)算如下:155其中,f(x,y)是輸入圖像。該式對圖像中的所有像素位置進(jìn)行求值,并在每個(gè)點(diǎn)(x,y)處使用鄰域Sxy中的像素計(jì)算不同的閾值。使用以(x,y)的鄰域計(jì)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論