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

下載本文檔

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

文檔簡(jiǎn)介

第8章圖像特征與理解8.1圖像的基本特征8.2角點(diǎn)特征8.3紋理分析8.4不變矩特征8.5圖像匹配8.6局部不變特征點(diǎn)提取習(xí)題8.1圖像的基本特征

8.1.1幾何方向

1.位置和方向

(1)圖像中物體(圖形或區(qū)域)的位置,定義為物體的面積中心。面積中心就是圖形的質(zhì)心O(見圖8-1)。因二值圖像質(zhì)量分布是均勻的,故質(zhì)心和形心重合。若圖像中的物體對(duì)應(yīng)的像素位置坐標(biāo)為(xi,yj)(i=0,1,…,n-1;j=0,1,…,m-1),則可用式(10-1)計(jì)算其質(zhì)心位置坐標(biāo):(8-1)圖8-1物體位置由質(zhì)心表示

2.方向

確定物體的方向有一定難度。如果物體是細(xì)長(zhǎng)的,則可以把較長(zhǎng)方向的軸定為物體的方向,如圖8-2所示。通常,將最小二階矩軸(最小慣量軸在二維平面上的等效軸)定義為較長(zhǎng)物體的方向。也就是說,要找出一條直線,使下式定義的E值最?。?8-2)式中:r是點(diǎn)(x,y)到直線的垂直距離。圖8-2物體方向可由最小慣量軸定義2.周長(zhǎng)

區(qū)域的周長(zhǎng)定義為區(qū)域的邊界長(zhǎng)度。區(qū)域的周長(zhǎng)在區(qū)別具有簡(jiǎn)單或復(fù)雜形狀物體時(shí)特別有用。一個(gè)形狀簡(jiǎn)單的物體用相對(duì)較短的周長(zhǎng)來包圍它所占有的面積。通常,測(cè)量這個(gè)距離時(shí)包含了許多90°的轉(zhuǎn)彎,從而擴(kuò)大了周長(zhǎng)值。

由于周長(zhǎng)表示方法不同,因而計(jì)算方法不同,常用的簡(jiǎn)便方法如下:

(1)當(dāng)把圖像中的像素看做單位面積小方塊時(shí),則圖像中的區(qū)域和背景均由小方塊組成。區(qū)域的周長(zhǎng)即為區(qū)域和背景縫隙的長(zhǎng)度和,此時(shí),邊界用隙碼表示。因此,求周長(zhǎng)就是計(jì)算隙碼的長(zhǎng)度。

(2)當(dāng)把像素看做一個(gè)個(gè)點(diǎn)時(shí),則周長(zhǎng)用鏈碼表示,求周長(zhǎng)也即計(jì)算鏈碼長(zhǎng)度。此時(shí),當(dāng)鏈碼值為奇數(shù)時(shí),其長(zhǎng)度記作;當(dāng)鏈碼值為偶數(shù)時(shí),其長(zhǎng)度記作1。周長(zhǎng)p表示為(8-3)式中:Ne、No分別是邊界鏈碼(8方向)中走偶步與走奇步的數(shù)目。周長(zhǎng)也可以簡(jiǎn)單地從物體分塊文件中通過計(jì)算邊界上相鄰像素的中心距離的和得到。

(3)周長(zhǎng)用邊界所占面積表示,也即邊界點(diǎn)數(shù)之和,每個(gè)點(diǎn)占面積為1的一個(gè)小方塊。邊界的編碼方法請(qǐng)參考10.2.6節(jié)。以圖8-3所示的區(qū)域?yàn)槔?,采用上述三種計(jì)算周長(zhǎng)的方法求得邊界的周長(zhǎng)分別是:

(1)邊界用隙碼表示時(shí),周長(zhǎng)為24;

(2)邊界用鏈碼表示時(shí),周長(zhǎng)為10+5;

(3)邊界用面積表示時(shí),周長(zhǎng)為15。圖8-3周長(zhǎng)計(jì)算實(shí)例3.面積

面積只與物體的邊界有關(guān),而與其內(nèi)部灰度級(jí)的變化無關(guān)。一個(gè)形狀簡(jiǎn)單的物體用相對(duì)較短的周長(zhǎng)來包圍它所占有的面積。

1.像素計(jì)數(shù)面積

最簡(jiǎn)單的(未校準(zhǔn)的)面積計(jì)算方法是統(tǒng)計(jì)邊界內(nèi)部(也包括邊界上)的像素的數(shù)目。面積A計(jì)算公式見式(8-4):(8-4)對(duì)二值圖像而言,若用1表示物體,用0表示背景,其面積就是統(tǒng)計(jì)f(x,y)=1的個(gè)數(shù)。

2.由邊界行程碼或鏈碼計(jì)算面積

由各種封閉邊界區(qū)域的描述來計(jì)算面積也很方便,可分如下情況:

(1)已知區(qū)域的行程編碼,只需把值為1的行程長(zhǎng)度相加,即為區(qū)域面積。

(2)若給定封閉邊界的某種表示,則相應(yīng)連通區(qū)域的面積應(yīng)為區(qū)域外邊界包圍的面積減去它的內(nèi)邊界包圍的面積(孔的面積)。

下面,以邊界鏈碼表示為例,說明通過邊界鏈碼求出所包圍面積的方法。設(shè)屏幕左上角為坐標(biāo)原點(diǎn),起始點(diǎn)坐標(biāo)為(x0

,y0),第k段鏈碼終端的y坐標(biāo)為(8-5)式中:(8-6)εi是第i個(gè)碼元。設(shè):則相應(yīng)邊界所包圍的面積為(8-7)用式(8-7)求得的面積,即用鏈碼表示邊界時(shí)邊界內(nèi)所包含的單元方格數(shù)。(3)用邊界坐標(biāo)計(jì)算面積

Green定理表明,在x-y平面中的一個(gè)封閉曲線包圍的面積由其輪廓積分給定,即(8-8)其中,積分沿著該閉合曲線進(jìn)行。將其離散化,式(8-8)變?yōu)?8-9)式中:Nb為邊界點(diǎn)的數(shù)目。4.長(zhǎng)軸和短軸

當(dāng)物體的邊界已知時(shí),用其外接矩形的尺寸來刻畫它的基本形狀是最簡(jiǎn)單的方法,如圖8-4(a)所示。求物體在坐標(biāo)系方向上的外接矩形,只需計(jì)算物體邊界點(diǎn)的最大和最小坐標(biāo)值,便可得到物體的水平和垂直跨度。但是,對(duì)任意朝向的物體,需要先確定物體的主軸,然后計(jì)算主軸方向上的長(zhǎng)度和與之垂直方向上的寬度,這樣的外接矩形是物體最小外接矩形(MinimumEnclosingRectangle,MER)。計(jì)算MER的一種方法是,以每次3°左右的增量在90°范圍內(nèi)旋轉(zhuǎn)物體邊界。每旋轉(zhuǎn)1次記錄外接矩形邊界點(diǎn)的最大和最小x,y值。旋轉(zhuǎn)到某一個(gè)角度后,外接矩形的面積達(dá)到最小,這時(shí)外接矩形的長(zhǎng)度和寬度分別為長(zhǎng)軸和短軸,如圖8-4(b)所示。此外,主軸可以通過矩(Moments)的計(jì)算得到,也可以用求物體的最佳擬合直線的方法求出。圖8-4MER法求物體的長(zhǎng)軸和短軸5.距離

圖像中兩點(diǎn)P(x,y)和Q(u,v)之間的距離是重要的幾何性質(zhì),常用如下三種方法量測(cè)。

(1)歐幾里德距離:(8-10)(2)市區(qū)距離:(8-11)(3)棋盤距離:(8-12)顯然,歐幾里德距離為P、Q間的直線距離。以P為起點(diǎn)的市區(qū)距離小于等于t的點(diǎn)形成以P為中心的菱形,圖8-5(a)為t≤2時(shí)用點(diǎn)的距離表示的這些點(diǎn)??梢?,d4(P,Q)是從P到Q最短的4路徑的長(zhǎng)度。同樣,以P為起點(diǎn)的棋盤距離小于等于t的點(diǎn)形成以P為中心的正方形。例如,t≤2,用點(diǎn)的距離表示這些點(diǎn)時(shí),如圖8-5(b)所示。同樣由圖8-5(b)可見,d8(P,Q)是從P到Q最短的8路徑的長(zhǎng)度。

d4、d8計(jì)算簡(jiǎn)便,且為正整數(shù),因此常用來測(cè)量距離,而歐幾里德距離很少被采用。圖8-5兩種距離表示法8.1.2形狀特征

1.矩形度

矩形度反映物體對(duì)其外接矩形的充滿程度,用物體的面積與其最小外接矩形的面積之比來描述:(8-13)式中:AO是該物體的面積;AMER是MER的面積。

R的值在0~1之間。當(dāng)物體為矩形時(shí),R取得最大值1;圓形物體的R取值為π/4;細(xì)長(zhǎng)的、彎曲的物體的R取值變小。

另外一個(gè)與形狀有關(guān)的特征是長(zhǎng)寬比r:(8-14)r即為MER寬與長(zhǎng)的比值。利用r可以將細(xì)長(zhǎng)的物體與圓形或方形的物體區(qū)分開來。2.圓形度

圓形度用來刻畫物體邊界的復(fù)雜程度。有四種圓形度測(cè)度。

(1)致密度Co

度量圓形度最常用的是致密度,即周長(zhǎng)(P)的平方與面積(A)的比:(8-15)

(2)邊界能量E

邊界能量是圓形度的另一個(gè)指標(biāo)。假定物體的周長(zhǎng)為P,用變量p表示邊界上的點(diǎn)到某一起始點(diǎn)的距離。邊界上任一點(diǎn)都有一個(gè)瞬時(shí)曲率半徑r(p),它是該點(diǎn)與邊界相切圓的半徑(見圖8-6)。p點(diǎn)的曲率函數(shù)是:圖8-6曲率半徑函數(shù)K(p)是周期為P的周期函數(shù)。可用式(8-16)計(jì)算單位邊界長(zhǎng)度的平均能量:(8-16)在面積相同的條件下,圓具有最小邊界能量E0=(2π/P)2=(1/R)2,其中R為圓的半徑。曲率可以由鏈碼算出,因而邊界能量也可方便計(jì)算。

(3)圓形性

圓形性(Circularity)C是一個(gè)用區(qū)域R的所有邊界點(diǎn)定義的特征量,即(8-17)式中:μR是從區(qū)域重心到邊界點(diǎn)的平均距離;δR是從區(qū)域重心到邊界點(diǎn)的距離均方差:(8-18)(8-19)當(dāng)區(qū)域R趨向圓形時(shí),特征量C是單調(diào)遞增且趨向無窮的,它不受區(qū)域平移、旋轉(zhuǎn)和尺度變化的影響,可以推廣用以描述三維目標(biāo)。

(4)面積與平均距離平方的比值

圓形度的第四個(gè)指標(biāo)利用了物體內(nèi)部的點(diǎn)到與其最近的邊界點(diǎn)的平均距離,即(8-20)式中:xi是從具有N個(gè)點(diǎn)的物體中的第i個(gè)點(diǎn)到與其最近的邊界點(diǎn)的距離。相應(yīng)的形狀度量為(8-21)3.球狀性

球狀性(Sphericity)S既可以描述二維目標(biāo)也可以描述三維目標(biāo),其定義為(8-22)在二維情況下,ri代表區(qū)域內(nèi)切圓(InscribedCircle)的半徑,而rc代表區(qū)域外接圓(CircumscribedCircle)的半徑,兩個(gè)圓的圓心都在區(qū)域的重心上,如圖8-7所示。當(dāng)區(qū)域?yàn)閳A時(shí),S達(dá)到最大值1.0,而當(dāng)區(qū)域?yàn)槠渌螤顣r(shí),則有S<1.0。S不受區(qū)域平移、旋轉(zhuǎn)和尺度變化的影響。圖8-7球狀性定義示意圖4.偏心率

偏心率(Eccentricity)E0也可叫伸長(zhǎng)度(Elongation),在一定程度上描述了區(qū)域的緊湊性。偏心率E0有多種計(jì)算公式。一種簡(jiǎn)單方法是用區(qū)域主軸(長(zhǎng)軸)長(zhǎng)度與輔軸(短軸)長(zhǎng)度的比值,如圖8-8所示。不過這種計(jì)算受物體形狀和噪聲影響較大。圖8-8偏心率度量另一種方法是計(jì)算慣性主軸比。Tenebaum提出計(jì)算偏心率的近似公式如下:(8-23)主軸方向角:(8-24)5.形狀描述子

對(duì)物體進(jìn)行描述時(shí),我們希望使用一些比單個(gè)參數(shù)更豐富的細(xì)節(jié),但又比用圖像本身更緊湊的方法描述物體形狀。形狀描述子便能對(duì)物體形狀進(jìn)行簡(jiǎn)潔的描述,包括邊界鏈碼、

差分鏈碼、傅立葉描述子等。

1)邊界鏈碼

鏈碼是邊界點(diǎn)的一種編碼表示方法,其特點(diǎn)是利用一系列具有特定長(zhǎng)度和方向的相連的直線段來表示目標(biāo)的邊界。因?yàn)槊總€(gè)線段的長(zhǎng)度固定而方向數(shù)目取為有限,所以,只有邊界的起點(diǎn)需要用絕對(duì)坐標(biāo)表示,其余點(diǎn)均可只用接續(xù)方向來代表偏移量。由于表示一個(gè)方向數(shù)比表示一個(gè)坐標(biāo)值所需比特?cái)?shù)少,而且對(duì)每一個(gè)點(diǎn)只需一個(gè)方向數(shù)就可以代替兩個(gè)坐標(biāo)值,因此,鏈碼表達(dá)可大大減少表示邊界的數(shù)據(jù)量。數(shù)字圖像一般是按固定間距的網(wǎng)格采集的,因此,最簡(jiǎn)單的鏈碼是跟蹤邊界并賦給每?jī)蓚€(gè)相鄰像素的連線一個(gè)方向值。常用的有4方向和8方向鏈碼,其方向定義分別如圖8-9(a)、(b)所示。

對(duì)圖8-9(c)所示邊界,若設(shè)起始點(diǎn)O的坐標(biāo)為(5,5),則分別用如下4方向和8方向鏈碼表示區(qū)域邊界:

4方向鏈碼:(5,5)11123232300;

8方向鏈碼:(5,5)222455600。圖8-9碼值與方向?qū)?yīng)關(guān)系實(shí)際中直接對(duì)分割所得的目標(biāo)邊界編碼有可能出現(xiàn)兩個(gè)問題:一是碼串比較長(zhǎng);二是噪聲等干擾會(huì)導(dǎo)致小的邊界變化從而使鏈碼發(fā)生與目標(biāo)整體形狀無關(guān)的較大變動(dòng)。常用的改進(jìn)方法是對(duì)原邊界以較大的網(wǎng)格重新采樣,并把與原邊界點(diǎn)最接近的大網(wǎng)格點(diǎn)定為新的邊界點(diǎn)。這種方法也可用于消除目標(biāo)尺度變化對(duì)鏈碼的影響。

鏈碼與選擇的起點(diǎn)有關(guān)。對(duì)同一個(gè)邊界,若用不同的邊界點(diǎn)作為鏈碼起點(diǎn),則得到的鏈碼是不同的。為解決這個(gè)問題,可把鏈碼歸一化,下面介紹一種具體的做法。

給定一個(gè)從任意點(diǎn)開始而產(chǎn)生的鏈碼,可把它看做一個(gè)由各方向數(shù)構(gòu)成的自然數(shù)。首先,將這些方向數(shù)依一個(gè)方向循環(huán),以使它們所構(gòu)成的自然數(shù)的值最?。蝗缓?,將轉(zhuǎn)換后所對(duì)應(yīng)的鏈碼起點(diǎn)作為這個(gè)邊界的歸一化鏈碼的起點(diǎn)。

2)一階差分鏈碼

用鏈碼表示目標(biāo)邊界時(shí),若目標(biāo)平移,鏈碼不會(huì)發(fā)生變化,而目標(biāo)旋轉(zhuǎn)則鏈碼會(huì)發(fā)生變化。為解決這個(gè)問題,可利用鏈碼的一階差分來重新構(gòu)造一個(gè)表示原鏈碼各段之間方向變化的新序列。這相當(dāng)于把鏈碼進(jìn)行旋轉(zhuǎn)歸一化。一階差分可用相鄰兩個(gè)方向數(shù)按反方向相減(后一個(gè)減去前一個(gè))得到。如圖8-10所示,上面一行為原鏈碼(括號(hào)中為最右一個(gè)方向數(shù)循環(huán)到左邊),下面一行為上面一行的數(shù)兩兩相減得到的差分碼(注意:若差為-1,則表示-1的相反方向3)。左邊的目標(biāo)在逆時(shí)針旋轉(zhuǎn)90°后成為右邊的形狀,可見,原鏈碼發(fā)生了變化,但差分碼并沒有變化。圖8-10利用一階差分對(duì)鏈碼旋轉(zhuǎn)歸一化

3)傅立葉描述子

對(duì)邊界的離散傅立葉變換表達(dá),可以作為定量描述邊界形狀的基礎(chǔ)。采用傅立葉描述的一個(gè)優(yōu)點(diǎn)是將二維問題簡(jiǎn)化為一維問題,即將x-y平面中的曲線段轉(zhuǎn)化為一維函數(shù)f(r)(在r-f(r)平面上),也可將x-y平面中的曲線段轉(zhuǎn)化為復(fù)平面上的一個(gè)序列。具體就是將x-y平面與復(fù)平面u-v重合,其中實(shí)部u軸與x軸重合,虛部v軸與y軸重合,這樣可用復(fù)數(shù)u+jv的形

式來表示給定邊界上的每個(gè)點(diǎn)(x,y)。這兩種表示在本質(zhì)上是一致的,是點(diǎn)點(diǎn)對(duì)應(yīng)的(見圖8-11)。圖8-11邊界點(diǎn)的兩種表示方法現(xiàn)考慮一個(gè)由N個(gè)點(diǎn)組成的封閉邊界,從任一點(diǎn)開始繞邊界一周便得到一個(gè)復(fù)數(shù)序列:s(k)=u(k)+j

v(k)k=0,1,…,N-1s(k)的離散傅立葉變換是:ω=0,1,…,N-1(8-25)S(ω)可稱為邊界的傅立葉描述,它的傅立葉逆變換是:k=0,1,…,N-1(8-26)可見,離散傅立葉變換是個(gè)可逆線性變換,在變換過程中信息沒有任何增減。這為我們有選擇地描述邊界提供了方便。只取S(ω)的前M個(gè)系數(shù)即可得到s(k)的一個(gè)近似:k=0,1,…,N-1 (8-27)需注意,式(8-27)中k的范圍不變,即在近似邊界上的點(diǎn)數(shù)不變,但ω的范圍縮小了,即為重建邊界點(diǎn)所用的頻率項(xiàng)少了。傅立葉變換的高頻分量對(duì)應(yīng)一些細(xì)節(jié)而低頻分量對(duì)應(yīng)總體形狀,因此,用一些低頻分量的傅立葉系數(shù)足以近似描述邊界形狀。8.2角點(diǎn)特征

角點(diǎn)沒有一個(gè)準(zhǔn)確的數(shù)學(xué)定義,通常認(rèn)為角點(diǎn)是二維圖像亮度變化最劇烈或圖像邊緣曲線上曲率值最大的像素點(diǎn)。作為一個(gè)重要的局部特征,角點(diǎn)利用極少的像素,集中了圖像很多重要的形狀信息,具有旋轉(zhuǎn)不變的特點(diǎn),且對(duì)光照變化不敏感。利用角點(diǎn)可以大大減少信息數(shù)據(jù)量,有效提高計(jì)算速度,因而在圖像匹配、攝像機(jī)標(biāo)定、三維重建、運(yùn)動(dòng)物體的跟蹤及模式識(shí)別等領(lǐng)域有著重要的應(yīng)用。角點(diǎn)檢測(cè)算法應(yīng)滿足4個(gè)準(zhǔn)則:①檢測(cè)性,即在不考慮噪聲的條件下,算法應(yīng)能檢測(cè)出圖像中所有的角點(diǎn);②定位性,即檢測(cè)出的角點(diǎn)位置應(yīng)盡可能準(zhǔn)確;③穩(wěn)定性,即從同一場(chǎng)景的圖像序列中檢測(cè)到的角點(diǎn)應(yīng)能互相對(duì)應(yīng);④復(fù)雜性,即應(yīng)具有較低的計(jì)算復(fù)雜度,減少人工干預(yù),

使得算法能快速實(shí)現(xiàn)。角點(diǎn)檢測(cè)方法可大致分為兩類:基于邊緣的檢測(cè)算法和基于灰度變化的檢測(cè)算法?;谶吘壍臋z測(cè)算法先提取圖像的邊緣信息,然后尋找輪廓上曲率最大的點(diǎn)或拐點(diǎn),或進(jìn)行多邊形擬合尋找特征點(diǎn)。此類方法僅處理邊界像素,因此計(jì)算量小且運(yùn)算速度快,但容易受噪聲影響,

且對(duì)邊緣提取結(jié)果具有依賴性?;诨叶鹊慕屈c(diǎn)檢測(cè)算法通過對(duì)圖像的局部結(jié)果進(jìn)行分析,直接利用角點(diǎn)本身的性質(zhì)檢測(cè),已成為角點(diǎn)檢測(cè)算法的主要趨勢(shì)。本節(jié)將介紹Moravec、Harris和SUSAN等3個(gè)基于灰度變化的角點(diǎn)檢測(cè)算法。8.2.1Moravec算法

Moravec在1977年提出了基于灰度變化的角點(diǎn)提取算法。它通過判斷一個(gè)窗中各個(gè)方向的灰度值的變化來檢測(cè)角點(diǎn),當(dāng)各個(gè)方向的灰度值均有較大的變化時(shí),則認(rèn)為存在一個(gè)角點(diǎn)。以像素點(diǎn)(xo,yo)為中心的局部窗口中沿(u,v)方向的圖像灰度變化E(u,v)可表示為(8-28)

Moravec算法的思想具有合理性。如圖8-12所示,例如,當(dāng)該窗口周圍為一個(gè)光滑區(qū)域時(shí),其在各個(gè)方向的灰度變化都?。划?dāng)該窗口周圍為邊結(jié)構(gòu)時(shí),沿著邊界方向的灰度值變化較小;而當(dāng)該窗口周圍為一個(gè)角結(jié)構(gòu)時(shí),其在各個(gè)方向的灰度值都有較大的變化,因此Moravec算法能

將角點(diǎn)檢測(cè)出來。但是,Moravec算法雖然簡(jiǎn)單,但計(jì)算復(fù)雜度高,效率低。由于該算法只對(duì)四個(gè)方向進(jìn)行取樣并取極小值,所以對(duì)圖像邊緣、孤立點(diǎn)和噪聲點(diǎn)特別敏感,誤檢測(cè)率很高。圖8-12Moravec算法檢測(cè)角點(diǎn)示意圖8.2.2Harris算法

1988年,Harris在Moravec算法的基礎(chǔ)上,提出了一種新的角點(diǎn)檢測(cè)算法。為了克服噪聲的影響,Harris考慮了窗口中不同位置的點(diǎn)對(duì)圖像灰度變化統(tǒng)計(jì)的影響,將式(8-28)改寫為(8-29)根據(jù)全微分公式,對(duì)式(8-29)右邊I(x+u,y+v)項(xiàng)進(jìn)行泰勒展開:

將上式代入式(8-29),并整理成矩陣相乘的形式,得到下式:(8-30)(8-31)其中矩陣M稱為Harris矩陣,它決定了圖像在各個(gè)方向的能量變化。矩陣M的性質(zhì)由其兩個(gè)特征值λ1和λ2所決定。圖8-13顯示了λ1和λ2與圖像特征之間的關(guān)系。圖8-13矩陣M的特征值與圖像特征間的對(duì)應(yīng)關(guān)系根據(jù)矩陣的特征值與圖像特征的對(duì)應(yīng)關(guān)系,Harris采用矩陣的行列式和跡檢測(cè)角,定義如下:

R=det(M)-k·(trace(M))2(8-32)

式中:det(M)=ab-c2;trace(M)=a+b;k是一個(gè)常量,通常取0.04~0.06。當(dāng)R大于某個(gè)給定的閾值,并且是一個(gè)局部極大值時(shí),即認(rèn)為相應(yīng)局部窗口的中心點(diǎn)是一個(gè)角點(diǎn)。

OpenCV提供了Harris角點(diǎn)檢測(cè)算法,實(shí)現(xiàn)函數(shù)為cornerHarris。圖8-14是對(duì)一幅建筑物場(chǎng)景的角點(diǎn)檢測(cè)結(jié)果。Harris角點(diǎn)檢測(cè)的完整代碼請(qǐng)讀者登錄出版社網(wǎng)站下載,文件路徑:

code\src\chapter08\code08

01harrisCorDet.cpp。圖8-14Harris角點(diǎn)檢測(cè)結(jié)果8.2.3SUSAN算法

SUSAN算法是1997年由Smith和Brady提出的一種直接利用灰度值進(jìn)行角點(diǎn)檢測(cè)的算法。它基于一個(gè)圓形模板,統(tǒng)計(jì)每個(gè)以像素為中心的模板鄰域的灰度值與中心點(diǎn)灰度值相近點(diǎn)的個(gè)數(shù),稱為SUSAN面積。如果SUSAN面積小于某個(gè)閾值,則認(rèn)為該點(diǎn)是一個(gè)候選角點(diǎn)。

SUSAN設(shè)計(jì)了一個(gè)半徑為3的圓形模板,含37個(gè)像素。如圖8-15(a)所示,模板中心點(diǎn)稱為核子,表示待檢測(cè)的點(diǎn)。如圖8-15(b)所示,將模板在圖像的每個(gè)像素點(diǎn)上移動(dòng),當(dāng)模板核子位于圖像中亮度一致的區(qū)域內(nèi)時(shí),SUSAN面積最大,其值為圓形模板的面積;隨著模板核子離圖像邊緣越來越近,其面積越來越小;當(dāng)模板中心靠近角點(diǎn)時(shí),其面積值進(jìn)一步減少,當(dāng)模板中心落在角點(diǎn)上時(shí),其面積達(dá)到局部最小值。圖8-15SUSAN角點(diǎn)檢測(cè)算法

SUSAN檢測(cè)角點(diǎn)的算法過程如下:

(1)將SUSAN模板在圖像上滑動(dòng),遍歷整個(gè)圖像,在每個(gè)位置上比較模板核子與鄰域內(nèi)位置的灰度值:(8-33)式中,r0是模板的核子;r是模板內(nèi)的其他點(diǎn);I為圖像的灰度值;t為判斷兩個(gè)點(diǎn)灰度值是否相似的閾值;c(r0,r)是判斷r是否屬于SUSAN區(qū)域的判別函數(shù)。式(8-34)是另一種常用的判別函數(shù):(8-34)(2)統(tǒng)計(jì)模板內(nèi)與核子灰度值相近的像素總數(shù):

(8-35)

(3)根據(jù)設(shè)置的閾值g,得到角點(diǎn)響應(yīng)值:

(8-36)

(4)將具有局部極大值的點(diǎn)認(rèn)為是角點(diǎn)。圖8-16是利用SUSAN算法檢測(cè)的角點(diǎn)結(jié)果。SUSAN算法的優(yōu)點(diǎn)在于直接對(duì)像素的鄰域灰度值比較進(jìn)行角點(diǎn)檢測(cè),不需要計(jì)算梯度,不需插值而且不依賴于圖像分割的結(jié)果。因此,其計(jì)算復(fù)雜度低于Harris算法,在圖像處理中得到廣泛的應(yīng)用。但它限制角點(diǎn)檢測(cè)區(qū)域在相似亮度的集中范圍,這與角點(diǎn)的分布定義有一定的沖突。另外,SUSUAN方法只能提供角點(diǎn)的位置,無法給出角點(diǎn)的尺度和方向,這給后續(xù)的圖像匹配帶來一定的局限性。圖8-16SUSAN角點(diǎn)檢測(cè)結(jié)果

8.3紋理分析

當(dāng)物體在紋理上與其周圍背景或其他物體有較大差別時(shí),圖像分割必須以紋理為基礎(chǔ)。目前對(duì)紋理尚無統(tǒng)一的定義。紋理(Texture)一詞最初指纖維物的外觀,一般來說,可以認(rèn)為紋理是由許多相互接近的、互相編織的元素構(gòu)成的,它們富有周期性。因此,可將紋理定義為“任

何事物構(gòu)成成分的分布或特征,尤其是涉及外觀或觸覺的品質(zhì)”。與圖像分析直接有關(guān)的定義是:一種反映一個(gè)區(qū)域中像素灰度級(jí)的空間分布的屬性。紋理可分為人工紋理和自然紋理。人工紋理是某種符號(hào)的有序排列,這些符號(hào)可以是線條、點(diǎn)和字母等,是有規(guī)則的。自然紋理是具有重復(fù)排列現(xiàn)象的自然景象,如磚墻、森林和草地等照片,往往是無規(guī)則的。圖8-17(a)是人工紋理圖例,圖8-17(b)是自然紋理圖例。圖8-17人工紋理與自然紋理認(rèn)識(shí)紋理有兩種方法:一是憑人們的直觀印象,二是憑圖像本身的結(jié)構(gòu)。從直觀印象的觀點(diǎn)出發(fā),便會(huì)產(chǎn)生多種不同的統(tǒng)計(jì)紋理特征,當(dāng)然可以采用統(tǒng)計(jì)方法對(duì)紋理進(jìn)行分析。從圖像結(jié)構(gòu)的觀點(diǎn)出發(fā),則認(rèn)為紋理是結(jié)構(gòu),紋理分析應(yīng)該采用句法結(jié)構(gòu)方法。一般常用如下三種方法來描述和度量紋理:統(tǒng)計(jì)法、結(jié)構(gòu)法和頻譜法。下面分別介紹這三種方法。8.3.1統(tǒng)計(jì)法

1.灰度差分統(tǒng)計(jì)法

設(shè)(x,y)為圖像中的一點(diǎn),該點(diǎn)與和它只有微小距離的點(diǎn)(x+Δx,y+Δy)的灰度差分值為

gΔ(x,y)=g(x,y)-g(x+Δx

,y+Δy) (8-37)

式中,gΔ為灰度差分。設(shè)灰度差分的所有可能取值共有

m級(jí),令點(diǎn)(x,y)在整幅圖像上移動(dòng),累計(jì)出gΔ(x,y)取各個(gè)數(shù)值的次數(shù),由此便可以作出gΔ(x,y)的直方圖。由直方圖可以知道gΔ(x,y)取值的概率pΔ(i),i在1~m間取值。該方法采用如下參數(shù)描述紋理圖像的特征:

(8-38)

(8-39)

(8-40)

(8-41)(1)對(duì)比度:(2)角度方向二階矩:(3)熵:(4)平均值:

2.行程長(zhǎng)度統(tǒng)計(jì)法

設(shè)點(diǎn)(x,

y)的灰度值為g,與其相鄰點(diǎn)的灰度值也可能為g。統(tǒng)計(jì)出從任一點(diǎn)出發(fā)沿θ方向上連續(xù)n個(gè)點(diǎn)均具有灰度值g發(fā)生的概率,記為p(g,n)。在同一方向上具有相同灰度值的像素個(gè)數(shù)n稱為行程長(zhǎng)度。由p(g,n)可以定義出如下參數(shù),這些參數(shù)能夠較好地描述紋理特征。(8-42)(8-43)(1)長(zhǎng)行程加重法:(2)灰度值分布:(1)長(zhǎng)行程加重法:(2)灰度值分布:(8-44)(8-45)式中:N2為像素總數(shù)。8.3.2空間自相關(guān)函數(shù)紋理測(cè)度

紋理常用它的粗糙度來描述。例如,在相同觀察條件下,毛料織物要比絲織品粗糙。粗糙度的大小與局部結(jié)構(gòu)的空間重復(fù)周期有關(guān),周期越小紋理越細(xì)。這種感覺上的粗糙與否不足以定量紋理的測(cè)度,但可說明紋理測(cè)度的變化傾向。即小數(shù)值的紋理測(cè)度表示細(xì)紋理,大數(shù)值的紋理測(cè)度表示粗紋理??臻g自相關(guān)函數(shù)可以作為紋理測(cè)度,具體方法如下。設(shè)圖像為f(m,n),自相關(guān)函數(shù)可由式(8-46)定義:(8-46)式(8-46)對(duì)(2w+1)×(2w+1)窗口內(nèi)的每一個(gè)像素點(diǎn)(j,k)與偏離值為ε

,η=0,±1,±2,…,±T的像素之間的相關(guān)值進(jìn)行計(jì)算。給定偏離(ε,η)時(shí),一般紋理區(qū)的相關(guān)性比細(xì)紋

理區(qū)高,因而紋理粗糙性與自相關(guān)函數(shù)的擴(kuò)展成正比。自相關(guān)函數(shù)擴(kuò)展的一種測(cè)度是二階矩,即(8-47)紋理越粗糙則T越大,因此,可以用T作為度量粗糙度的一種參數(shù)。8.3.3頻譜法

頻譜法借助于傅立葉頻譜的頻率特性,來描述周期的或近似周期的二維圖像模式的方向性。常用的3個(gè)性質(zhì)是:(1)傅立葉頻譜中突起的峰值對(duì)應(yīng)紋理模式的主方向;(2)頻譜中的峰在頻域平面的位置對(duì)應(yīng)模式的基本

周期;

(3)若用濾波去除周期性成分,則剩下的非周期性部分可用統(tǒng)計(jì)方法來描述。實(shí)際檢測(cè)中,為簡(jiǎn)便起見可將頻譜轉(zhuǎn)化到極坐標(biāo)系中,此時(shí)頻譜可用函數(shù)S(r,θ)表示,如圖8-18所示。對(duì)每個(gè)確定的方向θ,S(r,θ)是一個(gè)一維函數(shù)Sθ(r);對(duì)每個(gè)確定的頻率r,S(r,θ)是一個(gè)一維函數(shù)Sr(θ)。對(duì)給定的θ,分析Sθ(r)可得到頻譜沿原點(diǎn)射出方向的行為特性;對(duì)給定的r,分析Sr(θ)可得到頻譜在以原點(diǎn)為中心的圓上的行為特性。如果將這些函數(shù)對(duì)下標(biāo)求和則可得到更為全局性的描述:(8-48)(8-49)式中:

R為以原點(diǎn)為中心的圓的半徑。

S(r)和S(θ)構(gòu)成整個(gè)圖像或圖像區(qū)域紋理頻譜能量的描述。圖8-18(a)、(b)給出兩個(gè)紋理區(qū)域和頻譜示意圖,比較兩條頻譜曲線可看出兩種紋理的朝向區(qū)別,還可從頻譜曲線計(jì)算其最大值的位置等。圖8-18紋理和對(duì)應(yīng)的頻譜示意圖圖8-19為一個(gè)簡(jiǎn)單示例。圖8-19(a)為原圖像,灰度級(jí)為16級(jí),為使聯(lián)合概率矩陣簡(jiǎn)單些,首先將其灰度級(jí)數(shù)減為4級(jí)。這樣,圖8-19(a)變?yōu)閳D8-19(b)的形式。(g1,g2)分別取值為0、1、2、3,由此,將(g1,g2)各種組合出現(xiàn)的次數(shù)排列起來,便可得到圖8-19(c)~圖8-19(e)所示的聯(lián)合概率矩陣。圖8-19聯(lián)合概率矩陣計(jì)算示例可見,距離差分值(a,b)取不同的數(shù)值組合,便可得到不同情況下的聯(lián)合概率矩陣。(a,b)取值要根據(jù)紋理周

期分布的特性來選擇,對(duì)于較細(xì)的紋理,選取(1,0)、(1,1)、(2,0)等小的差分值。當(dāng)(a,b)取值較小時(shí),對(duì)應(yīng)于變化緩慢的紋理圖像,其聯(lián)合概率矩陣對(duì)角線上的數(shù)

值較大;當(dāng)紋理變化越快時(shí),則對(duì)角線上的數(shù)值越小,

而對(duì)角線兩側(cè)上的元素值越大。為了能描述紋理的狀況,需要選取能綜合表現(xiàn)聯(lián)合概率矩陣狀況的參數(shù),典型參數(shù)如下:(8-50)(8-51)(8-52)(8-53)式中Q1~Q4代表的圖像特征并不是很直觀,但它們是描述紋理特征相當(dāng)有效的參數(shù)。8.3.5紋理的句法結(jié)構(gòu)分析法

在紋理的句法結(jié)構(gòu)分析中,把紋理定義為結(jié)構(gòu)基元按某種規(guī)則重復(fù)分布所構(gòu)成的模式。為了分析紋理結(jié)構(gòu),可按如下兩個(gè)步驟描述結(jié)構(gòu)基元的分布規(guī)則:①?gòu)妮斎雸D像中提取結(jié)構(gòu)基元并描述其特征;②描述結(jié)構(gòu)基元的分布規(guī)則。具體做法如下:首先,把一幅紋理圖片分成許多窗口,也就是形成子紋理。最小的小塊就是最基本的子紋理,即基元。紋理基元可以是一個(gè)像素,也可以是4個(gè)或9個(gè)灰度比較一致的像素集合。紋理的表達(dá)可以是多層次的,如圖8-20(a)所示。它可以從像素或小塊紋理一層一層地向上拼合。當(dāng)然,基元的排列可有不同規(guī)則,如圖8-20(b)所示,第一級(jí)紋理排列為ABA,第二級(jí)排列為BAB等,其中A、B代表基元或子紋理。這樣便組成一個(gè)多層的樹狀結(jié)構(gòu),可用樹狀文法

產(chǎn)生一定的紋理并用句法加以描述。圖8-20紋理的樹狀描述及排列紋理樹狀安排的第一種方法如圖8-20(c)所示,樹根安排在中間,樹枝向兩邊伸出,每個(gè)樹枝有一定的長(zhǎng)度。第二種方法如圖8-20(d)所示,樹根安排在一側(cè),分枝都向另一側(cè)伸展。

在紋理判別時(shí),首先將紋理圖像分成固定尺寸的窗口,用樹狀文法說明屬于同紋理圖像的窗口,可以用樹狀自動(dòng)機(jī)識(shí)別樹狀,因此,對(duì)每一個(gè)紋理文法可建立一個(gè)“結(jié)構(gòu)保存的誤差修正樹狀自動(dòng)機(jī)”。該自動(dòng)機(jī)不僅可以接收每個(gè)紋理圖像中的樹,而且能用最小距離判據(jù),辨識(shí)類似的有噪聲的樹。此后,可以對(duì)分割成窗口的輸入圖像進(jìn)行分類。8.4不變矩特征

8.4.1矩的定義

對(duì)于二元有界函數(shù)f(x,y),它的(j+k)階矩Mjk定義為(8-54)由于j和k可取所有的非負(fù)整數(shù)值,因此形成一個(gè)矩的無限集。而且,該集合完全可以確定函數(shù)f(x,y)本身。換句話說,集合{Mjk}對(duì)于函數(shù)f(x,y)是唯一的,也只有f(x,y)才具有該特定的矩集。為了描述形狀,假設(shè)f(x,y)在目標(biāo)物體取值為1,背景為0,即函數(shù)只反映了物體的形狀而忽略其內(nèi)部的灰度

細(xì)節(jié)。

參數(shù)j+k稱為矩的階。特別地,零階矩是物體的面積,即(8-55)對(duì)二維離散函數(shù)f(x,y),零階矩可表示為(8-56)8.4.2質(zhì)心坐標(biāo)與中心矩

當(dāng)j=1,k=0時(shí),M10對(duì)二值圖像來講就是物體上所有點(diǎn)的x坐標(biāo)的總和,類似地,M01就是物體上所有點(diǎn)的y坐標(biāo)的總和,所以:(8-57)即為二值圖像中一個(gè)物體的質(zhì)心的坐標(biāo)。

中心矩定義為(8-58)8.4.3不變矩

相對(duì)于主軸計(jì)算并用面積歸一化的中心矩,在物體放大、平移、旋轉(zhuǎn)時(shí)保持不變。只有三階或更高階的矩經(jīng)過規(guī)一化后不能保持不變性。

對(duì)于j+k=2,3,4,…的高階矩,定義歸一化的中心矩為(8-59)利用歸一化的中心矩,可以獲得6個(gè)不變矩組合,它們對(duì)于平移、旋轉(zhuǎn)、尺度等變換都是不變的,6個(gè)不變矩為(8-60)8.4.4主軸

使二階中心矩從μ11變得最小的旋轉(zhuǎn)角θ可由式(8-61)得出:

(8-61)

將x,y軸分別旋轉(zhuǎn)θ角得坐標(biāo)軸x′,

y′,稱為該物體的主軸。式(8-61)中在θ為90°時(shí)的不確定性可以通過如下條件限定解決:

μ20<μ02

,μ30>0

如果物體在計(jì)算矩之前旋轉(zhuǎn)θ角,或相對(duì)于x′、y′軸計(jì)算矩,那么矩具有旋轉(zhuǎn)不變性。

8.5圖像匹配

8.5.1模板匹配

1.什么是模板匹配

模板就是一幅已知的小圖像。模板匹配就是在一幅大圖像中搜尋目標(biāo),已知該圖中有要找的目標(biāo),且該目標(biāo)同模板有相同的尺寸、方向和圖像元素,通過一定的算法可以在圖中找到目標(biāo),確定其坐標(biāo)位置。如圖8-21所示,輸入圖像中有9個(gè)英文字母,用事先設(shè)置的模板(英文字母K)在輸入圖像中按一定規(guī)律移動(dòng),并計(jì)算模板和輸入圖像中重合部分的特征向量的相關(guān)性,從而判斷輸入圖像中是否有字母K。圖8-21輸入圖像和模板

2.模板匹配算法

1)相關(guān)法

以8位灰度圖像為例,模板T(m,n)疊放在被搜索圖S(H,W)上平移,模板覆蓋被搜索圖的那塊區(qū)域叫子圖Sij。i、j

為子圖左上角在被搜索圖S上的坐標(biāo),搜索范圍是1≤i≤W-m;1≤j≤H-n,如圖8-22所示。圖8-22模板匹配算法示意圖可以用下式衡量T和Sij的相似性:(8-62)式(8-62)的第一項(xiàng)為子圖的能量,第三項(xiàng)為模板的能量,都與模板匹配無關(guān);第二項(xiàng)是模板和子圖的互相關(guān),隨(i,j)而改變。當(dāng)模板和子圖匹配時(shí),該項(xiàng)有極大值。將其歸一化,得模板匹配的相關(guān)系數(shù):(8-63)當(dāng)模板和子圖完全一樣時(shí),相關(guān)系數(shù)R(i,j)=1。在被搜索圖S中完成全部搜索后,找出R的最大值Rmax(im,jm),其對(duì)應(yīng)的子圖Simjm即為匹配目標(biāo)。顯然,用這種公式做圖像匹配計(jì)算量大,速度較慢。

2)誤差法

另一種算法是衡量T和Sij的誤差,其公式為(8-64)

E(i,j)為最小值處即為匹配目標(biāo)。為提高計(jì)算速度,取一誤差閾值E0,當(dāng)E(i,j)>E0時(shí)就停止該點(diǎn)的計(jì)算,繼續(xù)計(jì)算下一點(diǎn)。被搜索的圖越大,匹配速度越慢;模板越小,匹配速度越快。

3)二次匹配誤差算法

二次匹配誤差算法中匹配分兩次進(jìn)行。第一次匹配是粗略匹配。取模板的隔行隔列數(shù)據(jù),即1/4的模板數(shù)據(jù),在被搜索圖上進(jìn)行隔行隔列掃描匹配,即在原圖的1/4范圍內(nèi)匹

配。由于數(shù)據(jù)量大幅度減少,因而匹配速度顯著提高。

誤差閾值E0按式(10-58)確定:(8-65)式中:e0

為各點(diǎn)平均的最大誤差,一般取40~50即可;m,n

分別為模板的長(zhǎng)和寬。第二次匹配是精確匹配。在第一次誤差最小點(diǎn)(imin,jmin)的鄰域內(nèi),即在對(duì)角點(diǎn)為(imin-1,jmin-1),(imin+1,jmin+1)的矩形內(nèi)進(jìn)行搜索匹配,得到最后結(jié)果。實(shí)驗(yàn)結(jié)果表明,二次匹配誤差法的速度比其它算法快10倍左右。8.5.2直方圖匹配

為利用圖像的顏色特征描述圖像,可借助圖像特征的統(tǒng)計(jì)直方圖進(jìn)行圖像的匹配,這便是直方圖匹配。由于篇幅所限,在此只給出常用直方圖匹配的數(shù)學(xué)原理公式,有關(guān)算法請(qǐng)讀者自行設(shè)計(jì)完成。

1.直方圖相交法

設(shè)HQ(k)和HD(k)分別為查詢圖像Q和數(shù)據(jù)庫(kù)圖像D的特征統(tǒng)計(jì)直方圖,則兩圖像之間的匹配值d(Q,D)為(8-66)

2.歐幾里得距離法

為減少計(jì)算量,可采用直方圖的均值來粗略地表達(dá)顏色信息,對(duì)圖像的R、G、B三個(gè)分量,匹配的特征矢量f是:(8-67)式中:μR、μG、μB分別是R、G、B三個(gè)分量直方圖的零階距。此時(shí)查詢圖像Q和數(shù)據(jù)庫(kù)圖像D之間的匹配值為(8-68)

3.中心矩法

對(duì)直方圖來說,均值是其零階矩,更高階的矩也可使用。設(shè)用,,分別表示查詢圖像Q的R、G、B三個(gè)分量直方圖的i(i≤3)階中心矩;用,,分別表示數(shù)據(jù)庫(kù)圖像D的R、G、B三個(gè)分量直方圖的i(i≤3)階中心矩,則它們之間的匹配值為MiQR

MiQG

MiQBMiQR

MiQG

MiQB(8-69)式中:WR、WG、WB為加權(quán)系數(shù)。

4.參考顏色法

距離法太粗糙,直方圖相交法計(jì)算量太大,一種折中的方法是將圖像顏色用一組參考色表示,這組參考色應(yīng)能覆蓋視覺上可感受到的各種顏色。參考色的數(shù)量要比原圖像少,這樣可計(jì)算簡(jiǎn)化的直方圖,所以匹配的特征矢量是:(8-70)式中:ri是第i種顏色出現(xiàn)的頻率,N是參考顏色表的尺寸。加權(quán)后的查詢圖像Q和數(shù)據(jù)庫(kù)圖像D之間的匹配值為(8-71)式中:前面四種方法中,后三種主要是從減少計(jì)算量的角度對(duì)第一種進(jìn)行簡(jiǎn)化,但直方圖相交法還有另外一個(gè)問題:當(dāng)圖像中的特征并不能取遍所有的可取值時(shí),統(tǒng)計(jì)直方圖中會(huì)出現(xiàn)一些零值。這些零值的出現(xiàn)會(huì)對(duì)直方圖的相交帶來影響,從而使得由式(10-59)求得的匹配值并不能正確反映兩圖間的顏色差別。

5.閔可夫斯基距離法

若兩幅圖像Q和D的直方圖分別為HQ和HD,則顏色直方圖匹配的計(jì)算方法可以利用度量空間的閔可夫斯基距離

(λ=1,也叫“街坊”(CityBlock)距離),按如下方法匹配:(8-72)

R、G、B圖像顏色是由不同亮度的紅、綠、藍(lán)三基色組成的,因此式(10-65)可以改寫成:(8-73)式(8-73)在具體實(shí)施時(shí),必須從所讀取的各像素顏色值中分離出R、G、B三基色的亮度值。用這種方法進(jìn)行顏色匹配的例子如圖8-23所示(參見本書所附光盤)。圖8-23街坊(CityBlock)距離法顏色匹配結(jié)果如前所述,由于直方圖丟失了顏色的位置信息,因此兩幅圖像可能內(nèi)容完全不同,但直方圖相似。所以,僅用簡(jiǎn)單的顏色直方圖匹配也容易造成誤識(shí)別。一種改進(jìn)的方法是將圖像劃分成若干子塊,分別對(duì)各子塊進(jìn)行匹配。由于子塊的位置固定,各子塊的直方圖在一定程度上反映了顏色的位置特征,因此,子塊劃分與匹配的方法可以對(duì)物體運(yùn)動(dòng)、攝像機(jī)運(yùn)動(dòng)、鏡頭縮放等情況有更好的適應(yīng)性。

6.X2直方圖匹配

X2直方圖匹配的計(jì)算公式如下:(8-74)

對(duì)于R、G、B圖像,X2直方圖匹配的計(jì)算公式又可以變?yōu)?8-75)

X2直方圖匹配與模板匹配或顏色直方圖匹配相比具有更好的識(shí)別率,識(shí)別鏡頭切換(AbruptSceneChange)的效果良好,但對(duì)鏡頭漸變識(shí)別效果不好。8.6局部不變特征點(diǎn)提取

前述顏色直方圖屬于圖像的全局特征,它通常用于描述目標(biāo)的整體性質(zhì)。但當(dāng)目標(biāo)受到局部遮擋時(shí),全局特征提取將面臨困難。此時(shí),一些能夠穩(wěn)定出現(xiàn)并且具有良好的可分性的點(diǎn)(稱為局部特征)將對(duì)目標(biāo)識(shí)別起到關(guān)鍵作用。例如,本章第1節(jié)所述的角點(diǎn)即為一種局部特征。局部特征也稱為興趣點(diǎn)、顯著點(diǎn)或關(guān)鍵點(diǎn)等,它的局部鄰域具有一定的模式特征。局部不變特征點(diǎn)的提取方法應(yīng)具備以下特性:①重復(fù)度高,不同角度拍攝下的同一場(chǎng)景的兩幅圖像的重疊區(qū)域中,同一特征點(diǎn)能被檢測(cè)到的重復(fù)程度高;②獨(dú)特性,檢測(cè)到的特征點(diǎn)應(yīng)與周圍有明顯的區(qū)別;③局部性,特征應(yīng)該是局部的,允許圖像在不同的視覺條件下存在少量的幾何失真;④較多的數(shù)量,特征點(diǎn)的數(shù)量應(yīng)該足夠的多,增加匹配的可靠性;⑤準(zhǔn)確性,檢測(cè)到的特征點(diǎn)應(yīng)該在位置、尺度等方面具有很高的準(zhǔn)確性;⑥高效性,特征檢測(cè)算法效率高,滿足實(shí)際應(yīng)用的需求。本節(jié)將介紹SIFT和SURF這兩種目前常用的不變特征提取方法。8.6.1SIFT不變特征提取算法

SIFT(Scale-InvariantFeatureTransform)是Lowe在1999年提出的一種提取局部特征進(jìn)行圖像配準(zhǔn)的方法。它能夠穩(wěn)定地檢測(cè)出一幅圖像中的局部特征點(diǎn)及其尺度和方向,并基于檢測(cè)的特征點(diǎn)進(jìn)行圖像匹配。SIFT算子對(duì)圖像的平移、旋轉(zhuǎn)和尺度變化具有不變性,提取的特征點(diǎn)數(shù)量多,對(duì)視角變化具有穩(wěn)定性,對(duì)噪聲具有一定的魯棒性,已成為提取圖像不變特征的經(jīng)典算子。下面介紹該算法的基本過程。

1.建立尺度空間

SIFT算法的基礎(chǔ)是Linderbog提出的尺度空間理論,高斯函數(shù)是唯一可能的尺度空間內(nèi)核。

一幅二維圖像的尺度空間定義為

L(x,y,σ)=G(x,y,σ)*I(x,y)

(8-76)

SIFT在高斯差分(DOG,DifferenceofGaussian)

尺度空間檢測(cè)圖像中的感興趣點(diǎn),尺度為σ的DOG公式定義為

D(x,y,σ)=L(x,y,kσ)-L(x,y,σ)(8-77)圖8-24和圖8-25分別給出了一幅圖像的高斯尺度空間和DOG尺度空間的處理結(jié)果。其中,初始尺度σ=1.6,k=21/3。圖8-24圖像的高斯尺度空間圖8-25圖像的DOG尺度空間對(duì)一幅圖像I,建立其在不同尺度下的圖像,稱為塔(Octave)。第一個(gè)塔的尺度為原圖大小,后面每個(gè)塔為上

一個(gè)Octave降采樣的結(jié)果,即原圖的1/4,構(gòu)成下一個(gè)塔。

圖8-26是圖像金字塔構(gòu)造過程示意圖。圖8-26圖像金字塔的建立

2.特征點(diǎn)的提取

SIFT在DOG尺度空間尋找特征點(diǎn),將每個(gè)采樣點(diǎn)均和它所有的相鄰點(diǎn)比較,判斷其是否是相鄰的圖像域和尺度域上的極值點(diǎn)。如圖8-27所示,中間的檢測(cè)點(diǎn)需和它同尺度8個(gè)相鄰點(diǎn)和上下相鄰尺度對(duì)應(yīng)的9×2個(gè)點(diǎn),共26個(gè)點(diǎn)比較,以確保其是圖像域和尺度域的極值點(diǎn)。圖8-27特征點(diǎn)提取圖在確定圖像中的特征點(diǎn)后,為每個(gè)特征點(diǎn)計(jì)算一個(gè)方向,依照該方向做進(jìn)一步的計(jì)算。利用關(guān)鍵點(diǎn)鄰域像素的梯度方向分布特性為每個(gè)關(guān)鍵點(diǎn)指定方向參數(shù),使算子具備旋轉(zhuǎn)不變性。

對(duì)于檢測(cè)的每一個(gè)關(guān)鍵點(diǎn),采集其所在高斯金字塔3σ鄰域窗口內(nèi)像素的梯度和方向分布特征。鄰域內(nèi)每一個(gè)像素梯度的模值和方向計(jì)算公式如下:接著,使用方向直方圖統(tǒng)計(jì)鄰域內(nèi)像素的梯度方向。該直方圖將0°~360°的范圍分為36個(gè)柱(bins),每柱為10°。如圖8-28所示,方向直方圖的峰值方向代表了關(guān)鍵點(diǎn)的主方向。為了簡(jiǎn)化,這里只畫出8個(gè)方向的直方圖。圖8-28關(guān)鍵點(diǎn)鄰域及其梯度直方圖方向直方圖的峰值代表了該特征點(diǎn)處鄰域梯度的主方向,以直方圖中峰值作為該關(guān)鍵點(diǎn)的方向。為了增強(qiáng)匹配的魯棒性,保留峰值大于直方圖峰值80%的方向作為該關(guān)鍵點(diǎn)的輔方向。

通常僅有15%的關(guān)鍵點(diǎn)被賦序多個(gè)方向,但可以明顯提高關(guān)鍵點(diǎn)匹配的穩(wěn)定性。圖8-29是一幅圖像的關(guān)鍵點(diǎn)及其主方向檢測(cè)結(jié)果。圖8-29圖像的關(guān)鍵點(diǎn)及其主方向

3.特征點(diǎn)描述子

在確定每一個(gè)關(guān)鍵點(diǎn)的位置、尺度及方向后,需為每個(gè)關(guān)鍵點(diǎn)建立一個(gè)描述子,用一組向量將這個(gè)關(guān)鍵點(diǎn)描述出來,用于圖像匹配。因此,該描述子描述關(guān)鍵點(diǎn)及其鄰域的結(jié)構(gòu)特性時(shí),應(yīng)該具有較高的獨(dú)特性,以便于提高特征點(diǎn)匹配的準(zhǔn)確率。

SIFT描述子對(duì)關(guān)鍵點(diǎn)周圍圖像區(qū)域分塊,計(jì)算塊內(nèi)梯度直方圖,將每塊的梯度直方圖組成一個(gè)向量,用于表示關(guān)鍵點(diǎn)周圍區(qū)域的結(jié)構(gòu)特征。SIFT在關(guān)鍵點(diǎn)尺度空間4×4的窗口中計(jì)算8個(gè)方向的梯度信息,共計(jì)128維向量表示。計(jì)算過程如下:

(1) 將坐標(biāo)軸旋轉(zhuǎn)為關(guān)鍵點(diǎn)的方向,使得描述子具有旋轉(zhuǎn)不變性。

(2)確定計(jì)算描述子所需的圖像區(qū)域。關(guān)鍵點(diǎn)所在的尺度空間決定了計(jì)算關(guān)鍵點(diǎn)描述子所需的圖像區(qū)域。將關(guān)鍵點(diǎn)鄰域劃分為4×4個(gè)子區(qū)域。

(3)將關(guān)鍵點(diǎn)鄰域內(nèi)的像素分配到對(duì)應(yīng)子區(qū)域內(nèi),統(tǒng)計(jì)每個(gè)子區(qū)域的梯度值及方向并分配到8個(gè)方向上,生成一個(gè)128維的特征向量。圖8-30是統(tǒng)計(jì)每個(gè)子區(qū)域梯度值及方向的示意圖。圖8-30統(tǒng)計(jì)每個(gè)子區(qū)域的梯度

(4)歸一化特征向量,去除光照變化的影響。

特征向量H=(h1,h2,…,h128)形成后,為了去除光照變化的影響,需進(jìn)行歸一化處理,計(jì)算公式如下:(8-79)

4.特征點(diǎn)匹配

當(dāng)生成來自同一場(chǎng)景不同視角的兩幅圖像的SIFT描述子后,將對(duì)兩幅圖像中各個(gè)尺度的描述子進(jìn)行匹配。SIFT采用歐氏距離度量?jī)煞鶊D像中關(guān)鍵點(diǎn)特征向量的距離。采用如下匹配準(zhǔn)則:取圖像1中的某個(gè)關(guān)鍵點(diǎn),并找出其與圖像2中歐氏距離最近的前兩個(gè)關(guān)鍵點(diǎn),在這兩個(gè)關(guān)鍵點(diǎn)中,如果最近的距離除以次近的距離小于某個(gè)比較閾值,則接受這一對(duì)匹配點(diǎn)。顯然,若降低比較閾值,SIFT匹配點(diǎn)數(shù)目會(huì)減少,但更加穩(wěn)定。圖8-31是一個(gè)建筑物在不同視角下兩幅圖像的匹配結(jié)果。圖8-31同一場(chǎng)景不同視角圖像的SIFT特征匹配結(jié)果

OpenCV提供了SIFT算法,相關(guān)的類SiftFeatureDetector和SiftDescriptorExtractor。

利用SIFT算法進(jìn)行圖像匹配的完整源代碼請(qǐng)讀者登錄出版社網(wǎng)站下載,文件路徑:

code\src\chapter08\code0805siftImgMat.cpp。

8.6.2SURF不變特征提取算法

SURF(SpeededUpRobustFeatures)是由Bay等人于2006年提出的特征檢測(cè)算法,被稱為SIFT加速算法。SURF的主要優(yōu)勢(shì)在于圖像的求導(dǎo)用積分圖近似,從而保證了算法的實(shí)時(shí)性。下面介紹SURF的主要步驟。圖8-32利用積分圖快速計(jì)算

1.建立積分圖像

積分圖像由Viola和Jones于2001年在人臉檢測(cè)中引入計(jì)算機(jī)視覺領(lǐng)域,它是指一幅圖像中任一像素點(diǎn)到原點(diǎn)所構(gòu)成的矩形區(qū)域的灰值之和。當(dāng)一幅圖像的積分圖像建立后,要計(jì)算圖像

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論