形態(tài)學圖像處理_第1頁
形態(tài)學圖像處理_第2頁
形態(tài)學圖像處理_第3頁
形態(tài)學圖像處理_第4頁
形態(tài)學圖像處理_第5頁
已閱讀5頁,還剩99頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第6章形態(tài)學圖像處理(第9章)MorphologicalImageProcessing利用數(shù)學形態(tài)學進行圖像處理

主要內(nèi)容

6.1概述

數(shù)學形態(tài)學

基本符號和術(shù)語

6.2二值形態(tài)學

腐蝕、膨脹、開、閉

6.3

形態(tài)學運算應用

提取邊界、骨架、區(qū)域填充、提取連通分量、

去噪

6.4Matlab形態(tài)學運算

6.1概述6.1.1數(shù)學形態(tài)學數(shù)學形態(tài)學(MathematicalMorphology)誕生于1964年,是由法國巴黎礦業(yè)學院博士生賽拉(J.Serra)和導師馬瑟榮,在從事鐵礦核的定量巖石學分析及預測其開采價值的研究中提出“擊中/擊不中變換”,并在理論層面上第一次引入了形態(tài)學的表達式,建立了顆粒分析方法。他們的工作奠定了這門學科的理論基礎,如擊中/擊不中變換、開閉運算、布爾模型及紋理分析器的原型等。數(shù)學形態(tài)學的基本思想是用具有一定形態(tài)的結(jié)構(gòu)元素去量度和提取圖像中的對應形狀以達到對圖像分析和識別的目的。

數(shù)學形態(tài)學的數(shù)學基礎和所用語言是集合論,因此它具有完備的數(shù)學基礎,這為形態(tài)學用于圖像分析和處理、形態(tài)濾波器的特性分析和系統(tǒng)設計奠定了堅實的基礎。數(shù)學形態(tài)學的應用可以簡化圖像數(shù)據(jù),保持它們基本的形狀特性,并除去不相干的結(jié)構(gòu)。數(shù)學形態(tài)學的算法具有天然的并行實現(xiàn)的結(jié)構(gòu),實現(xiàn)了形態(tài)學分析和處理算法的并行,大大提高了圖像分析和處理的速度。

數(shù)學形態(tài)學是由一組形態(tài)學的代數(shù)運算子組成的,它的基本運算有4個:膨脹(或擴張)、腐蝕(或侵蝕)、開啟和閉合,它們在二值圖像和灰度圖像中各有特點?;谶@些基本運算還可推導和組合成各種數(shù)學形態(tài)學實用算法,用它們可以進行圖像形狀和結(jié)構(gòu)的分析及處理,包括圖像分割、特征抽取、邊界檢測、圖像濾波、圖像增強和恢復等。

數(shù)學形態(tài)學方法利用一個稱作結(jié)構(gòu)元素的“探針”收集圖像的信息,當探針在圖像中不斷移動時,便可考察圖像各個部分之間的相互關(guān)系,從而了解圖像的結(jié)構(gòu)特征。數(shù)學形態(tài)學基于探測的思想,與人的FOA(FocusOfAttention)的視覺特點有類似之處。作為探針的結(jié)構(gòu)元素,可直接攜帶知識(形態(tài)、大小、甚至加入灰度和色度信息)來探測、研究圖像的結(jié)構(gòu)特點。

數(shù)學形態(tài)學的基本思想及方法適用于與圖像處理有關(guān)的各個方面,如基于擊中/擊不中變換的目標識別,基于腐蝕和開運算的骨架抽取及圖像編碼壓縮,基于測地距離的圖像重建,基于形態(tài)學濾波器的顆粒分析等。迄今為止,還沒有一種方法能像數(shù)學形態(tài)學那樣既有堅實的理論基礎,簡潔、樸素、統(tǒng)一的基本思想,又有如此廣泛的實用價值。有人稱數(shù)學形態(tài)學在理論上是嚴謹?shù)?,在基本觀念上卻是簡單和優(yōu)美的。

在計算機文字識別,計算機顯微圖像分析(如定量金相分析,顆粒分析),醫(yī)學圖像處理(例如細胞檢測、心臟的運動過程研究、脊椎骨癌圖像自動數(shù)量描述),圖像編碼壓縮,工業(yè)檢測(如食品檢驗和印刷電路自動檢測),材料科學,機器人視覺,汽車運動情況監(jiān)測等方面都取得了非常成功的應用。另外,數(shù)學形態(tài)學在指紋檢測、經(jīng)濟地理等領域也有良好的應用前景。6.1.2基本符號和術(shù)語

1.元素和集合在數(shù)字圖像處理的數(shù)學形態(tài)學運算中,把一幅圖像稱為一個集合。對于二值圖像而言,習慣上認為取值為1的點對應于景物中心,用陰影表示,而取值為0的點構(gòu)成背景,用白色表示,這類圖像的集合是直接表示的??紤]所有值為1的點的集合為A,則A與圖像是一一對應的。對于一幅圖像A,如果點a在A的區(qū)域以內(nèi),那么就說a是A的元素,記為a∈A,否則,記作a∈A,如圖6-1(a)所示。圖6-1元素與集合間的關(guān)系B集合2、交集、并集、補集、差集

3.擊中(Hit)與擊不中(Miss)

設有兩幅圖像A和B,如果A∩B≠,那么稱B擊中A,記為B↑A,其中是空集合的符號;否則,如果A∩B=,那么稱B擊不中A,如圖6-3所示。圖6-3擊中與擊不中(a)B擊中A;(b)B擊不中A

4.平移與反射

設A是一幅數(shù)字圖像,b是一個點,那么定義A被b平移后的結(jié)果為A+b={a+b|a∈A},即取出A中的每個點a的坐標值,將其與點b的坐標值相加,得到一個新的點的坐標值a+b,所有這些新點所構(gòu)成的圖像就是A被b平移的結(jié)果,記為A+b,如圖9-1所示。反射(映射):?A

被處理的圖像稱為目標圖像,一般用大寫英文字母表示。為了確定目標圖像的結(jié)構(gòu),必須逐個考察圖像各部分之間的關(guān)系,并且進行檢驗,最后得到一個各部分之間關(guān)系的集合。在考察目標圖像各部分之間的關(guān)系時,需要設計一種收集信息的“探針”,稱為“結(jié)構(gòu)元素”。“結(jié)構(gòu)元素”一般用大寫英文字母表示,例如用S表示。在圖像中不斷移動結(jié)構(gòu)元素,就可以考察圖像之間各部分的關(guān)系。一般,結(jié)構(gòu)元素的尺寸要明顯小于目標圖像的尺寸。5.目標和結(jié)構(gòu)元素邏輯運算邏輯運算示例6.2二值形態(tài)學

二值形態(tài)學中的運算對象是集合。設A為圖像集合,S為結(jié)構(gòu)元素,數(shù)學形態(tài)學運算是用S對A進行操作。以下用陰影代表值為1的區(qū)域,白色代表值為0的區(qū)域,運算是對值為1的區(qū)域進行的。二值形態(tài)學中兩個最基本的運算——腐蝕與膨脹,如圖6-5所示。圖6-5腐蝕與膨脹示意圖

6.2.1腐蝕(Erosion)腐蝕是最基本的一種數(shù)學形態(tài)學運算。對一個給定的目標圖像X和一個結(jié)構(gòu)元素S,想象一下將S在圖像上移動,記為(S)x。在每一個當前位置x,S+x只有三種可能的狀態(tài)(見圖6-6):(1)S+xX;(2)S+xXC;(3)S+x∩X與S+x∩XC均不為空圖6-6S+x的三種可能的狀態(tài)

第一種情形說明S+x與X相關(guān)最大,第二種情形說明S+x與X不相關(guān),而第三種情形說明S+x與X只是部分相關(guān)。因而滿足式(6-1)的點x的全體構(gòu)成結(jié)構(gòu)元素與圖像最大相關(guān)點集,這個點集稱為S對X的腐蝕(簡稱腐蝕,有時也稱X用S腐蝕),記為XS。

腐蝕也可以用集合的方式定義,即式(6-2)表明,X用S腐蝕的結(jié)果是所有使S平移x后仍在X中的x的集合。換句話說,用S來腐蝕X得到的集合是S完全包括在X中時S的原點位置的集合。上式也可以幫助我們借助相關(guān)概念來理解腐蝕操作。(6-2)腐蝕在數(shù)學形態(tài)學運算中的作用是消除物體邊界點。如果結(jié)構(gòu)元素取3×3的像素塊,腐蝕將使物體的邊界沿周邊減少一個像素。腐蝕可以把小于結(jié)構(gòu)元素的物體(毛刺、小凸起)去除,這樣選取不同大小的結(jié)構(gòu)元素,就可以在原圖像中去掉不同大小的物體。如果兩個物體之間有細小的連通,那么當結(jié)構(gòu)元素足夠大時,通過腐蝕運算可以將兩個物體分開。腐蝕

BA模板的原點在結(jié)構(gòu)元素內(nèi)部,腐蝕具有收縮圖像的作用。AB

例6-1腐蝕運算圖解。圖6-7給出腐蝕運算的一個簡單示例。其中,圖6-7(a)中的陰影部分為集合X,圖6-7(b)中的陰影部分為結(jié)構(gòu)元素S,而圖(c)中黑色部分給出了XS的結(jié)果。由圖可見,腐蝕將圖像(區(qū)域)收縮小了。圖6-7腐蝕運算示例

圖6-7腐蝕運算過程膨脹6.2.2膨脹(Dilation)腐蝕可以看作是將圖像X中每一與結(jié)構(gòu)元素S全等的子集S+x收縮為點x。反之,也可以將X中的每一個點x擴大為S+x,這就是膨脹運算,記為X

S。若用集合語言,它的定義為

膨脹示例腐蝕示例膨脹過程S?腐蝕與膨脹示例Matlab實現(xiàn)腐蝕與膨脹運算

BW=imread('text.tif');SE1=ones(2,2);SE2=ones(5,5);BW1=imdilate(BW,SE1);BW2=imdilate(BW,SE2);figure,subplot(221),subimage(BW),title('Original');subplot(222);subimage(BW1);title('Dialate2-2');subplot(223);subimage(BW2);title('Dialate5-5');

se1=ones(2,2);se2=ones(5,5);I1=imerode(BW1,se1);I2=imerode(BW2,se2);figure,subplot(221);subimage(I),title('Original')subplot(222),subimage(I1),title('Eroded2-2')subplot(223),subimage(I2),title('Eroded5-5')6.2.3開運算和閉運算開操作一般使對象的輪廓變得光滑,斷開狹窄的間斷和消除細小的突出物。閉操作同樣使得輪廓光滑,它通常消除狹窄的間斷和長細的鴻溝,消除小的空洞,并填充輪廓線中的斷裂。1.基本概念

如果結(jié)構(gòu)元素為一個圓盤,那么,膨脹可填充圖像中的小孔(比結(jié)構(gòu)元素小的孔洞)及圖像邊緣處的小凹陷部分,而腐蝕可以消除圖像邊緣小的成分,并將圖像縮小,從而使其補集擴大。但是,膨脹和腐蝕并不互為逆運算,因此它們可以級連結(jié)合使用。在腐蝕和膨脹兩個基本運算的基礎上,可以構(gòu)造出形態(tài)學運算族,它由膨脹和腐蝕兩個運算的復合與集合操作(并、交、補等)組合成的所有運算構(gòu)成。例如,可先對圖像進行腐蝕然后膨脹其結(jié)果,或先對圖像進行膨脹然后腐蝕其結(jié)果(這里使用同一個結(jié)構(gòu)元素)。前一種運算稱為開運算(或開啟),后一種運算稱為閉運算(閉合)。開運算和閉運算是形態(tài)學運算族中兩個最為重要的組合運算。(6-7)(6-8)(6-9)由式(6-7)和式(6-8)可知,X○S可視為對腐蝕圖像XS用膨脹來進行恢復,而X●S可看作是對膨脹圖像XS用腐蝕來進行恢復不過這一恢復不是信息無損的,即它們通常不等于原始圖像X。由開運算的定義式,可以推得對圖像X及結(jié)構(gòu)元素S,用符號X○S表示S對圖像X作開運算,用符號X●S表示S對圖像X作閉運算,它們的定義為開操作示例方向向外的角變得圓滑了,而方向內(nèi)角沒有變化。圖像縮小閉操作示例方向向內(nèi)的角變得圓滑了,而方向向外的角沒有變化圖像放大開閉運算示例開閉運算示例圖6-12開、閉運算示例(a)原圖像;(b)結(jié)構(gòu)元素S;(c)結(jié)構(gòu)元素S腐蝕圖像X;(d)結(jié)構(gòu)元素S腐蝕X的結(jié)果;(e)對腐蝕的結(jié)構(gòu)再膨脹;(f)再膨脹(開運算)的結(jié)果X○S;(g)結(jié)構(gòu)元素S膨脹X;(h)結(jié)構(gòu)元素S膨脹X的結(jié)果XS;(i)對膨脹的結(jié)果再腐蝕;(j)再腐蝕的結(jié)果(閉運算)X●S開閉運算示例

2.開閉運算的代數(shù)性質(zhì)由于開、閉運算是在腐蝕和膨脹運算的基礎上定義的,根據(jù)腐蝕和膨脹運算的代數(shù)性質(zhì),我們不難得到下面的性質(zhì)。 1)對偶性(XC○S)C=X●S,(XC●S)C=X○S 2)擴展性(收縮性)X○SXX●S即開運算恒使原圖像縮小,而閉運算恒使原圖像擴大

3)單調(diào)性如果XY,則X●SY●S,X○SY○S

如果YZ且Z●Y=Z,那么X●YX●Z

根椐這一性質(zhì)可以知道,結(jié)構(gòu)元素的擴大只有在保證擴大后的結(jié)構(gòu)元素對原結(jié)構(gòu)元素開運算不變的條件下方能保持單調(diào)性。

4)平移不變性(X+h)●S=(X●S)+h,(X+h)○S=(X○S)+hX●(S+h)=X●S,X○(S+h)=X○S5)等冪性(X●S)●S=X●S,(X○S)○S=X○S

開、閉運算的等冪性意味著一次濾波就能把所有特定結(jié)構(gòu)元素的噪聲濾除干凈,作重復的運算不會再有效果。這是一個與經(jīng)典方法(例如中值濾波、線性卷積)不同的性質(zhì)。

Matlab實現(xiàn)開與閉運算I=imread('nodules1.tif');bw=~im2bw(I,graythresh(I));se=strel('disk',5);bw2=imopen(bw,se);figure;subplot(221);subimage(I);title('Original');subplot(222);subimage(bw),title('Thresholdedimage')subplot(223);subimage(bw2),title('Afteropening')

I=imread('pearlite.tif');bw=~im2bw(I,graythresh(I));figure,subplot(221);subimage(I),title('Original')subplot(222);subimage(bw),title('Step1:threshold')se=strel('disk',6);bw2=imclose(bw,se);bw3=imopen(bw2,se);subplot(223);subimage(bw2),title('Step2:closing')subplot(224);subimage(bw3),title('Step3:opening')形態(tài)學算法(P412)邊界提?。杭螦的邊界記為它通過先由B對A進行腐蝕,然后用A減去腐蝕得到:

邊界提取示例區(qū)域填充將所有非邊界點(背景)標記為0,則以將1賦給p開始,使用下列算法填充整個區(qū)域。如果,算法迭代結(jié)束。P點稱為種子點。區(qū)域填充區(qū)域填充示例

像素間的聯(lián)系

一、

8-鄰域

p的周圍8個近鄰像素全體稱為p的8-鄰域,記為N8(p);二、連通性判斷條件:像素是否接觸、灰度值是否滿足某個特定的相似準則連通圖像子集S中的像素p和q,如果存在一條從p到q的通路,稱p在S中與q相連通。連通分量的提取令Y表示一個包含于集合A中的連通分量,并假設Y中的1個點是已知的。下列迭代生成Y的所有元素:

X0=p,B是一個適當?shù)慕Y(jié)構(gòu)元素。2.迭代直到結(jié)束。并令Y=Xk連通分量示例連通分量包裝檢測示例骨架Chapter6MorphologicalImageProcessingChapter6MorphologicalImageProcessingChapter6MorphologicalImageProcessingChapter6MorphologicalImageProcessing灰度圖像的膨脹與腐蝕灰度圖像開閉操作去掉外角去掉內(nèi)角灰度圖像開閉操作示例形態(tài)學平滑骨架抽取把一個平面區(qū)域簡化成圖(Graph)是一種重要的結(jié)構(gòu)形狀表示法。利用細化技術(shù)得到區(qū)域的細化結(jié)構(gòu)是常用的方法。因此,尋找二值圖像的細化結(jié)構(gòu)是圖像處理的一個基本問題。在圖像識別或數(shù)據(jù)壓縮時,經(jīng)常要用到這樣的細化結(jié)構(gòu),例如,在識別字符之前,往往要先對字符作細化處理,求出字符的細化結(jié)構(gòu)。骨架便是這樣的一種細化結(jié)構(gòu),它是目標的重要拓撲描述,具有非常廣泛的應用。圖6-18骨架抽取示例(a)一幅二值圖像;(b)用3×3的結(jié)構(gòu)元素S得到的骨架;(c)用5×5的結(jié)構(gòu)元素得到的骨架;(d)用7×7的結(jié)構(gòu)元素得到的骨架

細化

利用前面所介紹的形態(tài)學知識,下面給出一種實用的對二值區(qū)域進行形態(tài)學細化的一種算法。如前所述,一個圖像的“骨架”,是指圖像中央的骨骼部分,是描述圖像幾何及拓撲性質(zhì)的重要特征之一。求一幅圖像骨架的過程就是對圖像進行“細化”的過程。在文字識別、地質(zhì)構(gòu)造識別、工業(yè)零件形狀識別或圖像理解中,先對被處理的圖像進行細化有助于突出形狀特點和減少冗余信息量。在細化一幅圖像X時應滿足兩個條件:

在細化的過程中,X應該有規(guī)律地縮??;

在X逐步縮小的過程中,應當使X的連通性質(zhì)保持不變。BW1=imread('circles.tif');imshow(BW1)BW2=bwmorph(BW1,'remove');BW3=bwmorph(BW1,'skel',Inf);figure,imshow(BW2)figure,imshow(BW3)Matlab提取骨架

Setapixelto0ifits4-connectedneighborsareall1's,thusleavingonlyboundarypixelsInf,removepixelsontheboundariesofobjectswithoutallowingobjectstobreakapartloadimdemossteel;figure,subplot(331),subimage(steel),title('Original');bw_70=steel>70;subplot(332),subimage(bw_70),title('Thres=70');[r,c]=find(bw_70==0);bw_210=steel>210;subplot(333),subimage(bw_210);title('Thres=210');bw_clean=bwselect(~bw_210,c,r,8);subplot(334),subimage(bw_clean);title('Clean');bw_skel=bwmorph(bw_clean,'skel',6);subplot(335),subimage(bw_skel);title('Skel');bw_pruned=bwmorph(bw_skel,'spur',8);subplot(336),subimage(bw_pruned);title('Spur');grain_boundaries=~bw_pruned;subplot(337),subimage(grain_boundaries);title('grain_boundaries');[labeled,N]=bwlabel(grain_boundaries,4);colored=label2rgb(labeled);subplot(338),subimage(colored);title('Colored');6.4Matlab形態(tài)學運算imerode:ErodeimageSyntaxIM2=imerode(IM,SE)IM2=imerode(IM,NHOOD)IM2=imerode(...,PACKOPT,M)IM2=imerode(...,SHAPE)DescriptionIM2=imerode(IM,SE)erodesthegrayscale,binary,orpackedbinaryimageIM,returningtheerodedimageIM2.TheargumentSEisastructuringelementobjectorarrayofstructuringelementobjectsreturnedbythestrelfunction.originalBW=imread('circles.png');se5=strel('disk',5);se9=strel('disk',9);se11=strel('disk',11);erodedBW5=imerode(originalBW,se5);erodedBW9=imerode(originalBW,se9);erodedBW11=imerode(originalBW,se11);subplot(221),imshow(originalBW),title('Originalimage');subplot(222),imshow(erodedBW5),title('dilatedimage5');subplot(223),imshow(erodedBW9),title('dilatedimage9');subplot(224),imshow(erodedBW11),title('dilatedimage11');Howabouttheresultifthestructureoperatorsizeincreasesto21,25?DiscussionTheeffectoferosion:RemovesmallobjectincludingnoisesExtractthecenterofroundobjectCalculatenumberofobjectbw=imread('text.png');se=strel('line',3,5);bw2=imdilate(bw,se);subplot(121),imshow(bw),title('Original')Subplot(122),imshow(bw2),title('Dilatedimageusing3x5')Dilateagrayscaleimagewitharollingballstructuringelement.I=imread('cameraman.tif');se=strel('ball',5,5);I2=imdilate(I,se);imshow(I),title('Original')figure,imshow(I2),title('Dilated')ExamplesRemovethesmallerobjectsinanimage.ReadtheimageintotheMATLABworkspaceanddisplayit.I=imread('snowflakes.png');imshow(I)Createadisk-shapedstructuringelementwitharadiusof5pixels.se=strel('disk',5);Removesnowflakeshavingaradiuslessthan5pixelsbyopeningitwiththedisk-shapedstructuringelementcreatedinstep2.I_opened=imopen(I,se);figure,imshow(I_opened,[])MorphologicallycloseimageSyntaxIM2=imclose(IM,SE)IM2=imclose(IM,NHOOD)DescriptionIM2=imclose(IM,SE)performsmorphologicalclosingonthegrayscaleorbinaryimageIM,returningtheclosedimage,IM2.Thestructuringelement,SE,mustbeasinglestructuringelementobject,asopposedtoanarrayofobjects.Themorphologicalcloseoperationisadilationfollowedbyanerosion,usingthesamestructuringelementforbothoperations.ConclusionofMorphology

(1)ErosionThedilationoperationus

溫馨提示

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

評論

0/150

提交評論