第7章 圖像分割及測量_第1頁
第7章 圖像分割及測量_第2頁
第7章 圖像分割及測量_第3頁
第7章 圖像分割及測量_第4頁
第7章 圖像分割及測量_第5頁
已閱讀5頁,還剩65頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第7章圖像分割及測量

本章要點:

圖像閾值分割

目標(biāo)物體的輪廓提取

模板匹配

圖像的測量7.1概述數(shù)字圖像處理的目的之一是圖像識別,圖像分割與測量是圖像識別工作的基礎(chǔ)。圖像分割將圖像分為一些有意義的區(qū)域,然后可以對這些區(qū)域進(jìn)行描述,相當(dāng)于提取出某些目標(biāo)區(qū)域圖像的特征,判斷圖像中是否有感興趣的目標(biāo)。圖像分割的基礎(chǔ)是像素間的相似性和跳變性。

邊緣檢測能較成功的檢測出圖像真正的邊緣。

在邊緣檢測之后,找出目標(biāo)物體的輪廓,進(jìn)行目標(biāo)物體的分析、識別、測量等。這些內(nèi)容在數(shù)字圖像處理應(yīng)用中,如跟蹤、制導(dǎo)等方面扮演重要角色,有著廣泛的用途。

7.2圖像閾值分割

閾值處理是一種區(qū)域分割技術(shù),將灰度根據(jù)主觀愿望分成兩個或多個等間隔或不等間隔灰度區(qū)間,它主要是利用圖像中要提取的目標(biāo)物體和背景在灰度上的差異,選擇一個合適的閾值,通過判斷圖像中的每一個像素點的特征屬性是否滿足閾值的要求來確定圖像中該像素點屬于目標(biāo)區(qū)還是應(yīng)該屬于背景區(qū)域,從而產(chǎn)生二值圖像。

本節(jié)介紹選擇合適的閾值方法有:

直方圖門限選擇

半閾值選擇圖像分割

迭代閾值圖像分割7.2.1直方圖門限選擇

1.理論基礎(chǔ)閾值T可通過分析邊緣檢測輸出的直方圖來確定。假設(shè),一幅圖像只有物體和背景兩部分組成,其灰度級直方圖成明顯的雙峰值,如圖7-1。

255f(i,j)圖7-1雙峰灰度級直方圖

在此情況下,選取雙峰間的谷底處的灰度值T作為閾值,即可將物體和背景很好地分割開。閾值分割法可用數(shù)學(xué)表達(dá)式來描述。設(shè)圖像為f(i,j),其灰度級范圍為[z1,z2],設(shè)T為閾值,是z1和z2內(nèi)任一值,可得一幅二值圖像,其數(shù)學(xué)表達(dá)式為:

255如果f(i,j)≥Tf(i,j)=(7-1)

0如果f(i,j)<T或者,也可以0如果f(i,j)≥Tf(i,j)=(7-2)255如果f(i,j)<T假如,其灰度級直方圖能呈現(xiàn)多個明顯的峰值,比如有三個峰值,可取兩個峰谷處的灰度值T1,T2作為閾值。同樣,可將閾值化后的圖像變成二值化圖像。

f(i,j)T1T22550圖7-2多峰值灰度級直方圖其數(shù)學(xué)表達(dá)式為:

0如果T1≤f(i,j)≤T2f(i,j)=(7-3)255其它或者,同樣也可以255如果T1≤f(i,j)≤T2f(i,j)=(7-4)0其它

2.實現(xiàn)步驟(1)獲得原圖像的首地址,及圖像的寬和高。(2)開辟一塊內(nèi)存空間,并初始化為255。(3)進(jìn)行圖像灰度統(tǒng)計,顯示灰度直方圖。(4)通過對話框選取一個峰谷作為閾值。(5)像素灰度值與閾值之差小于30,將像素置為0,否則置為255。(6)將結(jié)果復(fù)制到原圖像數(shù)據(jù)區(qū)。3.編程代碼

對圖像進(jìn)行灰度直方圖統(tǒng)計。

voidBingXingBianJieDib::Zhifangtu(float*tongji)對圖像進(jìn)行閾值分割。

voidBingXingBianJieDib::Yuzhifenge(intYuzhi)

見光盤程序代碼4.效果對比圖

(a)根據(jù)直方圖選擇閾值

(b)原圖

(c)二值化效果圖7.2.2半閾值選擇分割

1.理論基礎(chǔ)上述方法,不論圖像的直方圖具有雙峰還是多峰值,經(jīng)過閾值化后均將原始灰度級多值圖像變成二值圖像,假如希望閾值后的圖像只把圖像的背景表示成二值圖像(即背景不是最白(用1表示)就是最黑(用0表示))而圖像中的物體仍為多值圖像。此時,可采用半閾值技術(shù),把物體從背景中分離出來。

半閾值化后的圖像可用數(shù)學(xué)表達(dá)式表示為:f(i,j)

如果f(i,j)≥Tf(i,j)=(7-6)0或者255如果f(i,j)<T

或者f(i,j)

如果f(i,j)≤Tf(i,j)=(7-7)0或者255其它2.實現(xiàn)步驟(1)獲得原圖像的首地址,及圖像的寬和高。(2)開辟一塊內(nèi)存空間,并初始化為255。(3)進(jìn)行圖像灰度統(tǒng)計,顯示灰度直方圖。請看Zhifangtu(float*tongji)函數(shù)。(4)選取一個峰谷作為閾值。(5)像素灰度值與閾值之差小于30,將像素置為0,否則保持灰度值不變。(6)將結(jié)果復(fù)制到原圖像數(shù)據(jù)區(qū)。

3.編程代碼

for(j=0;j<height;j++){ for(i=0;i<wide;i++) { lpSrc=p_data+wide*j+i; lpDst=temp+wide*j+i; if((*lpSrc-Yuzhi)<30) *lpDst=*lpSrc; }}4.效果對比圖

(a)根據(jù)直方圖選擇閾值

(b)半閾值選擇圖像分割效果圖

7.2.3迭代閾值分割

1.理論基礎(chǔ)迭代的方法產(chǎn)生閾值,可以通過程序自動計算出比較合適的分割閾值。其計算方法是這樣的:(1)選擇閾值T,通??梢赃x擇圖像的平均灰度值來作為初始閾值;(2)通過初始閾值T,把圖像的平均灰度值分成兩組R1和R2;(3)計算著兩組平均灰度值μ1和μ2;(4)重新選擇閾值T,新的T定義為:T=(μ1+μ2)/2;循環(huán)做第二步到第四步,一直到兩組的平均灰度值μ1和μ2不在發(fā)生改變,那么我們就獲得了所需要的閾值。

2.實現(xiàn)步驟(1)

獲得原圖像的首地址,及圖像的高和寬。(2)進(jìn)行直方圖統(tǒng)計。請看Zhifangtu(float*tongji)函數(shù)。(3)設(shè)定初始閾值T=127。(4)分別計算圖像中小于T和大于T的兩組平均灰度值。(5)迭代計算閾值,直至兩個閾值相等。(7)根據(jù)計算出的閾值,對圖像進(jìn)行二值化處理。3.編程代碼

對圖像進(jìn)行迭代閾值分割。voidBingXingBianJieDib::Diedaifazhi(int*tongji)見光盤程序代碼4.效果對比圖圖7-5迭代閾值圖像分割效果圖

7.3目標(biāo)物體的輪廓提取

輪廓提取法

邊界跟蹤法

區(qū)域增長法

區(qū)域分裂合并法7.3.1輪廓提取法

1.理論基礎(chǔ)圖像邊緣是圖像局部特性不連續(xù)性(灰度突變、顏色突變等)的反映,它標(biāo)志著一個區(qū)域的終結(jié)和另一個區(qū)域的開始。二值圖像的輪廓提取的原理非常簡單,就是掏空內(nèi)部點:如果原圖中有一點為黑,且它的8個相鄰點皆為黑,則將該點刪除。對于非二值圖像,要先進(jìn)行二值化處理。

2.實現(xiàn)步驟(1)獲取原圖像像素的首地址,及圖像的高和寬。(2)開辟一塊內(nèi)存緩沖區(qū),將原圖像素保存在內(nèi)存中。(3)將像素點的8鄰域像素讀入數(shù)組中,如果每一個鄰域像素的灰度值和中心點的灰度值相差小于10,則認(rèn)為鄰域像素和中心點相同,如果8個鄰域像素都和中心點相同,在內(nèi)存緩沖區(qū)中將該像素點置白,否則保持不變。(4)重復(fù)執(zhí)行(3),對每一個像素進(jìn)行處理。(5)將內(nèi)存中的數(shù)據(jù)復(fù)制到原圖像中。

3.編程代碼對圖像進(jìn)行輪廓提取。

voidBingXingBianJieDib::Lunkuotiqu()見光盤程序代碼4.效果對比圖

(a)原圖(b)輪廓提取效果圖

7.3.2邊界跟蹤法

1.理論基礎(chǔ)

邊界跟蹤的基本方法是:先根據(jù)某些嚴(yán)格的“探測準(zhǔn)則”找出目標(biāo)物體輪廓上的像素,再根據(jù)這些像素的某些特征用一定的“跟蹤準(zhǔn)則”找出目標(biāo)物體上的其他像素。一般的跟蹤準(zhǔn)則是:邊緣跟蹤從圖像左上角開始逐像點掃描,當(dāng)遇到邊緣點時則開始順序跟蹤,直至跟蹤的后續(xù)點回到起始點(對于閉合線)或其后續(xù)點再沒有新的后續(xù)點(對于非閉合線)為止。如果為非閉合線,則跟蹤一側(cè)后需從起始點開始朝相反的方向跟蹤到另一尾點。如果不止一個后續(xù)點,則按上述連接準(zhǔn)則選擇加權(quán)平均最大的點為后續(xù)點,另一次要的后續(xù)點作為新的邊緣跟蹤起點另行跟蹤。一條線跟蹤完后,接著掃描下一個未跟蹤點,直至圖像內(nèi)的所有邊緣都跟蹤完畢。

(a)中心像素跟蹤的8個方向編號及偏移量

(b)邊界跟蹤示意圖

(-1,-1)(0,-1)(1,-1)(-1,0)(1,0)(-1,1)(0,1)(1,1)2.實現(xiàn)步驟(1)獲得原圖像的首地址,及圖像的高和寬。(2)開辟一塊內(nèi)存緩沖區(qū),初始化為255。(3)將圖像進(jìn)行二值化處理。(4)跟蹤邊界點,找到1個邊界點,就將內(nèi)存緩沖區(qū)中該點相應(yīng)位置置0。(5)按照跟蹤準(zhǔn)則,重復(fù)執(zhí)行(4),直到回到初始點。(6)將內(nèi)存緩沖區(qū)的內(nèi)容復(fù)制到原圖像中。

3.編程代碼

對圖像進(jìn)行輪廓跟蹤。

voidBingXingBianJieDib::Lunkuogenzong()見光盤程序代碼4.效果對比圖(a)原圖(b)外邊界跟蹤效果圖

7.3.3區(qū)域增長法

1.理論基礎(chǔ)

算法的主要過程是,依次用圖像的每一個像素的灰度值和標(biāo)準(zhǔn)閾值相減,判斷結(jié)果是否小于標(biāo)準(zhǔn)差,是則將該點和種子點合并,不是則保持像素點的灰度值不變。這樣處理后的圖像就是用區(qū)域分割法處理后的邊緣分割圖像。

圖7-9區(qū)域增長法示意圖

2.實現(xiàn)步驟(1)獲取原圖像的像素的首地址,以及圖像的高和寬。(2)依次用圖像的每一個像素的灰度值減去標(biāo)準(zhǔn)閾值,判斷結(jié)果的絕對值是否小于標(biāo)準(zhǔn)差,標(biāo)準(zhǔn)差為10。如果小于則將標(biāo)準(zhǔn)閾值賦給該像素點,否則灰度值保持不變。

(3)調(diào)用刷新函數(shù)顯示效果圖。

3.編程代碼 unsignedcharzhongzi=*(p_data+point.y*wide+point.x);//計算種子點一的灰度值 //對各像素進(jìn)行灰度轉(zhuǎn)換 for(j=0;j<height;j++) {for(i=0;i<wide;i++) {//獲取各顏色分量 unsignedchartemp=*((unsignedchar*)p_data+wide*j+i); if(abs(temp-zhongzi)<10)//當(dāng)前點同種子一灰度值比較接近 { //將種子一的顏色賦給當(dāng)前像素 *((unsignedchar*)p_data+wide*j+i)=temp; } else *((unsignedchar*)p_data+wide*j+i)=255; } }4.效果對比圖(a)選擇生長點

(b)按右鍵點擊黑處效果圖7.3.4區(qū)域分裂合并法區(qū)域分裂合并方法利用了圖像數(shù)據(jù)的金字塔或四叉樹數(shù)據(jù)結(jié)構(gòu)的層次概念,將圖像劃分成一組任意不相交的初始區(qū)域,即可以從圖像的這種金字塔或四叉樹數(shù)據(jù)結(jié)構(gòu)的任一中間層開始,根據(jù)給定的均勻性檢測準(zhǔn)則進(jìn)行分裂和合并這些區(qū)域,逐步改善區(qū)域劃分的性能,直至最后將圖像分成數(shù)量最少的均勻區(qū)域為止。

區(qū)域分裂合并方法算法步驟是:(1)

確定均勻性測試準(zhǔn)則T,將原始圖像構(gòu)造成四叉樹數(shù)據(jù)結(jié)構(gòu)。(2)

將圖像四叉樹結(jié)構(gòu)中的某一中間層作為初始的區(qū)域劃分。如果對任何區(qū)域R,有T(R)=false,則把區(qū)域分裂成4個子區(qū),若任一1/4子區(qū)Ri有,T(Ri)=false,則再將該子區(qū)一分為四四個區(qū)域。如果對任一恰當(dāng)?shù)乃膫€子區(qū)有T(R1∪R2∪R3∪R4)=true,則再把四個子區(qū)合并成一個區(qū)。重復(fù)上述操作,直到不可再分或再合為止。(3)

若有不同大小的兩個相鄰區(qū)域Ri和Rj,滿足T(Ri∪Rj)=true,則合并這兩個區(qū)域。舉例說明:(a)對原圖進(jìn)行第一次操作

(b)第二次操作

(c)最終結(jié)果

7.4圖像的測量

幾個基本概念:

(1)鄰域(2)連通4點鄰連通8點連通

與像素(x,y)對應(yīng)的點集合{(x+p,y+q);((p,q)是一對有意義的整數(shù))}稱之為像素(x,y)的鄰域。離散圖像處理中常取4鄰域和8鄰域.

(3)連通成份

(4)標(biāo)記

二值圖像中互相連通的0-像素集或1-像素集稱之為連通成份。

分割后的一幀圖像內(nèi)可能存在多個連通成份,每個非連通成份都對應(yīng)一個目標(biāo)圖像區(qū),給各目標(biāo)圖像區(qū)分配相應(yīng)標(biāo)號的工作稱之為標(biāo)記。

本小節(jié)是以存在著一定面積黑區(qū)域的二值圖像為對像的處理程序集,在二值圖像中

溫馨提示

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

最新文檔

評論

0/150

提交評論