• 沒有找到結果。

第一章 緒論

1.3 論文架構

本篇論文剩餘章節的安排如下:論文使用到的一些相關知識與理論會在第二章作簡 要的描述,針對數位相片來辨識人臉的系統會在第三章提出並且作詳細的說明,實驗結 果及分析會詳列在第四章,最後第五章會介紹結論與未來發展。

Chapter 2     

第二章

相關知識及理論

本章將會介紹本篇論文所使用到的膚色偵測、直方圖等化(histogram equalization)、

賈伯濾波器、區域保留投影及類神經網路,並做簡單扼要的介紹。為了能實現一個穩健 的人臉辨識系統,本論文先使用膚色偵測將相片中不可能為人臉的部份剔除,再使用直 方圖等化來增強影像的對比程度,然後利用賈伯濾波器取得人臉的整體特徵,並利用區 域保留投影將人臉特徵降至很低的維度,再訓練類神經網路來判別是否為人臉,根據人 臉偵測的結果用人工做分類建立資料庫,透過對資料庫中每個人臉都訓練一個類神經網 路來辨識人臉。

在本章中,對於膚色偵測的相關理論會在2.1 節中做介紹;在 2.2 節介紹形態學運 算以及其中的侵蝕(erosion)與膨脹(dilation);在 2.3 節會介紹直方圖等化;在 2.4 節說明 賈伯濾波器的理論;在2.5 節介紹區域保留投影;最後在 2.6 節介紹類神經網路。

2.1 膚色偵測

想在相片中尋找人臉的時候,必須對整張相片來尋找,而且要做多重解析度搜尋不 同大小的人臉。這樣的運算相當耗時,如果能夠先對相片做膚色偵測,去除掉不含人臉 的部分,就可以加快搜尋人臉的速度。由相關的研究結果[9]可以得知,膚色偵測在人臉

偵測這部份的影像處理應用,扮演了很重要的角色,尤其是在人臉偵測、人臉追蹤和手

2. HSI:人眼知覺(perceptual)的色彩空間,H 為色調(hue),S 為飽和度(saturation),

I 為強度(intensity)。色調是色彩從紅色到綠色的變化,飽和度是指有多少比例的

間[12]。以下是將 RGB 色彩空間轉換成 YCbCr 色彩空間的公式:

0.257 0.504 0.098 16

0.148 0.291 0.439 128 . 0.439 0.368 0.071 128

接下來要介紹的是本論文使用的橢圓邊界模型(elliptical boundary model),由 Lee 等 人[18]所提出。使用了很多種的色彩空間來做實驗及比較:包含 RGB 色彩空間、修改自 RGB 色彩空間的 CIE-l*u*v*、CIE-l*a*b 和 CIE-xyz;YCbCr 及修改自 YCbCr 色彩空間 的YIQ 等等。

(a) (b)

這裡的N 是訓練樣本的總數,fici的色訊樣本總數,μ 是訓練資料集合裡色訊向量的 平均值。當Ф(c) < θ,輸入色訊向量 c 的像素就會被判斷為膚色,這裡的 θ 是由經驗法 則所決定的閥值,當 θ 越大時,偵測正確率會增加,但是錯誤率也會隨之增加。圖 2.2 為在R-G 色訊空間及 CIE-u*v*色訊空間下的膚色分佈圖,出自[17]。

(a) (b) 圖 2.2 使用橢圓邊界模型在 95%偵測正確率的色彩空間邊界圖,(a)R-G 色訊空間,

(b)CIE-u*v*色訊空間。[17]

2.2 形態學運算

形態學之重點是在於研究物體的形狀或結構,也可說是在探討物體內部之間的相互 關係。在數位影像處理之應用領域中又稱其為數位形態學(digital morphology),視為分 析影像幾何結構之方法,例如:邊界、輪廓與凸形封包等[19]。

2.2.1 基本數學定義

假設集合B 與S分別含元素b=( , )b b1 2s=( , )s s1 2 ,其中b 與i s ,i i=1, 2分別代表整 數的座標軸位置。

定義B 為水平移動(translation),x=( , )x x1 2 符號可表示成( ( )B )表示為: x

( )B x={ |a a b x= + ,對於b B∈ }. (2.7) 定義S 之反射(reflection)或稱映像(符號為S

)為:

{ | , }

S = x x= −s s S

對於 . (2.8) 定義集合B 之補集(complement)(符號為B )為: c

{ | }

Bc = x x B∉ . (2.9) 最後定義集合B 與S之差(difference)為:

{ | , }

B S− = x x B x S∈ ∉ . (2.10)

2.2.2 侵蝕

這種方法通常用於物體的邊界上,目的是將物體往內收縮若干像素,使其周圍有種 被慢慢吞蝕掉的現象,所以其名為侵蝕[19],數學表示為:

E B= S ={ | ( )x S xB}. (2.11) 意即被S 侵蝕之 B 是 S 平行移動x之後包含於B 中所有 x 的集合於圖 2.3 可見。

(a) (b) (c) 圖2.3 侵蝕之示意圖,(a)集合 B,(b)結構元素 S,(c) B 被 S 侵蝕。

2.2.3 膨脹

由名字可知其意為與侵蝕動作相反之動作[19],目的在於將物體的邊界往外膨脹若 干像素之方法,數學可表示為:

{ | ( )x }

distribution function)。由於機率密度函數永遠是正的,而且函數的積分就是函數的面積,

2.4 賈伯濾波器

1964 年 Gabor[20]提出了一維的賈伯小波,1985 年 Daugman[21]提出了二維的賈伯 小波。賈伯小波的特性是能夠同時在時域和頻域中兼顧足夠的分辨率來做訊號分析,因

2.4.2 二維賈伯濾波器

2.4.3 二維影像的賈伯小波表示法

使用賈伯小波來表示一張二維的影像,就是和賈伯濾波器做摺積(convolution)後的 結果:

, ( ) , ( )

u v s d

G zG = ∗I Ψ zG

, (2.23)

這裡的I 是輸入影像,Ψs d, ( )Gz 是(2.22)式的賈伯濾波器,圖 2.6 為一張人臉影像的賈伯小 波表示法。

2.5 區域保留投影

在這節將介紹區域保留投影的理論及演算法,是流形學習(manifold learning)中的一 種方法。首先在2.5.1 節對流形學習做簡單的介紹,然後在 2.5.2 節詳細說明區域保留投 影的演算過程。

2.5.1 流形學習

流形學習是一種新的非監督式學習(unsupervised learning)方法,可以有效的將高維 度非線性的資料做降維,因此近年來逐漸受到重視,目前已經有很多有效的流形學習方 法,如Roweis 等人[25]所提出的局部線性嵌入(locally linear embedding, LLE),主要是利 用在嵌入空間中,每個採樣點可以表示成它的近鄰點的線性組合,因而能在低維空間中 保持每個鄰域中的權值不變,重建原數據點使得重建誤差最小;Tenenbaum 等人[26]所 提 出 的 等 距 映 射(isometric feature mapping, ISOMAP) 是 建 立 在 多 維 尺 度 變 換 (multidimensional scaling, MDS)的基礎上,力求保持資料點的內在幾何性質,即保持兩 點間的測地距離。

(a)

(b)

圖2.6 一張人臉影像的賈伯小波表示法,(a)取大小的表示法,(b)取實部的表示法。

上述兩種是目前常用的非線性流形學習方法,優點在於可以保存資料分布中局部的 非線性特性;而傳統線性的方法,如主成份分析(principal components analysis, PCA)和線 性識別分析(linear discriminant analysis, LDA)則是維持全局的特性,在現實中很多分類的 問題都是和局部的非線性特性比較有關,因此LLE 和 ISOMAP 應用在這些問題上會有 較好的效果。而其缺點則是運算時間較長、主要著重於訓練資料的表示而不是分類、當 有新的資料時就需要重新學習來降維等。

因此本論文使用He 等人[28]所提出的區域保留投影,這個方法是基於 Belkin 等人

[27]所提出的拉普拉斯特徵映射(Laplacian eigenmap)。拉普拉斯特徵映射也是非線性的

從拉普拉斯特徵映射法中根據一組輸入資料X 所建立的權重圖(weighted graph)G 可 以判斷任兩個資料點中是否有邊相連,假設Y =y y1, ,...,2 ym也跟X 有相同的權重圖 G,

最後轉換拉普拉斯特徵映射法中的拉普拉算式LYDYa XLX aT T =λa XDX aT T ,也 就是XLX aT =λXDX aT ,可以看出這裡的 XLXTXDXT都是對稱且正半定義(positive semi-definite)的,根據以上的推導過程就可以將原本拉普拉斯演算法用線性的方式做逼 近。接著將解A 的演算法步驟做說明:

1. 建構相鄰無向圖(adjacency undirected graph)

假設G是一個有m個點的圖,用來判斷任兩個節點i與j之間是否有邊相連,即xi

和xj是否接近,有以下兩種方式可依照需求選擇:

(1) ε-相近(ε-neighborhoods)

xixj 2 < ,即兩點間的歐基里德距離(Euclidean distance)小於某個常ε 數ε,則兩節點i與j之間有邊相連。

(2) k-相近(k-nearest neighbors)

若兩節點i與j中,有一節點在另一節點於整組資料中最相近的k 個點中,

的第i行元素為xi。假設行向量a a0, ,...,1 al1為(2.24)式的解,根據它們的特徵值做 排序,λ0 <λ1< <... λl1。因此輸入資料xi就被降維成所想要維度的輸出資料yi, 即xiyi =A xT i, A a a= 0, ,...,1 al1,這裡的yi是一個有l維度的向量,A是一個n×l 的矩陣。

2.6 類神經網路

在本論文的演算法中,將會使用到倒傳遞類神經網路架構,所以在 2.4.1 節中,先 介紹何謂類神經網路,並在2.4.2 節說明倒傳遞類神經網路的架構與方法。

2.6.1 類神經網路簡介

類神經網路的理論最早是在1958 年時 Rosenblatt[29]仿造生物的神經系統,提出了 感知器(perceptron)的神經元模型開始。後來在 1982 年由 Hopfield[30]提出了神經網路,

才使得類神經網路逐漸受到大家的重視。類神經網路的架構是由很多非線性的運算單 元,也就是神經元(neuron)和位於這些運算元間的眾多連結所組成,其建構的目標在於 映射輸入與輸出之間的數學。類神經網路具有高度平行處理、學習、記憶和容錯能力等 優點,所以被廣泛的應用在各個領域。

而類神經網路是以電腦的軟硬體來模擬生物神經網路的資訊處理系統,從人類專家 解決問題的實際案例中學習,利用非線性函數的轉換,能有效地對大量資料進行分析,

而且具備學習能力,可利用來做各種非結構性決策的制定。另外,類神經網路之應用不 需要前提假設,只要有充足的歷史資料,即可進行分析,例如有完整之交易資訊的股票 市場,或精確且眾多的氣象資料,皆十分適合運用網路模式進行分析,預測的工作。

類神經網路有大量相互連結的處理單元,通常是以平行的方式操作且分散於整個網 路結構之中,而整個類神經網路的聚集形式就如同人類的大腦一般,可透過樣本或資料 的訓練來展現出學習、回想、歸納推演的能力。類神經網路在處理圖形辨識(pattern

recognition)、分類(classification)、函數近似(function approximation)、最佳化(optimization)

該層與外界資訊隔離,網路只透過輸入層與輸出層作為對外的介面,有人稱倒傳遞神經 網路為三層結構的神經網路,包含輸入層,隱藏層及輸出層,但實際上輸入層如同單層 感知器的輸入層,並不對輸入資訊作特別處理,只是當外界輸入訊息的傳遞界面,將輸 入項直接往後傳遞,因此實際有作用的神經元只有隱藏層及輸出層兩層。一般倒傳遞類 神經網路的架構,輸入層與輸出層是用來表現輸入項與輸出項,兩者神經元數目依問題 的型式而定;隱藏層的層數可以依問題複雜度由一層增加到數層。倒傳遞神經網路輸入 和輸出的關係可以看作是一種非線性的映射關係,其廣義化特性就可以看作是一種非線 性內插,圖2.8 表示了一個倒傳遞類神經網路的架構,其中參數定義如下:

1. Hl:在第l 層中的神經元數目,當 l=0 時,代表的是輸入層;當 l = 1,2,…,L-1 時,

代表的是隱藏層;當l = L 時,代表的是輸出層。

2. x( )pl ( )k :在第l 層中第 p 個神經元的輸出,其中 l = 0,1,…,L,p = 0,1,…,Hl,參數 k 代表第 k 個輸入向量。

3. z( 1)ql+ ( )k :在第l+1 層中第 q 個神經元的輸入,其中 l = 0,1,…,L-1。

4. w( 1)pql+ :在第l 層中第 p 個神經元到第 l+1 層中第 q 個神經元的權重值,其中 l = 0,1,…,L,q = 0,1,…,Hl

5. w0( 1)lq+ :在第l+1 層中第 q 個神經元的臨界值(threshold)。

6. d k 對第 k 個輸入向量而言,在輸出層第 n 個神經元的目標值,其中 q = n( ) 0,1,…,HL

圖2.7 倒傳遞類神經網路的架構。

相關文件