《數(shù)字圖像處理》課件-第6章_第1頁(yè)
《數(shù)字圖像處理》課件-第6章_第2頁(yè)
《數(shù)字圖像處理》課件-第6章_第3頁(yè)
《數(shù)字圖像處理》課件-第6章_第4頁(yè)
《數(shù)字圖像處理》課件-第6章_第5頁(yè)
已閱讀5頁(yè),還剩69頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第6章數(shù)學(xué)形態(tài)學(xué)處理6.1引言6.2二值形態(tài)學(xué)6.3灰值形態(tài)學(xué)6.4形態(tài)學(xué)的應(yīng)用

6.1引言

6.1.1數(shù)學(xué)形態(tài)學(xué)數(shù)學(xué)形態(tài)學(xué)由一組形態(tài)學(xué)的代數(shù)運(yùn)算子組成,其基本運(yùn)算有:膨脹、腐蝕、開運(yùn)算和閉運(yùn)算?;谶@些基本運(yùn)算還可推導(dǎo)和組合成各種數(shù)學(xué)形態(tài)學(xué)實(shí)用算法,用它們可進(jìn)行各種復(fù)雜的圖像分析及處理,包括圖像分割、特征抽取、邊界檢測(cè)、圖像濾波、圖像增強(qiáng)和恢復(fù)等。

6.1.2基本符號(hào)和術(shù)語(yǔ)

數(shù)學(xué)形態(tài)學(xué)具有完備的數(shù)學(xué)基礎(chǔ)——集合論,它為形態(tài)學(xué)用于圖像分析和處理、形態(tài)濾波器的特性分析和系統(tǒng)設(shè)計(jì)奠定了基礎(chǔ)。故在學(xué)習(xí)數(shù)學(xué)形態(tài)學(xué)之前,首先介紹集合論和

數(shù)學(xué)形態(tài)學(xué)中的符號(hào)和術(shù)語(yǔ)。

1.元素和集合

在數(shù)字圖像處理的數(shù)學(xué)形態(tài)學(xué)運(yùn)算中,把一幅圖像稱為一個(gè)集合。對(duì)于二值圖像而言,習(xí)慣上認(rèn)為取值為1的點(diǎn)對(duì)應(yīng)于景物,用陰影表示,而取值為0的點(diǎn)構(gòu)成背景,用白色表示。這類圖像的集合是直接表示的??紤]所有值為1的點(diǎn)的集合為V,則集合V與景物圖像A是一一對(duì)應(yīng)的。對(duì)于圖像A,如果點(diǎn)a在A的區(qū)域以內(nèi),則a是A的元素,記作a∈A,否則記為a?A。

對(duì)于兩幅圖像A和B,如果對(duì)B中的每一個(gè)點(diǎn)b,b∈B且有b∈A,則稱B包含于A,記作B?A。若同時(shí)A中至少存在一個(gè)點(diǎn)a,a∈A且a?B,則稱B真包含于A,記作B?A。由定義可知,如果B?A,那么必有B?A。A?A恒成立。

2.交集、并集、補(bǔ)集和差集

兩個(gè)圖像集合A和B的公共點(diǎn)組成的集合稱為兩個(gè)集合的交集,記為A∩B,即A∩B={a|a∈A且a∈B}。兩個(gè)集合A和B的所有元素組成的集合稱為兩個(gè)集合的并集,記為A∪B,即A∪B={a|a∈A或a∈B}。對(duì)圖像A,在圖像A區(qū)域以外的所有點(diǎn)構(gòu)成的集合稱為A的補(bǔ)集,記為AC,即AC={a|a?A}。兩個(gè)集合A和B之差為在集合A且不在集合B中的點(diǎn)集,即A-B={a|a∈A且a?B}。

交集、并集、補(bǔ)集和差集運(yùn)算是集合的最基本運(yùn)算。如圖6-1所示。

圖6-1集合的交、并、補(bǔ)和差

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

設(shè)兩幅圖像A和B,如果A∩B≠?(空集合),則稱B擊中A,記為B↑A。如果A∩B=?,則稱B擊不中A,如圖6-2所示。圖6-2擊中與擊不中

4.平移、反射

設(shè)A是一幅數(shù)字圖像,b是一個(gè)點(diǎn),則定義A被b平移后的結(jié)果為A+b={a+b|a∈A},即取出A中的每個(gè)點(diǎn)a的坐標(biāo)值,將其與b的坐標(biāo)值相加,得到一個(gè)新的點(diǎn)的坐標(biāo)值a+b。所有這些新點(diǎn)所構(gòu)成的圖像就是A被b平移的結(jié)果,記為A+b,如圖6-3(c)所示。

A關(guān)于圖像原點(diǎn)的反射記為AV={a|-a∈A},即將A中的每個(gè)點(diǎn)的坐標(biāo)取相反數(shù)后得到的新圖像,如圖6-3(d)所示。

圖6-3平移與反射

5.目標(biāo)圖像和結(jié)構(gòu)元素

被處理的圖像稱為目標(biāo)圖像。為確定目標(biāo)圖像的結(jié)構(gòu),需逐個(gè)考察圖像各部分之間的關(guān)系,并且進(jìn)行檢驗(yàn),最后得到一個(gè)各部分之間關(guān)系的集合。

在考察目標(biāo)圖像各部分之間的關(guān)系時(shí),需要設(shè)計(jì)一種收集信息的“探針”,稱為“結(jié)構(gòu)元素”?!敖Y(jié)構(gòu)元素”一般用大寫英文字母S表示。在圖像中不斷移動(dòng)結(jié)構(gòu)元素,就可以考察圖像中各部間的關(guān)系。

結(jié)構(gòu)元素形狀包含矩形、十字形、橢圓形和菱形等(見圖6-4),如果結(jié)構(gòu)元素長(zhǎng)寬相等,矩形和橢圓形將退化為正方形和圓形。一般來(lái)說(shuō),結(jié)構(gòu)元素尺寸要明顯小于目標(biāo)圖像的尺寸,選擇不同形狀和尺寸的結(jié)構(gòu)元素可提取目標(biāo)圖像中的不同特征,具體應(yīng)用中需根據(jù)實(shí)際處理效果決定結(jié)構(gòu)元素形狀及尺寸的大小。

圖6-45×5結(jié)構(gòu)元素形狀

6.2二值形態(tài)學(xué)

6.2.1腐蝕腐蝕是一種最基本的數(shù)學(xué)形態(tài)學(xué)運(yùn)算。對(duì)給定的目標(biāo)圖像X和結(jié)構(gòu)元素S,將S在圖像上移動(dòng),則在每一個(gè)當(dāng)前位置x,S+x只有3種可能的狀態(tài),如圖6-5所示,具體表示如下:(1)S+x?X;(2)S+x?XC;(3)S+x∩X與S+x∩XC均不為空。

腐蝕也可以用集合的方式定義

式(6-1)表明,X用S腐蝕的結(jié)果是所有使S平移x后仍在X中的x的集合。換句話說(shuō),用S來(lái)腐蝕X得到的集合是S完全包含在X中時(shí)S的原點(diǎn)位置的集合。

圖6-5S+x的3種可能狀態(tài)

圖6-6-腐蝕運(yùn)算示例

圖6-7圖像腐蝕運(yùn)算

圖6-8按式(6-5)膨脹的結(jié)果

該例表明用S膨脹X的過(guò)程是:先對(duì)S做關(guān)于原點(diǎn)的映射,再將其反射平移x,這里X與S反射的交集不為空集。換句話說(shuō),用S來(lái)膨脹X得到的集合是SV的平移與X至少有1個(gè)公共的非零元素相交時(shí),S的原點(diǎn)位置的集合。根據(jù)這個(gè)解釋,式(6-5)也可寫成

腐蝕和膨脹運(yùn)算與集合運(yùn)算的關(guān)系如下:

與腐蝕操作類似,在OpenCV中采用getStructuringElement()和dilate()函數(shù)實(shí)現(xiàn)結(jié)

構(gòu)元素的設(shè)定和圖像膨脹操作。圖6-9(b)是對(duì)二值圖像6-9(a)執(zhí)行膨脹運(yùn)算后的結(jié)果,經(jīng)過(guò)膨脹,魚鱗上的黑色孔洞已大部分被填充,如果選擇較大尺寸的結(jié)構(gòu)元素,可實(shí)現(xiàn)魚身體主要區(qū)域的提取。通過(guò)滾動(dòng)條設(shè)置結(jié)構(gòu)元素并實(shí)現(xiàn)二值圖像膨脹操作的完整代碼請(qǐng)讀者登錄出版社網(wǎng)站下載,文件路徑:code\src\chapter06\code06-02-dilate.cpp。

圖6-9用5×5矩形結(jié)構(gòu)元素進(jìn)行膨脹

6.2.3開、閉運(yùn)算

1.基本概念

如果結(jié)構(gòu)元素為圓形,則膨脹操作可填充圖像中比結(jié)構(gòu)元素小的孔洞以及圖像邊緣處小的凹陷部分。而腐蝕可以消除圖像中的毛刺及細(xì)小連接成分,并將圖像縮小,從而使其補(bǔ)集擴(kuò)大。但是,膨脹和腐蝕并非互為逆運(yùn)算,所以它們可以結(jié)合使用。在腐蝕和膨脹兩個(gè)基本運(yùn)算的基礎(chǔ)上,可以構(gòu)造出形態(tài)學(xué)運(yùn)算簇,它由膨脹和腐蝕兩個(gè)運(yùn)算的復(fù)合與集合操作(并、交、補(bǔ)等)組合成的所有運(yùn)算構(gòu)成。

圖6-10開運(yùn)算去掉了凸角

由腐蝕和膨脹的對(duì)偶性,可知

開、閉變換也是一對(duì)對(duì)偶變換,因此,閉運(yùn)算的幾何意義可以由補(bǔ)集開運(yùn)算的幾何意義導(dǎo)出。圖6-11給出了一個(gè)閉運(yùn)算的例子,其中圖6-11(a)是原始圖像,圖6-11(b)是用25×25圓形結(jié)構(gòu)元素S對(duì)X進(jìn)行閉運(yùn)算的結(jié)果,可見閉運(yùn)算填充了圖像的凹角,圖6-11(c)是閉運(yùn)算圖像與原圖像的差值圖像,X·S-X給出的是圖像的凹入特征。

圖6-11閉運(yùn)算填充了凹角

2.開閉運(yùn)算的代數(shù)性質(zhì)

由于開、閉運(yùn)算是在腐蝕和膨脹運(yùn)算的基礎(chǔ)上定義的,根據(jù)腐蝕和膨脹運(yùn)算的代數(shù)性質(zhì),不難得到開、閉運(yùn)算性質(zhì)。

5)等冪性

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

6)開運(yùn)算和閉運(yùn)算與集合的關(guān)系

在操作對(duì)象為多個(gè)圖像的情況下,可借助集合的性質(zhì)來(lái)進(jìn)行開運(yùn)算和閉運(yùn)算,開運(yùn)算和閉運(yùn)算與集合的關(guān)系可用下式給出

上述開運(yùn)算和閉運(yùn)算與集合的關(guān)系可用語(yǔ)言描述如下:

(1)開運(yùn)算與并集:并集的開運(yùn)算包含了開運(yùn)算的并集;

(2)開運(yùn)算與交集:交集的開運(yùn)算包含在開運(yùn)算的交集中;

(3)閉運(yùn)算與并集:并集的閉運(yùn)算包含了閉運(yùn)算的并集;

(4)閉運(yùn)算與交集:交集的閉運(yùn)算包含在閉運(yùn)算的交集中。

3.開運(yùn)算的實(shí)現(xiàn)

根據(jù)上述理論,在OpenCV中先調(diào)用一次erode()函數(shù),再調(diào)用一次dilate()函數(shù)即可實(shí)現(xiàn)開運(yùn)算。實(shí)現(xiàn)開運(yùn)算更簡(jiǎn)潔的方法是調(diào)用morphologyEx()函數(shù)。不同于前面介紹的腐蝕與膨脹函數(shù),morphologyEx()可通過(guò)設(shè)置第3個(gè)參數(shù)實(shí)現(xiàn)5種形態(tài)學(xué)操作,包括開(MORPH_OPEN)、閉(MORPH_CLOSE)、形態(tài)梯度(MORPH_GRADIENT)、頂帽(MORPH_TOPHAT)和黑帽(MORPH_BLACKHAT)運(yùn)算,具體操作步驟如下。

(1)讀入圖像,若為真彩色圖像,則轉(zhuǎn)化為二值圖像;

(2)設(shè)置結(jié)構(gòu)元素。

(3)指定形態(tài)學(xué)操作為開運(yùn)算,設(shè)定MORPH_OPEN參數(shù),調(diào)用morphologyEx()函數(shù)實(shí)現(xiàn)開運(yùn)算操作并保存圖像。

對(duì)圖6-12(a)所示圖像進(jìn)行開運(yùn)算的結(jié)果如圖6-12(b)所示,可以發(fā)現(xiàn),開運(yùn)算去掉了凸角且將原圖像中的連通區(qū)域變成了非連通區(qū)域。

圖6-12開、閉運(yùn)算效果示意圖

4.閉運(yùn)算的實(shí)現(xiàn)

在OpenCV中閉運(yùn)算的實(shí)現(xiàn)與開運(yùn)算類似,只需將morphologyEx()函數(shù)中的第3個(gè)參數(shù)設(shè)為MORPH_CLOSE即可。采用17×17圓形結(jié)構(gòu)元素對(duì)圖6-12(a)進(jìn)行閉運(yùn)算的效果如圖6-12(c)所示,與開運(yùn)算正好相反,閉運(yùn)算去掉了凹角且將原圖像中的非連通區(qū)域變成了連通區(qū)域。

6.2.4擊中/擊不中變換

為了研究圖像的結(jié)構(gòu),可以逐個(gè)地利用各種成分(例如各種結(jié)構(gòu)元素)對(duì)其進(jìn)行檢驗(yàn),判定哪些成分包括在圖像之內(nèi),哪些在圖像之外,從而最終確定圖像的結(jié)構(gòu)。擊中/擊不中變換就是基于該思路提出的。設(shè)X是被研究的圖像,S是結(jié)構(gòu)元素,而且S由兩個(gè)不相交的部分S1和S2組成,即S=S1∪S2,且S1∩S2=?,則擊中/擊不中定義為

由式(6-12)可以看出,X被S擊中的結(jié)果仍是一個(gè)圖像,其中每點(diǎn)x必須同時(shí)滿足兩個(gè)條件:S1被平移后包含在X內(nèi);S2被平移后不在X內(nèi)。圖6-13給出了一個(gè)X與S進(jìn)行擊中/擊不中運(yùn)算的例子。圖6-13擊中/擊不中示意圖

圖6-14按照式(6-13)X與S進(jìn)行擊中/不擊中運(yùn)算示意圖

由此可見,擊中/擊不中運(yùn)算相當(dāng)于一種條件比較嚴(yán)格的模板匹配,它不僅指出被匹配點(diǎn)所應(yīng)滿足的性質(zhì),即模板的形狀,同時(shí)也指出這些點(diǎn)所不應(yīng)滿足的性質(zhì),即對(duì)周圍環(huán)境背景的要求。因此擊中/擊不中變換可以用于形狀識(shí)別和端點(diǎn)定位。圖6-15描述了一個(gè)骨架端點(diǎn)定位的示例,由于骨架端點(diǎn)必定滿足圖6-15(a)~圖6-15(d)所示的4種結(jié)構(gòu)元素,結(jié)構(gòu)元素S=S1∪S2,S1對(duì)應(yīng)黑色點(diǎn)集,S2對(duì)應(yīng)白色點(diǎn)集,對(duì)圖6-15(a)所示骨架圖像,依次采用這4種結(jié)構(gòu)元素進(jìn)行擊中/擊不中運(yùn)算,最后將4次運(yùn)算的端點(diǎn)圖像合并得到的結(jié)果如圖6-15(f)所示。

圖6-15用擊中/擊不中變換定位端點(diǎn)

6.3灰值形態(tài)學(xué)

二值形態(tài)學(xué)的4種基本運(yùn)算,即腐蝕、膨脹、開運(yùn)算和閉運(yùn)算,可方便地推廣到灰值圖像空間。與二值形態(tài)學(xué)中不同的是,這里操作對(duì)象不再是集合而是圖像函數(shù)。設(shè)f(x,y)是輸入圖像,b(x,y)是結(jié)構(gòu)元素子圖像。

6.3.1灰值腐蝕

在OpenCV中,erode()和dilate()函數(shù)也可處理灰度圖像和真彩色圖像,圖6-16(b)是采用7×7圓形結(jié)構(gòu)元素對(duì)圖6-16(a)進(jìn)行灰度腐蝕后的結(jié)果,可見灰度腐蝕后的蘋果圖像上的黑色斑點(diǎn)被擴(kuò)大了,同時(shí)蘋果上的光斑區(qū)域(亮細(xì)節(jié))變小了。

圖6-16-灰值腐蝕與膨脹前后的圖像

6.3.2灰值膨脹

膨脹和腐蝕滿足下列對(duì)偶關(guān)系

這里函數(shù)的補(bǔ)定義為fC(x,y)=-f(x,y),而函數(shù)的反射定義為:bV(x,y)=b(-x,-y)。

開、閉運(yùn)算相對(duì)于函數(shù)的補(bǔ)和反射也是對(duì)偶的,對(duì)偶關(guān)系為

灰值開、閉運(yùn)算簡(jiǎn)單的幾何解釋如圖6-17所示。

圖6-17灰度圖像剖面開、閉運(yùn)算示意圖

灰度圖像的開、閉運(yùn)算也可采用OpenCV中的morphologyEx()函數(shù)實(shí)現(xiàn)。圖6-18(b)和圖6-18(c)是對(duì)圖6-18(a)進(jìn)行灰值開、閉運(yùn)算的結(jié)果。經(jīng)過(guò)開、閉運(yùn)算后圖像均變

得光滑了,圖6-18(b)蘋果圖像上的亮點(diǎn)和較小的亮斑基本上看不到了,可見灰值開運(yùn)算消除了尺寸較小的亮細(xì)節(jié)。另一方面,圖6-18(c)中蘋果表面的小黑點(diǎn)消除了且底部凹陷部分的黑色區(qū)域模糊了,這表明灰值閉運(yùn)算能夠消除尺寸較小的暗細(xì)節(jié)。

圖6-18灰值開閉運(yùn)算實(shí)例

6.4形態(tài)學(xué)的應(yīng)用

圖6-19給出了消除噪聲的一個(gè)示例。圖6-19(a)是一幅細(xì)胞圖像,在細(xì)胞內(nèi)外均有一些椒鹽噪聲。首先采用3×3圓形結(jié)構(gòu)元素對(duì)圖像進(jìn)行腐蝕得到圖6-19(b),然后對(duì)腐蝕結(jié)果進(jìn)行膨脹得到圖6-19(c),這兩組操作的結(jié)合就是開運(yùn)算,它消除了細(xì)胞周圍的白色噪聲點(diǎn);再對(duì)圖6-19(c)進(jìn)行膨脹得到圖6-19(d),最后對(duì)膨脹結(jié)果進(jìn)行腐蝕得到圖6-19(e),這兩組操作的結(jié)合構(gòu)成了閉運(yùn)算,從實(shí)驗(yàn)結(jié)果來(lái)看,它消除了細(xì)胞內(nèi)部的黑色噪聲點(diǎn)。上述過(guò)程可表示為一個(gè)先開后閉運(yùn)算:

圖6-19形態(tài)學(xué)去噪示例

6.4.2骨架提取

利用骨架提取技術(shù)得到區(qū)域的骨架結(jié)構(gòu)是將平面區(qū)域簡(jiǎn)化成圖常用的方法。在文字識(shí)別、地質(zhì)構(gòu)造識(shí)別和工業(yè)零件形狀識(shí)別等領(lǐng)域,提取圖像骨架有助于突出形狀特點(diǎn)和減少

冗余信息量。骨架提取(Skeletonization)可通過(guò)距離變換(DistanceTransform)、Voronoi圖或基于形態(tài)學(xué)運(yùn)算的細(xì)化算法(Thinning)實(shí)現(xiàn),下面介紹兩種基于形態(tài)學(xué)思想的骨架提取算法。

1.基于腐蝕和開運(yùn)算的細(xì)化

圖6-20給出了采用上述思想提取圖像骨架的實(shí)例。其中圖6-20(a)為一幅樹的二值圖像,圖6-20(b)是用3×3十字形結(jié)構(gòu)元素得到的骨架,圖6-20(c)為采用5×5十字形結(jié)構(gòu)元素得到的骨架。比較不同大小結(jié)構(gòu)元素處理結(jié)果可見,采用較大尺寸結(jié)構(gòu)元素得到的骨架要比較小尺寸結(jié)構(gòu)元素得到的骨架粗,此外,兩組細(xì)化后的骨架均無(wú)法保持原始圖像的連通性。

圖6-20骨架抽取示例

2.快速形態(tài)學(xué)細(xì)化算法

為避免結(jié)構(gòu)元素對(duì)細(xì)化圖像的影響并保持被細(xì)化圖像的連通性,下面給出另一種實(shí)用的快速形態(tài)學(xué)細(xì)化算法。

設(shè)已知目標(biāo)點(diǎn)標(biāo)記為1,背景點(diǎn)標(biāo)記為0。邊界點(diǎn)是指本身標(biāo)記為1而其8連通鄰域中至少有一個(gè)標(biāo)記為0的點(diǎn)。如圖6-21(a)所示,考慮以邊界點(diǎn)為中心的8鄰域,設(shè)p1為中心點(diǎn),對(duì)其鄰域的8個(gè)點(diǎn)逆時(shí)針繞中心點(diǎn)分別標(biāo)記為p2,p3,…,p9,其中p2位于p1的上方。算法對(duì)一幅圖像所有像素點(diǎn)的3×3鄰域連續(xù)進(jìn)行下面兩步迭代操作:

圖6-21細(xì)化算法示意圖

6.4.3角點(diǎn)檢測(cè)

角點(diǎn)一般定義為圖像邊緣曲線上曲率取極大值的點(diǎn)。角點(diǎn)是圖像中重要的特征,它們?cè)诒A魣D像目標(biāo)重要特

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論