• 沒有找到結果。

整合卷積計算與極限學習機於多角度人臉辨識之研究

N/A
N/A
Protected

Academic year: 2021

Share "整合卷積計算與極限學習機於多角度人臉辨識之研究"

Copied!
70
0
0

加載中.... (立即查看全文)

全文

(1)

N a tio n a l U niversity of Kao hsi un g

國立高雄大學電機工程學系

碩士論文

整合卷積計算與極限學習機於

多角度人臉辨識之研究

Multi-View Face Recognition by

Convolutionary Extreme Learning Machines

研究生:張簡嘉慶 撰

指導教授:吳志宏 博士

(2)
(3)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

整合卷積計算與極限學習機於

多角度人臉辨識之研究

指導教授: 吳志宏 博士 學生:張簡嘉慶 國立高雄大學電機工程學系

摘要

類神經網路 (ANN) 是應用在人臉影像辨識的辨識核心的其中一種方法。然 而,難以決定網路架構和權重學習等使得 ANN 難以實際應用。極限學習機 (ELM) 是 ANN 的改良的版本,它以有效的方式使用更為簡單的網路架構和訓練流程於 學習方法上。本研究整合 ELM 幾項有效的改進方法於人臉影像辨識。首先,卷積 計算使用於擷取人臉影像的特徵。其次,池化計算用於減少高維度的人臉影像特 徵向量。透過卷積和池化計算,可以用更少的訓練時間得到人臉影像辨識特徵和 模型。此外,大多數人臉辨識系統僅偵測正面人臉影像作為辨識目標。在實際應 用中,相機的拍攝角度不正確可能導致某些影像特徵的遺失或破壞,因而影響辨 識的精確度。在本研究中,擷取了來自不同拍攝角度的多視角人臉影像,用於訓 練多視角人臉辨識的模型。我們測試和比較各種遮罩和池化的方法。並且比較和 討論了使用單一角度和多視角方法的人臉辨識的訓練成效。實驗結果顯示,我們 的方法改善了人臉辨識的 ELM 的訓練成效,並且有還不錯的辨識精確度。 關鍵字:人臉辨識、極限學習機、卷積、池化、影像特徵。

(4)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

Multi-View Face Recognition by

Convolutionary Extreme Learning Machines

Advisor: Dr. WU, CHIH-HUNG Student: JANG JIAN, JIA-CHING

Department of Electrical Engineering, National University of Kaohsiung

ABSTRACT

Artificial Neural Network (ANN) is one of the methods for implementing the core learning engine for face image recognition. However, the difficulties in determining effec-tive network architectures and learning weights make ANN hard to be realized for practical applications. Extreme Learning Machine(ELM) is an improved version of ANN, that em-ploys simpler network architecture and training process for implementing learning systems in an efficient way. This study integrates ELM with several enhancements for effective face image recognition. First, convolution is used to extract the features of face images. Second, the technique of pooling is used to reduce the very high dimension of feature vec-tors of face images. With convolution and pooling, features and models for face image recognition can be obtained with fewer training time. Furthermore, most face recognition systems only detect the front face image as the target for recognition. In practical applica-tions, the incorrect capturing angle of camera may result in the lost or corruption of some image features, and hence, affect the recognition accuracy. In this study, multi-view face images from different capturing angles are extracted for training multi-view face recog-nition models. A variety of kernels and pooling methods are tested and compared. The performance of face recognition using single-view and multi-view methods is also com-pared and discussed. The experimental results show that our method improves the training performance of ELM for face recognition with satisfactory recognition accuracy.

Keywords: Face Recognition, Extreme Learning Machine, Convolution, Pooling, Image Feature.

(5)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

致謝

首先,感謝吳志宏教授於在我讀研究所期間的指導,並且在這段時間中,第 一次搭飛機出國體驗參加研討會,發現到用英文報告給來自各國的人聽是一件相 當不簡單的事情,並且也與當地學生相互交流學術和各自的文化。在比賽方面, 也體會到有別於以往單打獨鬥的情況,學習如何別人合作一起寫程式和開發軟體 是一件相當重要的一件事情;在實驗室產學合作方面,也非常感謝老師給我機會 到業界去實習的機會,讓我有機會看到業界如何運作和體驗有別於在實驗室的情 況,這些豐富的經驗深深影響的我的碩士生涯。也感謝口試委員歐陽振森教授、 賴智錦教授、潘欣泰教授給予寶貴的意見,讓我的碩論內容得以更加完整。在求 學過程中,也會有低潮和犯錯許多錯的時候,在這過程中也感謝老師一再的開導 和耐心的指導,給了我許多次的機會,讓我把事情做好。在這過程中也非常感謝 小駱學長和瓊輝學長,在二位學長工作和論文以外,也需要關心我們的所有情 況,不論是在研究上或生活上所碰到的問題,都能以多年的經驗來教導我們,並 且適時的提供給我們寶貴的意見和建議。接著感謝我的同學柏威,在研究上或不 清楚的問題時有一同討論和研究的機會,感謝宗彬幫忙處理實驗室的事情,讓實 驗室維持正常的運作。也感謝所有實驗室的所有夥伴,不厭其煩的一同協助我的 人臉辨識相關測試和實驗。最後,我要感謝一路支持、關心和包容我的父母,在 求學的過程中給予我經濟和精神上的支持,讓我無後顧之憂順利取得碩士學位。 張簡嘉慶謹誌於國立高雄大學電機工程學系 中華民國一零六年七月

(6)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

目錄

中文摘要 . . . i 英文摘要 . . . ii 致謝 . . . iii 目錄 . . . iv 圖目錄 . . . vi 表目錄 . . . viii 1 緒論 . . . 1 1.1 研究背景 . . . 1 1.2 研究動機與目的 . . . 2 1.2.1 研究動機 . . . 2 1.2.2 研究目的 . . . 3 1.3 研究方法 . . . 4 1.4 研究流程與論文架構 . . . 4 2 文獻探討 . . . 7 2.1 局部三元特徵 . . . 7 2.2 Sobel 邊緣特徵 . . . 9 2.3 極限學習機 . . . 10 2.4 卷積和池化計算 . . . 15 2.4.1 資料維度降低方法 . . . 15 3 問題定義與研究方法 . . . 21 3.1 人臉特徵擷取 . . . 21 3.2 特徵向量維度縮減 . . . 21 3.3 人臉偵測架構設計 . . . 22 3.4 ELM 人臉辨識架構設計 . . . 24 3.5 多角度辨識架構 . . . 25 3.6 改良極限學習機 . . . 25 3.6.1 卷積遮罩定義 . . . 25

(7)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

3.7 訓練與辨識流程 . . . 26 3.7.1 訓練流程 . . . 28 3.7.2 辨識流程 . . . 29 4 實驗與結果分析 . . . 33 4.1 實驗環境與硬體架構 . . . 33 4.2 訓練樣本個數 . . . 34 4.3 實驗 A - SVM 參數實驗與分析 . . . 35 4.4 實驗 B - ELM 參數實驗與分析 . . . 36 4.5 實驗 C - 研究方法參數實驗與分析 . . . 36 4.6 實驗 D - 人臉特徵偵測模型測試和比較 . . . 41 4.7 實驗 E - 不同角度人臉特徵分別測試 . . . 44 4.8 實驗 F - 結合不同角度人臉特徵測試 . . . 48 4.9 實驗 G - 標準資料庫測試 . . . 48 5 結論與未來展望 . . . 51 5.1 結論 . . . 51 5.2 未來展望 . . . 51 參考文獻 . . . 53

(8)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖目錄

1.1 辨識流程圖 . . . 2 1.2 研究系統架構圖 . . . 5 2.1 LTP 計算流程 . . . 8 2.2 Sobel 水平和垂直遮罩 . . . 9 2.3 Sobel 計算流程 . . . 10 2.4 ELM 架構圖 . . . 12 2.5 3×3 遮罩卷積計算 . . . 16 2.6 Max pooling 示意圖 . . . 16 2.7 Min pooling 示意圖 . . . 17 2.8 Mean pooling 示意圖 . . . 17 2.9 Divergence pooling 示意圖 . . . 18 2.10 滑動式視窗與影像遮罩示意圖 . . . 19 2.11 filtering(convolution) 示意圖 . . . 19 2.12 2×2 區間的全連接層示意圖 . . . 20 3.1 人臉特徵擷取流程圖 . . . 21 3.2 輸入層全連接示意圖 . . . 22 3.3 特徵向量維度縮減流程圖 . . . 22 3.4 人臉偵測流程圖 (正面人臉) . . . 23 3.5 人臉特徵偵測 - 左側人臉 . . . 23 3.6 人臉特徵偵測 - 正面人臉 . . . 23 3.7 人臉特徵偵測 - 右側人臉 . . . 24 3.8 ELM 人臉辨識處理流程 . . . 24 3.9 結合不同角度人臉特徵身分辨識流程圖 . . . 26 3.10 3× 3 大小下四種不同偵測方向遮罩 . . . 26 3.11 5× 5 大小下四種不同偵測方向遮罩 . . . 27 3.12 7× 7 大小下四種不同偵測方向遮罩 . . . 27

(9)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

3.13 改良極限學習機運算流程 . . . 28 3.14 特徵偵測模型訓練流程圖 . . . 29 3.15 身分模型訓練流程圖 . . . 30 3.16 單一特徵身分辨識流程圖 . . . 31 3.17 結合不同角度人臉特徵身分辨識流程圖 . . . 32 4.1 不同架設方向下的 3 支攝影機 . . . 33 4.2 人臉資料庫樣本影像 - 左側人臉 . . . 34 4.3 人臉資料庫樣本影像 - 正面人臉 . . . 34 4.4 人臉資料庫樣本影像 - 右側人臉 . . . 35

4.5 Chicago Face Database 資料庫人臉影像 . . . 49

(10)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

表目錄

4.1 實驗 A - SVM 參數實驗結果 (測試辨識率) . . . 35 4.2 實驗 A - SVM 參數實驗結果 (訓練時間 (秒)) . . . 35 4.3 實驗 B - ELM 參數實驗結果 (測試辨識率) . . . 37 4.4 實驗 B - ELM 參數實驗結果 (訓練時間) . . . 38 4.5 實驗 C - 單層卷積層實驗參數組合 1-1(Max Pooling;測試辨識率) . . 39 4.6 實驗 C - 單層卷積層實驗參數組合 1-2(Max Pooling;訓練時間 (秒)) . 40 4.7 實驗 C - 單層卷積層實驗參數組合 2-1(Min Pooling;測試辨識率) . . 41 4.8 實驗 C - 單層卷積層實驗參數組合 2-2(Min Pooling;訓練時間 (秒)) . 42 4.9 實驗 C - 單層卷積層實驗參數組合 3-1(Mean Pooling;測試辨識率) . 43 4.10 實驗 C - 單層卷積層實驗參數組合 3-2(Mean Pooling;訓練時間 (秒)) 44 4.11 實驗 C - 單層卷積層實驗參數組合 4-1(Divergence Pooling;測試辨 識率) . . . 45 4.12 實驗 C - 單層卷積層實驗參數組合 4-2(Divergence Pooling;訓練時 間 (秒)) . . . 46 4.13 實驗 C - 卷積層層數實驗參數組合 . . . 46 4.14 實驗 C - Convolution mask 大小實驗參數組合 . . . 47 4.15 實驗 D - 人臉特徵偵測模型實驗 (測試辨識率) . . . 47 4.16 實驗 D - 人臉特徵偵測模型實驗 (訓練時間 (秒)) . . . 47 4.17 實驗 E - 不同角度人臉特徵分別測試實驗 (測試辨識率) . . . 47 4.18 實驗 E - 不同角度人臉特徵分別測試實驗 (訓練時間 (秒)) . . . 47 4.19 實驗 F - 結合全域和局部特徵測試實驗 . . . 48 4.20 實驗 G - 標準資料庫測試實驗 . . . 50

(11)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

第 1 章

緒論

1.1

研究背景

近年來由於科技的發展與進步,其為了達到減少人力資源成本和有效的系統 管理,因此許多的辨識技術應用在日常生活方面發展已相當廣泛,目前常見的應 用場景如:公司上下班打卡、門禁系統、機場快速通關、表情辨識和結合在機器 人上的應用等相關技術應用層面上等 [1]。基於目前多樣的應用場景,在辨識方 式也是相當多樣,在目前比較常使用的方法有影像式、虹膜式和景深式等辨識方 式。其中影像相較於其它方法硬體成本低廉許多。 影像是以二維矩陣方式來作計算,因此在影像人臉辨識問題上,影像特徵資 訊豐富程度是否能夠區分和代表多個辨識特徵之能力。大部分影像式人臉辨識方 法是先透過影像特徵計算 (Feature extraction),例如:紋理 (texture)、邊緣 (edge) 和色彩空間 (color space) 等方法。因此影像人臉辨識需先收集足夠的訓練資料,並 且透過影像特徵計算轉換成特徵向量後,輸入至分類器 (Classifier) 當中訓練得到 一組分類模型,之後再以此分類模型去做辨識計算之動作。常見應用在辨識問題 上的分類器有類神經網路 (Artificial Neural Network;ANN) 和支持向量機 (Support Vector Machine;SVM) 等分類器。以下為此 2 種常見應用於辨識的分類器之介紹:

• 類神經網路:是仿照人類的大腦感知神經的傳遞方式,在類神經網路上的

神經元接收來自其它的神經元之刺激,並且將所有刺激之總和活化函數轉 換的計算方式。典型的網路架構包含了輸入層、隱藏層和輸出層,大部分 的類神經網路包含了活化函數 (Activation function)、偏壓 (Bias)、學習速度 (Learning rate) 與學習規則 (Learning rule) 等調整參數。其最常見的修正方 式為倒傳遞 (Back Propagation;BP) 的修正方式 [2]。其它類神經網路延伸

(12)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

常見的有極限學習機 (Extreme Learning Machine;ELM)[3]、卷積類神經網 路 (Convolutional Neural Network;CNN)[4] 和自組織映射圖 (Self-Organizing Maps;SOM)[5] 等。 • 支持向量機:SVM 是屬於機器學習當中的監督式學習,若為分類之問題時 則分類資料須標記類別標籤。分類資料在二維平面且為線性 (非線性) 分布 時,其希望在此二維平面找出一條分割線將此堆資料分成兩類;若資料為非 線性分布時,其方法透過映射函數 (Kernel function),將資料映射至另一空 間,並且在此空間找出一個分類超平面將此堆資料分成兩類 [6]。支持向量 是位於 (support vector) 分類超平面的左右 2 側,並且該 2 個支持向量的集合 邊界 (margin) 越大越好。 無論是哪種辨識方式,大多數的辨識流程都是先透過感測器取得辨識特徵, 再透過影像特徵與分類計算得到辨識結果。完整的辨識流程圖如圖1.1。 圖 1.1: 辨識流程圖

1.2

研究動機與目的

1.2.1

研究動機

在眾多分類器當中,其中類神經網路在影像辨識這方面表現相當不錯,但在 倒傳遞類神經網路 (BPANN) 當中存在著共同以下問題: • 學習速率調整:此參數會影響在每次權重係數修正量多寡。

(13)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

• 迭代次數與誤差:若設定迭代次數或訓練誤差作為參數設定,則有可能導致 誤差太大或無法收斂的情形發生。 • 訓練時間過長:學習速率調整、迭代次數與誤差和資料集筆數與維度 (輸入 層) 等,可能會導致整體訓練時間過長。 在輸入資料維度方面,由於高維度輸入資料可能會導致訓練 (收斂) 時間拉 長,因而發展出縮減資料維度的演算法,但大部分的縮減資料維度的方法存在著 以下的問題: • 計算複雜度:需先透過訓練資料來得到此堆資料的特徵值、特徵向量和線性 組合等繁複計算,此流程可能會導致整理訓練時間拉長。 • 保留原始資料重要性:由於不同人的人臉影像其重要性的分布區域有所不 同,因此難以使用一樣的分析後的結果來做為降維的動作。 在絕大多數的人臉辨識當中,是以單一正面人臉作為辨識特徵,且並無使用 其它輔助特徵,因此可能會存在著以下的問題: • 特徵資訊不足:由於人臉特徵不只包含正面人臉資訊,因此若只以正面人臉 資訊作為辨識特徵,可能會由於辨識特徵不足因而導致辨識錯誤。 • 忽略重要資訊:正面人臉在訓練前置處理或辨識角度不正確時可能會忽略或 失去掉某一些重要特徵,導致辨識錯誤。

1.2.2

研究目的

我們將以廣義逆矩陣與批次計算求得全域最佳解取代倒傳遞的訓練方式,並 且透過減少計算複雜度將訓練資料維度縮減,保留影像當中的重要資訊。為了解 決人臉影像特徵資訊不足問題,透過增加其它人臉特徵資訊,以降低辨識錯誤 率。

(14)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

1.3

研究方法

在 2004 年新加坡南洋理工大學黃廣斌教授提出了 ELM[3],改善了類神經網 路所發生的共同問題。ELM 是屬於監督式學習方式 (Supervised Learning) 且訓練 方式是屬於批次計算 [3]。相較於傳統倒傳遞類神經網路 (BP) 無須一直調整當中 介於輸入層與隱藏層權重矩陣 (weight) 與偏壓 (bias),只需要計算隱藏層與輸出層 之間的權重矩陣,因此 ELM 所花費的訓練時間相較於 BP 快上許多。 近期由於深度學習盛行,深度學習其基礎架構是以類神經網路做為延伸 [7]。 其中一種延伸架構為了解決輸入資料維度過大問題,而發展出卷積類神經網路。 CNN 其主要架構是以卷積、池化計算和類神經網路所組成。其 CNN 是先透過卷 積層的遮罩 (mask) 作卷積運算將原始輸入影像資料計算特徵影像,其卷積的遮罩 係數類型包含了偵測邊緣特徵、高和低通濾波、模糊等類型 [8]。 透過正面人臉和不同角度下人臉特徵提出不同於以往新的辨識方法。由於正 面人臉含有的側臉資料較少,加上左右不同角度下側面人臉的特徵所包含紋理等 特徵資訊豐富程度並不會與正面人臉相差太多。因此本研究將以權重式計算方法 下,透過全域特徵的正面人臉影像,加上不同角度下左側和右側人臉特徵來作為 人臉辨識的輔助特徵。我們將分析卷積與池化和多角度下的人臉辨識方法下的成 效,其完整的研究系統架構圖如1.2。

1.4

研究流程與論文架構

本論文的研究流程與架構分成五個階段,分別為問題定義、相關文獻探討、 資料維度問題分析、程式撰寫和實驗結果與結論,其研究流程說明如下。 • 研究動機:針對研究背景、動機和問題範圍定義,著手收集相關文獻資料與 文獻當中相關演算法之流程步驟。此部分包含了極限學習機、影像紋理與邊 緣特徵相關文獻介紹與影像辨識之相關應用介紹。

(15)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 1.2: 研究系統架構圖 • 相關文獻蒐集與探討:蒐集與影像式人臉辨識相關之技術文件,包含了影像 特徵演算法、極限學習機、分類器與分群相關技術等,深入了解相關技術之 發展與優缺點。 • 程式撰寫:撰寫影像紋理和邊緣特徵程式,並且透過卷積和池化計算實現在 極限學機全連接層上減少資料維度的方法。 • 實驗結果分析與結論:比較不同分類器,如 SVM、ELM、和本文提出的研 究方法下不同實驗參數下的效能與分析。 本論文架構分為五章節,其簡述如下:第一章『緒論』,說明本研究動機。第 二章『文獻探討』,簡述在影像特徵的局部三元特徵與 Sobel 邊緣特徵、極限學習 機與影像分群等相關背景知識。第三章『問題定義與研究方法』,針對人臉辨識特 徵和輸入維度研究問題進行定義,並分析處理該問題的方法與流程。詳細說明整 體人臉辨識方法設計及流程。第四章『實驗結果與分析』,依據研究方法流程,比 較不同辨識方式、分類器下的效能與辨識率,並針對實驗結果來做分析。第五章 『結論與未來展望』,總結本研究遇到的問題及方法,並且相對提出未來可以研究

(16)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

及更深入的方向與構想。

(17)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

第 2 章

文獻探討

本章簡述研究應用之人臉辨識相關技術,影像紋理和邊緣特徵相關演算法與 應用、極限學習機以及資料維度降低方法的相關文獻探討。

2.1

局部三元特徵

局部三元特徵是一種紋理特徵,也是影像特徵的其中一種方法 [9],常見描 述方法包含了局部二元特徵 (Local Binary Pattern;LBP)[10]。而其中 LTP 是影像 紋理特徵計算當中的其中一種,是 LBP 的其中一種延伸紋理特徵 [11]。LTP 是先 透過遮罩 (mask) 中心點與周邊 8 個像素點計算差值 (如公式 (2.1)),將 8 個差值 與設定之閥值 (threshold) 兩兩比較,比較結果將會對應到 LTP 對應區間 (如公式 (2.2)),再將此值乘上 3 的次方,最後順時針將 8 點加總起來,求得該 k× k 遮罩 的 LTP 值。圖2.1為 3× 3 大小遮罩下之計算流程。在 k × k 遮罩下,其計算代表 符號如下: • ip:遮罩中心鄰近周圍 8 個像素點。 • ic:遮罩中心之像素點。 • t:是 LTP 當中的閥值。 • s(ip− ic, t):遮罩中心與鄰近周圍 8 個像素點分別作相減,每次得到相減之 值後,透過公式 (2.2) 與此值比較得到 1, 0 或-1 其中一種結果 LT P (ic) = 7 ∑ p=0 s(ip− ic, t)× 3p (2.1)

(18)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 2.1: LTP 計算流程 s(Pa, Pc, t) =                  1, if (ip− ic)≥ t, 0, if|ip− ic| < t, −1, if (ip− ic)≤ −t. (2.2) 由於 LTP 可透過 t 來調整其周邊與中心點像素之差異性,因此 LTP 相較於傳 統 LBP 方法來說較不受影像雜訊之干擾。其 LTP 是其中一種紋理特徵,且在資 料維度分布相較於其它特徵較大,是適合使用於人臉辨識 [12] 或影像辨識問題當 中。LTP 此方法困難處在於如何調整 threshold,在文獻 [13] 當中提出透過 weber’s law 與像素之間的特性 (例如:亮度) 來自動調整 LTP 的閥值。基於傳統 LTP 的方 法下延伸其它新的特徵計算方式,例如:透過 LTP 的編碼方式將其轉換成機率 表示式,進而轉換出 4 組 LBP 資料 (Relaxed Local Ternary Pattern;RLTP),來乘 上各自比重得到該區域的 RLTP 值 [14]。其它應用還包含了手寫文字辨識 [15] 等 LTP 相關辨識應用。紋理特徵計算方式不僅考慮中心與周邊 8 個像素點之關聯 性,也有透過邊緣梯度之方式延伸出紋理特徵之方法。因此在文獻 [16] 當中提 到,基於 Kirsch 之 8 種不同方向的梯度運算元 [17] 所延伸出來的局部方向特徵 (Local Directional Patterns;LDP) 應用在人臉偵測上。相較於一般環形的紋理特徵 計算,其它紋理特徵計算方法也包含了中央對稱式 (Center-Symmetric;CS)[18]、 Three-Patch(TP)[19] 計算方式等紋理特徵計算方法。

(19)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

2.2

Sobel 邊緣特徵

Sobel 邊緣特徵是其中一種影像特徵 [20]。其中 Sobel 是常見邊緣偵測方法

當中的其中一種。Sobel 邊緣特徵 [21] 是由 Irwin Sobel 所提出,是基於在 3× 3

遮罩下,計算出該區域之梯度大小 (Gradient)。其該方法流程與應用如以下介紹: Sobel 是透過 2 種不同遮罩,分別計算出水平 (horizontal) 與垂直 (vertical) 梯度方 向 (如公式2.3。將此 2 種不同梯度方向與原始影像作 convolution 計算,再把此 2 種梯度方向計算之結果加總起來 (如圖2.2),作為最後 Sobel 運算之梯度大小結果。 圖2.3為 Sobel 之際流程,其計算代表符號如下: • Gx:偵測水平梯度之遮罩。 • Gy:偵測垂直梯度之遮罩。 • G:透過水平與垂直梯度總和得到之梯度大小。 • GD:透過水平除以垂直梯度得到之梯度方向。 • I:原始影像某一 3 × 3 區域。 G = |Gx∗ I| + |Gy∗ I| (2.3) GD = arctan(Gx∗ I Gy ∗ I ) (2.4) 圖 2.2: Sobel 水平和垂直遮罩

(20)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 2.3: Sobel 計算流程 Sobel 邊緣偵測最常被使用在偵測物體輪廓或結構。在大部分的人臉辨識當 中,人臉偵測 (Face detection) 的前置作業相當重要。由於人臉和鼻子整體結構相 較於其它局部特徵或物件相差甚多,因此可透過結構差異性與 Sobel 之方式將人 臉與眼睛特徵擷取出來 [22]。邊緣特徵其不僅廣泛的使用在人臉偵測和辨識問 題上 [23],其中包含了車道線偵測 [24]、影像融合 (Image fusion)[25] 和影像檢索 (Image retrieval)[26] 等其它還有全然不同應用場景。

2.3

極限學習機

ELM 是屬於單層前饋式類神經網路 (Single-hidden Layer Feedforward Neural networks;SLFNs)。數學表示式可表示為公式 (2.5),在圖2.4為 ELM 架構圖,其 整體計算流程與計算代表符號如下:

• n:輸入層神經元 (neuron) 之個數。 • m:輸出層神經元之個數。

(21)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

• ˜N:隱藏層神經元之個數。 • N:訓練樣本資料筆數。 • xj:訓 練 樣 本, 共 N 筆 不 同 的 訓 練 樣 本, 其 詳 細 表 示 式 可 表 示 成 xj = [xj1, xj2,· · ·, xjn]T• wi:介於輸入層與隱藏層之間的權重矩陣,其大小為 n× ˜N。詳細表示式可 表示成 wi = [wi1, wi2,· · ·, win]T• bi:隱藏層當中的 bias。

• g(x):活化函數,常見的有 Sigmoid、Gaussian 和 Radius Bias Function(RBF)

等。 • βi:介於隱藏層與輸出層之間的權重矩陣,其大小為 ˜N × m。詳細表示式可 表示成 βi = [βi1, βi2,· · ·, βim]T• tj:目標輸出。 • oj:實際輸出。 • H:表示 g(wi· xj + bi)共 N 個線性方乘組之矩陣。 • β:表示 βi共 N 個線性方乘組之矩陣。 • T :表示 ti共 N 個線性方乘組之矩陣。 • H+:表示為 H 的偽逆矩陣。

• U:左正交矩陣 (Orthogonal Matrix),大小為 N × N。

• Σ:稀疏矩陣,其奇異值分布如公式 (2.6),且 σ1 > σ2 >· · · > σx > 0,大小

(22)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

• VT:右正交矩陣,大小為大小為 ˜N × ˜N • U+:表示為 U 的逆矩陣。 • V+:表示為 V 的逆矩陣。 圖 2.4: ELM 架構圖 ˜ Ni=1 βig(wi · xj + bi) = oj, j = 1,· · ·, N. (2.5)                   σ1 · · · 0 0 · · · 0 0 . .. 0 0 . .. 0 0 · · · σx 0 · · · 0 0 · · · 0 0 · · · 0 .. . . .. ... ... . .. ... 0 · · · 0 0 · · · 0                   (2.6) 介於輸入層與隱藏層之間的權重矩陣 wi 和隱藏層當中的 bi 之值,在初始化 時只需要一次任意給予數值,且無須調整此 2 部分,因此 ELM 只需要計算隱藏層 與輸出層之間的權重矩陣 βi

(23)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

ELM 在 N 筆不同的訓練樣本下,每一筆實際輸出 oj 與目標輸出 tj 之累積誤 差近似或等於零 (如公式 (2.7)),亦即若 wi、βi 和 bi 存在,則可公式 (2.8) 成立。 公式 (2.8) 可表示為 N 個方乘組組成之矩陣,因此可化簡為公式 (2.9)。 Nj=1 ||oj− tj|| = 0 (2.7) ˜ Ni=1 βig(wi· xj+ bi) = tj, j = 1,· · ·, N. (2.8) Hβ = T (2.9) 由於 ELM 無須調整 wi 和 bi,因此求出隱藏層與輸出層之間的 β 是屬於最小 二乘解 (Least-Squares Solution;LSS)(如公式 (公式 (2.10)) 一般線性方程 Ax = y 之 問題,並且可透過公式 (2.10) 重新表示成公式 (2.11)。由於公式2.9為一般線性系 統,最後找出之最小二乘解之解 β 累積誤差為最小之唯一解可表示成公式 (2.12)。 min x ||Ax − y|| (2.10) min β ||Hβ − y|| (2.11) β = H+T (2.12) 解最小二乘解 β 之矩陣,需先計算 H 的反矩陣 (Inverse matrix)。由於 H 不一 定有反矩陣 (不一定可逆),因此可透過廣義逆矩陣 (Moore–Penrose pseudoinverse) 此方法。廣義逆矩陣利用其中奇異值分解 (Singular Value Decomposition;SVD),

先分別求得 H 矩陣的 U 、Σ 和 VT(如公式 (2.13)),再透過 SVD 之當中 U 和 V 正

交矩陣之中的特性 UT = U+與 VT = V+,最後得到廣義逆矩陣的公式,如公式

(2.14)。其完整證明流程如下:

STEP-1: 將 SVD 一式等號左右兩邊互換,可得 H+= (U ΣVT)+。

(24)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

STEP-3: 透過 SVD 的 UT = U+與 VT = V+特性,可得 H+ = V Σ+UT H = U ΣVT (2.13) H+= V Σ+UT (2.14) 總 結 以 上 方 法 敘 述,給 予 一 組 訓 練 資 料 集 A = (xi, ti)|xi ∈ Rn, ti ∈ Rm

Activation function 為 g(x),隱藏層神經元個數為 ˜N,其 ELM 的訓練流程如下:

STEP-1: 任意給予 wi 和 bi數值。 STEP-2: 依據訓練資料集 N 筆資料與隱藏層神經元個數 ˜N,計算出 N × ˜N小之 H 矩陣。 STEP-3: 透過廣義逆矩陣求出 H 的偽逆矩陣 H+。 STEP-4: 求得偽逆矩陣 H+,最後透過公式2.12,求得最小二乘解之解 β。 ELM 無論在標準型態影像資料庫 (Benchmark) 和實際影像辨識應用問題上都 表現相當不錯,例如:目標辨識 (Object Recognition)。由於在影像辨識上需耗費 大量來訓練與辨識計算,因此可利用 ELM 方法之特性應用在影像辨識問題上。 在文獻 [27] 當中,將影像透過影像特徵轉換成特徵資料或統計資料 (例如:影像 直方圖統計),再透過 ELM 之特性來訓練與辨識測試。近期透過視覺形式的駕 駛輔助系統、自動駕駛相關與機器人影像辨識應用等,已深入至我們日常生活 的交通工具當中。將其應用在交通工具上,故發展出交通標誌辨識 (Traffic Sign Recognition;TSR) 之辨識應用,在文獻 [28] 與 [29] 當中提到是透過 ELM 應用在 TSR 下辨識效果比一般 SVM 和 BP 效果好。在其它影像辨識應用上包含了人臉辨 識 [30, 31] 和手勢辨識 (Gesture Recognition)[32] 等應用。

(25)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

2.4

卷積和池化計算

2.4.1

資料維度降低方法

常見降低維度的方法有主成分分析 (Principle Component Analysis;PCA)[33] 和線性判別分析 (Linear Discriminant Analysis;LDA)[34] 等降低維度方法,但此 計算方式通常須先以一連串的大量計算得到該資料的主成分或線組合,最後透 過分析結果來降低資料維度。CNN 其卷積和池化運算之下不僅可縮減輸入維度, 並且在計算和效能上相較於 PCA 和 LDA 等方法更為簡單與快速。尤其以大規模 (large-scale) 影像分類和辨識下 (例如:人臉辨識),透過卷積和池化運算下其成效 還不錯 [35, 36],其它使用應用層面包含了人臉辨識 [37]、語音辨識 [38]、語意分 析 [39] 和醫學影像 [40] 分類等應用。以下將介紹卷積和池化計算流程,其卷積計 算代表符號和計算方法如公式 (2.15) 和圖2.5。 • m:遮罩中心點像素的列方向。 • n:遮罩中心點像素的行方向。 • I:原始影像。 • h:卷積遮罩。 Convolution(m, n) =ij I(i, j)∗ h(m − i, n − j) (2.15) 做完卷積計算後,其下一步透過非線性活化函數計算來做計算,最後使 用池化計算將特徵影像維度縮減,其常見的池化計算為取遮罩當中的最大值 (Max)[41]、最小值 (Min)[42]、平均值 (Mean)[43] 和差異法 (Divergence) 等方法, 並將遮罩當中取出一個代表次遮罩區域之數值出來。圖2.6、2.7、2.8和 2.9,分別

(26)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 2.5: 3×3 遮罩卷積計算 圖 2.6: Max pooling 示意圖

為基於 2×2 遮罩大小的 Max、Min、Mean 和 Divergence 的 Pooling。其結合卷積

和池化詳細計算流程如下 [44]:

STEP-1: 輸入一張影像 (灰階、紋理或邊緣特徵影像)。

(27)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 2.7: Min pooling 示意圖 圖 2.8: Mean pooling 示意圖

(28)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 2.9: Divergence pooling 示意圖 的方式 (如圖2.10) 來計算卷積之數值。計算完畢後將會得到 n 種不同 的特徵影像 (feature maps)。圖2.11共有 n 種大小都為 3×3 的遮罩,產 生 n 種不同的 feature map 的示意圖。

STEP-3: 卷 積 計 算 完 畢 後, 將 所 有 的 feature map 透 過 非 線 性 活 化 函 數 來 作 轉 換。其 經 常 應 用 且 計 算 速 度 快 的 活 化 函 數 為 Rectified Linear Unit(ReLU)[45]。

STEP-4: 將所有 feature map 透過 pooling 計算方式,每次遮罩移動與上次位置 是不重疊的,並將遮罩當中取出一個代表次遮罩區域之數值出來。 STEP-5: 從 STEP-2 到 STEP-4 為只有單層計算,若有 n 層則 STEP-2 到 STEP-4

重複計算 n 次,直到計算結束。

基於以上方法流程,其在類神經網路輸入層端每個神經元只會被特徵影像當 中固定大小區間的遮罩下所代表像素點影響,因此大幅減少資料維度的輸入,其

(29)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 2.10: 滑動式視窗與影像遮罩示意圖 圖 2.11: filtering(convolution) 示意圖 圖2.12為隱藏層每一個神經元連結一個 2×2 區間的示意圖。

(30)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 2.12: 2×2 區間的全連接層示意圖

(31)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

第 3 章

問題定義與研究方法

本論文提出基於 ELM 架構之下,透過卷積和池化計算作為降低資料維度的 前置處理方法,並且結合全域和不同角度下的人臉特徵來降低辨識錯誤率。因此 本章節將分析影像資料輸入維度與 ELM 全連接層的關聯性,並且說明研究中的 所使用到的卷積和池化詳細計算方法。最後再說明如何將透過卷積和池化將訓練 影像資料維度降低最後輸入至 ELM 當中計算,並且透過權重式計算方法下,結 合全域與不同角度下的特徵之辨識方法與流程。

3.1

人臉特徵擷取

人臉特徵擷取是整體人臉辨識前置處理最重要的部分,是一個定位人臉在影 像當中位置的方法,其流程是先輸入一張全景影像並且透過當中透過滑動式視窗 [46] 來找出區域影像,並且將區域影像透過影像特徵計算 (例如:Sobel 或 LTP) 到 該區域特徵的特徵向量 (feature vector)。圖3.1人臉特徵擷取流程圖。 圖 3.1: 人臉特徵擷取流程圖

3.2

特徵向量維度縮減

影像式人臉辨識辨識基本上都是以一張影像作為一筆訓練資料,其最基本輸 入至 ELM 方式是以一張影像當中每一個像素點作為一筆資料輸入。由於影像是一

(32)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

個的二維矩陣,因此若是以一張 M × N 大小影像作為 ELM 輸入,其 ELM 輸入 層則為 M× N 個輸入,並且與隱藏層的神經元完全連結,若輸入影像大小隨之越 大則會產生訓練資料維度過大造成矩陣相乘計算所花費時間過久問題。其圖3.2為 輸入層整張影像的每一個像素點連結所有隱藏層神經元的全連接層示意圖。因此 我們將利用其前一節卷積層-活化函數-池化層計算流程做為人臉影像縮減維度的 前置處理方法。其詳細計算流程如圖3.3。 圖 3.2: 輸入層全連接示意圖 圖 3.3: 特徵向量維度縮減流程圖

3.3

人臉偵測架構設計

基於人臉特徵擷取此小節的流程下,我們將以 Sobel 邊緣特徵和 SVM 作為偵 測是否為正面、右側和左側人臉,共 3 種不同的分類模型作為偵測不同方向的人

(33)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

臉偵測 (face detection) 架構設計 (1:是該方向人臉,0:不是該方向人臉或其它), 圖3.4為正面人臉偵測流程圖。圖3.5、3.6和 3.7分別為左側、正面和右側人臉特徵 偵測示意圖。 圖 3.4: 人臉偵測流程圖 (正面人臉) 圖 3.5: 人臉特徵偵測 - 左側人臉 圖 3.6: 人臉特徵偵測 - 正面人臉

(34)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 3.7: 人臉特徵偵測 - 右側人臉

3.4

ELM 人臉辨識架構設計

在此部分我們將透過 ELM 作為辨識核心,並且使用 LTP 作為影像特徵計算 來進行辨識 (訓練) 的前置計算。進行分類辨識計算時需事先準備訓練資料,並且 將此堆訓練資料進行分類訓練得到分類 (辨識) 模型。在辨識階段時,透過事先已 訓練完成的辨識模型來進行辨識,其辨識流程的資料前置計算流程需與訓練流程 相同,並且透過人臉特徵偵測取得人臉資訊後,下一步將針對此張人臉做分類辨 識計算,最後輸出得到辨識結果。圖3.8為整體人臉影像辨識的辨識處理流程。 圖 3.8: ELM 人臉辨識處理流程

(35)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

3.5

多角度辨識架構

透過前一小節所設計的 ELM 人臉辨識架構,在此部分我們將以 ELM 人臉辨 識架構下來設計多角度人臉辨識架構。在辨識模型部分,我們將透過權重式計算 方式結合正面、左側和右側 3 個不同角度的辨識模型,以下為公式 (3.1) 所有符號 的說明和權重式計算的方法,圖3.9為 ELM 結合多角度辨識流程。 • OLef t:左側人臉辨識輸出結果。 • OCenter:正面人臉辨識輸出結果。 • ORight:右側人臉辨識輸出結果。 • WLef t:左側人臉所佔整體輸出比例。 • WCenter:左側人臉所佔整體輸出比例。 • WRight:右側人臉所佔整體輸出比例。

Output = OLef t× WLef t+ OCenter× WCenter+ ORight× WRight (3.1)

3.6

改良極限學習機

本節將利用前一小節所得知的卷積和池化減少維度之特性,來結合 ELM 架 構和定義卷積計算之遮罩係數值。

3.6.1

卷積遮罩定義

在卷積遮罩係數設定部分,由於人臉之五官擁有垂直、水平、右斜和左斜之 邊緣,因此我們將透過偵測水平、垂直、右斜和左斜,共四種不同的邊緣特徵方 法來作為遮罩係數之設定。在圖3.10、3.11和3.12當中,是基於 3× 3 水平和垂直

(36)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 3.9: 結合不同角度人臉特徵身分辨識流程圖 的遮罩 [47] 將分別定義 3× 3、5× 5 和 7× 7,共 3 種不同大小偵測水平、垂直、 右斜和左斜變化的影像遮罩的係數設定方法。 圖 3.10: 3× 3 大小下四種不同偵測方向遮罩 其結合卷積和池化計算減少維度之特性,並且透過人臉五官所擁有的特徵來 定義卷積遮罩係數。其完整的改良極限學習機之運算流程如圖3.13。

3.7

訓練與辨識流程

基於所提出的改良式極限學習機之架構下,我們將透過全域和局部的人臉特 徵分別使用在“訓練流程”與“辨識流程”2 種流程當中,以下分別為 2 種流程之

(37)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 3.11: 5× 5 大小下四種不同偵測方向遮罩 圖 3.12: 7× 7 大小下四種不同偵測方向遮罩

(38)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 3.13: 改良極限學習機運算流程 介紹:

3.7.1

訓練流程

在人臉偵測部分,透過本研究方法將徵偵測模型以 Sobel 邊緣特徵和分 2 類 的方式 (two-class) 來計算,其對應輸出為 1 是此特徵;0 不是此特徵。以下為正 面人臉特徵偵測的訓練流程。其它特徵偵測模型訓練流程如圖3.14。 STEP-1: 隨機取樣從每個人的正面人臉樣本 (positive) 資料。 STEP-2: 隨機取樣不是正面人臉樣本 (negative) 資料。 STEP-3: 將該人的正面和負面樣本資料計算 Sobel 特徵。 STEP-4: 所有 Sobel 特徵的訓練資料正規化至 0 到 1 之間。 STEP-5: 卷積層計算。 STEP-6: 初始化 ELM 輸入層和隱藏層之間權重隨機給予-1 到 1 之間的數值。

STEP-7: 將 Sobel 特徵的正面和負面樣本輸入至 ELM 當中作 2 類計算。

STEP-8: 輸出正臉特徵偵測模型。

在人臉辨識模型訓練流程部分,每一個人的全域和局部特徵的辨識模型,在 本文提出的方法下都是以分成 2 類的計算方法,輸出設定為 1 為是該身分;0 為

(39)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 3.14: 特徵偵測模型訓練流程圖 不是該身分。以下完整為正面人臉身分辨識模型的訓練流程,其人臉辨識模型訓 練流程如圖3.15。 STEP-1: 收集該人的正面人臉正面樣本。 STEP-2: 收集從他人正面樣本隨機抽樣的正面人臉的該人負面樣本。 STEP-3: 將該人的正面和負面樣本資料計算 LTP 特徵。 STEP-4: 所有 LTP 特徵的訓練資料正規化至 0 到 1 之間。 STEP-5: 卷積層計算。 STEP-6: 初始化 ELM 輸入層和隱藏層之間權重隨機給予-1 到 1 之間的數值。 STEP-7: 將已經過卷積層計算的正面和負面樣本輸入至 ELM 當中作 2 類計算。 STEP-8: 輸出人臉辨識模型。

3.7.2

辨識流程

當每個人全域和局部特徵的 2 類的模型訓練完成後,在辨識流程部分,其單 一特徵和全域和局部特徵辨識流程差異在輸入和計算結果之方法。以下是以正面

(40)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 3.15: 身分模型訓練流程圖 人臉單一特徵的辨識流程,其單一特徵之辨識流程如圖3.16。 STEP-1: 透過中間攝影機和正面人臉特徵偵測模型擷取正面人臉影像。 STEP-2: 將正面人臉計算 LTP 特徵。 STEP-3: 將 LTP 特徵向量的訓練資料正規化至 0 到 1 之間。 STEP-4: 將 LTP 特徵向量,輸入至正面的 ELM 人臉辨識模型。 STEP-5: 卷積層計算 (全域和局部特徵)。

STEP-6: ELM 辨識模型計算,得到 ELM 輸出,並且記錄每人的輸出值。

STEP-7: 重複 STEP-4 到 STEP-6 直到所有人的全域辨識模型都已計算過一次。 STEP-8: 比較所有人輸出當中最大的數值,並且將其輸出身分。 基於一般的辨識流程,我們將透過全域和局部特徵的組合成新的辨識流程, 以下為結合全域和局部特徵辨識之步驟,其全域和局部特徵組合之辨識流程如 圖3.17。 STEP-1: 透過左側、中間和右側攝影機和特徵偵測模型分別擷取左側、中間和 右側人臉影像。

(41)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 3.16: 單一特徵身分辨識流程圖 STEP-2: 將全域和局部特徵分別計算 LTP 特徵,得到三組不同 LTP 特徵向量。 STEP-3: 將全域和局部的 LTP 特徵向量的訓練資料正規化至 0 到 1 之間。 STEP-4: 三組不同 LTP 特徵向量,分別輸至對應的 ELM 人臉辨識模型。 STEP-5: 卷積層計算 (全域和局部特徵)。 STEP-6: 三種不同 ELM 辨識模型計算,得到三種不同的輸出,並且將全域和 局部計算輸出之結果以權重計算方式 (如公式 (3.1)),作為最後輸出之

結果並且記錄下來。其 WRight、WCenter 和 WRight總和必須等於 1。

STEP-7: 重複 STEP-4 到 STEP-6 直到所有人的全域和局部辨識模型都已計算過 一次。

(42)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 3.17: 結合不同角度人臉特徵身分辨識流程圖

(43)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

第 4 章

實驗與結果分析

本章將對論文中提出的使用卷積和池化計算作為降低資料維度的方法來改善 資料維度過大問題,搭配 Sobel 邊緣特徵 (偵測模型) 和 LTP 紋理特徵 (辨識模型) 作為影像的前置處理進行效能測試。並且與 SVM[48] 和未使用縮減維度的極限學 習機進行實驗數據的比較與分析。在以下的實驗中,我們先在三種不同的方法並 且以正面人臉辨識方式,透過大量的實驗決定較佳的實驗參數,再以此三組實驗 參數和不同的權重參數下結合不同角度下的人臉辨識實驗分析。

4.1

實驗環境與硬體架構

實驗環境為一台四核心 (執行緒數量為 8) 電腦,CPU 型號為 Intel Core i7-4790, 3.6GHz,記憶體大小為 12GB,作業系統為 64 位元的 Windows 10,撰寫程 式使用為 C++ 和 C# 程式語言,並且透過 EmguCV 函式庫 [49] 做為開發環境。在 影像擷取硬體部分為 3 支不同架設方向的 Logitech C920 攝影機用來擷取人臉影像 與辨識,其 3 支攝影機架設方式如圖4.1。人臉資料庫是透過本研究室之夥伴共同 建立之,辨識人數一共為 30 人,其資料庫包含了左側、正面和右側人臉影像,如 圖4.2、4.3和4.4為共 8 個不同身分的人臉影像。 圖 4.1: 不同架設方向下的 3 支攝影機

(44)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 4.2: 人臉資料庫樣本影像 - 左側人臉 圖 4.3: 人臉資料庫樣本影像 - 正面人臉

4.2

訓練樣本個數

在特徵偵測模型部分,其左側、正面和右側人臉訓練輸入為正面樣本和負面 樣本各為 500 張,三個不同特徵偵測模型測試樣本各為 250 張 (80% 訓練;20% 測試);在辨識模型訓練階段時,其左側、正面和右側人臉是以正面樣本和負面樣 本各 200 張影像作為訓練輸入,三個不同特徵辨識模型測試樣本各為 50 張 (90% 訓練;10% 測試)。

(45)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

圖 4.4: 人臉資料庫樣本影像 - 右側人臉 表 4.1: 實驗 A - SVM 參數實驗結果 (測試辨識率) Kerfunc LTP threshold (t) t=2 t=4 t=6 t=8 t=10 t=12 t=14 t=16 Linear 97.07 97.29 97.43 97.21 96.93 96.43 96.00 96.21 Rbf 94.14 94.21 93.71 93.57 93.57 93.36 94.29 93.21 Hint 96.71 96.93 97.07 97.07 97.00 96.57 96.21 96.07 表 4.2: 實驗 A - SVM 參數實驗結果 (訓練時間 (秒)) Kerfunc LTP threshold (t) t=2 t=4 t=6 t=8 t=10 t=12 t=14 t=16 Linear 2.57 2.50 2.48 2.49 2.52 2.51 2.54 2.55 Rbf 51.99 51.70 51.85 52.23 52.52 52.89 53.31 53.76 Hint 27.70 27.62 27.23 27.10 26.91 26.75 26.60 26.55

4.3

實驗 A - SVM 參數實驗與分析

在 SVM 參數組合實驗當中,我們將以 SVM 的 Kernel function(Kerfunc) 和 LTP 的 threshold t 進 行 參 數 組 合 測 試, 其 中 Kernel function 我 們 將 以 Linear、 Radius bias function(Rbf) 和 Histogram Intersection(Hint) 此 3 種作為參數組合,來找 出 SVM 的最佳實驗參數組合,其實驗訓練成效為表4.1和 4.2。 在 SVM 參數組合

(46)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

當中,當 t 等於 6;Kernel function 為 Linear 時,其訓練成效為 SVM 所有實驗參 數組合當中最佳 (測試正確率:97.43 %),因此作為 SVM 最佳實驗參數。

4.4

實驗 B - ELM 參數實驗與分析

在 ELM 參 數 組 合 實 驗 當 中, 我 們 將 針 對 LTP 的 threshold t、ELM 當 中 的 Activation function(Actfunc) 和 隱 藏 層 神 經 元 個 數 進 行 參 數 組 合 測 試,其 中 Activation function 我們將以 Bent identity(Bent)[50]、Linear[51] 和 Sigmoid[52] 此 3 種作為參數組合,來找出 ELM 的最佳實驗參數組合。其三種不同的 activation function 公式依序為公式 (4.1)、(4.2) 和 (4.3)。實驗訓練成效如表4.3和4.4。 f (x) = x2+ 1− 1 2 + x (4.1) f (x) = x (4.2) f (x) = 1 1 + e−x (4.3)

在 ELM 參數組合當中,當 t 等於 4;Activation function 為 Bent identity;隱藏層 神經元個數為 90 個,其訓練成效為 ELM 所有實驗參數組合當中最佳 (測試正確 率:95.21 %),因此作為 ELM 最佳實驗參數。

4.5

實驗 C - 研究方法參數實驗與分析

實 驗 C 將 針 對 本 論 文 提 出 的 透 過 卷 積 和 池 化 計 算 減 少 ELM 輸 入 層 資 料 維 度 的 方 法。其 在 卷 積 和 池 化 計 算 當 中,ReLU 為 訓 練 成 效 較 佳 的 Activation

function[53],因此我們將以 ReLU 作為卷基層的 Activation function 並且基於 2×2

大小下的 Pooling mask。我們將先以 3× 3 的 Convolution mask 大小作為實驗的

固定之參數,並以單層卷基層來決定 LTP 的 threshold t、Pooling 方法、ELM 的 Activation function 和隱藏層神經元個數進行參數組合實驗,且再來重新決定卷基 層層數,最後再基於以上所有實驗參數結果再重新決定 convolution mask 大小。

(47)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

表 4.3: 實驗 B - ELM 參數實驗結果 (測試辨識率) 神經元個數 Actfunc LTP threshold (t) t=2 t=4 t=6 t=8 t=10 t=12 t=14 t=16 30 Bent 85.36 85.29 81.79 82.93 78.00 81.00 81.57 77.07 Linear 88.29 82.93 82.43 84.79 88.14 85.07 77.79 81.93 Sigmoid 61.71 49.07 52.79 50.57 53.14 48.71 42.36 42.36 40 Bent 86.5 86.29 85.93 84.86 85.64 86.29 81.57 85.07 Linear 90.07 90.21 87.57 86.57 85.86 86.36 86.79 82.93 Sigmoid 65.79 54.86 55.00 53.07 49.00 52.29 52.50 52.57 50 Bent 92.93 89.86 88.86 90.57 88.79 85.14 83.79 80.79 Linear 92.43 91.50 91.07 88.00 89.57 89.21 87.29 85.71 Sigmoid 69.21 63.43 64.29 56.93 59.07 66.79 58.43 55.79 60 Bent 90.79 93.64 90.14 92.43 91.79 89.43 88.29 82.79 Linear 88.79 92.36 89.79 91.00 89.86 87.71 90.29 87.36 Sigmoid 64.07 70.29 65.93 68.64 66.00 64.57 57.00 58.79 70 Bent 94.14 91.07 90.86 92.64 89.93 93.00 85.93 86.14 Linear 93.57 92.86 93.21 92.64 92.79 86.43 87.79 85.36 Sigmoid 64.21 68.00 60.21 75.86 59.86 60.29 59.07 52.79 80 Bent 93.64 91.14 91.71 90.43 90.14 87.14 87.79 87.64 Linear 91.93 90.50 95.14 88.79 89.29 88.00 90.71 88.29 Sigmoid 76.57 71.07 71.71 70.50 68.86 61.57 66.14 66.50 90 Bent 93.00 95.21 91.21 90.86 88.07 88.79 87.43 87.07 Linear 93.43 89.86 91.57 90.93 89.21 89.14 86.21 87.14 Sigmoid 73.86 73.64 69.21 69.36 67.57 64.07 63.93 66.5 100 Bent 89.14 93.50 89.00 86.29 89.07 86.29 85.71 86.71 Linear 90.21 90.64 90.64 89.36 89.93 87.29 88.93 81.14 Sigmoid 73.50 77.50 69.93 65.57 64.64 57.79 62.43 69.64 先 以 3× 3 的 Convolution mask 大小作為實驗的固定之參數,以單層卷基

層來決定 LTP 的 threshold t、Pooling 方法、ELM 的 Activation function(與實驗 B 相同) 和隱藏層神經元個哪種參數組合訓練成效較佳,實驗結果如表4.5、4.6、 4.7、4.8、4.9、4.10、4.11和4.12。其實驗結果可以得到當 t 等於 6;Pooling 方法 為 Max;Activation function 為 Linear;隱藏層神經元個數為 100 個時,其訓練成

(48)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

表 4.4: 實驗 B - ELM 參數實驗結果 (訓練時間) 神經元個數 Actfunc LTP threshold (t) t=2 t=4 t=6 t=8 t=10 t=12 t=14 t=16 30 Bent 0.6 0.66 0.62 0.58 0.57 0.58 0.57 0.57 Linear 0.59 0.61 0.59 0.58 0.58 0.57 0.58 0.57 Sigmoid 0.59 0.59 0.59 0.58 0.58 0.58 0.57 0.57 40 Bent 0.67 0.68 0.68 0.67 0.67 0.66 0.66 0.65 Linear 0.68 0.68 0.68 0.67 0.66 0.66 0.66 0.65 Sigmoid 0.68 0.68 0.67 0.67 0.67 0.66 0.65 0.66 50 Bent 0.77 0.77 0.77 0.76 0.76 0.76 0.76 0.81 Linear 0.81 0.79 0.79 0.76 0.76 0.75 0.75 0.75 Sigmoid 0.98 1.17 0.80 1.95 1.18 0.75 0.75 0.75 60 Bent 0.86 0.86 0.86 0.85 0.85 0.84 0.84 0.84 Linear 0.86 0.86 0.86 1.51 0.92 0.85 0.84 0.83 Sigmoid 0.86 0.86 0.86 0.85 0.85 0.84 0.84 0.83 70 Bent 0.94 0.95 0.94 0.93 0.93 0.93 0.92 0.92 Linear 0.94 1.00 0.98 0.98 0.97 0.94 0.92 0.92 Sigmoid 0.98 0.99 0.95 0.93 0.92 0.95 0.92 0.91 80 Bent 1.08 1.1 1.07 1.07 1.06 1.06 1.01 1.01 Linear 1.03 1.03 1.03 2.24 1.24 2.28 2.36 1.01 Sigmoid 1.11 1.03 1.02 1.02 1.01 1.01 1.00 1.01 90 Bent 1.12 1.14 1.13 1.11 1.11 1.11 1.11 1.71 Linear 1.12 1.12 1.12 1.11 1.11 1.10 1.10 1.10 Sigmoid 1.12 1.12 1.11 1.11 1.10 1.11 1.09 1.09 100 Bent 1.22 1.22 1.22 1.22 1.21 1.20 1.20 2.25 Linear 2.37 1.22 1.21 1.20 1.20 1.19 1.19 1.19 Sigmoid 1.21 2.20 1.81 1.20 1.20 1.19 1.19 1.19 效為此部分實驗參數組合當中最佳 (測試正確率:96.62 %)。 透過單層卷積層實驗分析得到參數組合當中,當 t 等於 6;Pooling 方法為 Max;Activation function 為 Linear;隱藏層神經元個數為 60 個時為最佳參數,因 此在本實驗當中我們將以此組實驗參數來分析卷基層層數分別為 1、2 和 3 層 下,來找出卷基層幾層效果最佳。在表4.13當中,可以得到當卷基層層數為 2 層

(49)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

表 4.5: 實驗 C - 單層卷積層實驗參數組合 1-1(Max Pooling;測試辨識率) Max Pooling 神經元個數 Actfunc LTP threshold (t) t=2 t=4 t=6 t=8 t=10 t=12 t=14 t=16 30 Bent 86.83 82.90 84.83 88.00 84.83 81.86 88.48 82.35 Linear 84.41 85.31 85.72 89.10 89.10 85.59 83.52 86.97 Sigmoid 63.52 65.38 66.35 61.79 63.86 64.14 61.66 65.17 40 Bent 86.76 89.86 89.79 90.55 89.24 90.90 92.62 91.86 Linear 90.90 91.31 89.93 89.66 87.45 89.10 87.79 89.03 Sigmoid 69.17 77.10 71.38 75.93 75.24 69.86 74.62 66.90 50 Bent 90.41 90.76 91.79 91.59 92.62 89.59 92.76 92.00 Linear 92.21 92.48 91.66 95.10 92.83 92.14 89.38 91.52 Sigmoid 76.08 79.79 81.93 74.90 78.83 77.52 78.35 71.52 60 Bent 92.90 91.79 93.79 91.66 92.35 92.07 91.17 90.48 Linear 94.48 94.76 94.41 94.00 91.93 93.45 92.90 92.48 Sigmoid 80.55 74.83 79.66 82.76 77.38 80.07 78.55 76.55 70 Bent 93.03 93.31 91.59 92.48 91.52 95.59 91.17 94.83 Linear 94.97 94.14 93.86 93.79 94.48 94.41 95.38 93.91 Sigmoid 80.97 79.38 83.17 81.10 75.45 73.86 80.41 76.21 80 Bent 92.35 91.03 93.17 92.21 90.69 93.10 94.08 93.10 Linear 95.03 95.31 95.52 93.17 94.97 94.97 93.72 94.00 Sigmoid 81.10 74.48 79.31 76.14 78.48 80.48 76.21 81.17 90 Bent 93.45 91.66 93.59 91.79 91.79 94.48 90.97 91.52 Linear 92.08 91.93 92.97 92.48 93.79 92.97 93.24 92.83 Sigmoid 75.66 79.31 79.24 79.66 71.03 79.38 75.38 77.72 100 Bent 92.83 87.66 91.93 90.90 93.03 95.24 88.83 91.72 Linear 91.66 90.48 96.62 93.45 95.72 93.03 94.21 91.17 Sigmoid 77.03 72.62 76.62 74.41 76.90 66.28 80.14 73.52 時,其訓練成效相較於其它 2 種不同層數為當中最佳 (測試正確率:97.72%)。基 於 Convolution mask 等於 3× 3、單層卷積層實驗和卷基層層數實驗分析所得到 的結果,在此部分的實驗,我們將以 3× 3、5× 5 和 7× 7 共 3 種不同的 mask 大

(50)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

表 4.6: 實驗 C - 單層卷積層實驗參數組合 1-2(Max Pooling;訓練時間 (秒)) Max Pooling 神經元個數 Actfunc LTP threshold (t) t=2 t=4 t=6 t=8 t=10 t=12 t=14 t=16 30 Bent 0.92 0.91 0.92 0.92 0.92 0.92 0.92 0.92 Linear 0.92 0.92 0.92 0.91 0.91 0.92 0.91 0.92 Sigmoid 0.92 0.92 0.91 0.91 0.92 0.93 1.18 0.92 40 Bent 1.00 1.00 1.00 1.01 1.00 1.00 1.00 1.00 Linear 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 Sigmoid 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 50 Bent 1.09 1.09 1.09 1.09 1.09 1.09 1.08 1.08 Linear 1.11 1.32 1.09 1.09 1.12 1.08 1.08 1.08 Sigmoid 1.10 1.09 1.10 1.09 1.09 1.09 1.08 1.09 60 Bent 1.17 1.18 1.18 1.18 1.19 1.17 1.17 1.18 Linear 1.18 1.18 1.18 1.17 1.17 1.17 1.17 1.19 Sigmoid 1.18 1.18 1.18 1.18 1.20 1.65 1.18 1.18 70 Bent 1.27 1.28 1.28 1.27 1.27 1.28 1.27 1.27 Linear 1.28 1.27 1.27 1.27 1.27 1.27 1.27 1.27 Sigmoid 1.28 1.27 1.49 1.27 1.27 1.27 1.28 1.28 80 Bent 1.36 1.37 1.37 1.36 1.36 1.37 1.36 1.36 Linear 1.36 1.36 1.36 1.36 1.36 1.36 1.36 1.36 Sigmoid 1.36 1.36 1.38 1.36 1.37 1.38 1.58 1.37 90 Bent 1.45 1.57 1.45 1.46 1.46 1.49 1.45 1.46 Linear 1.45 1.45 1.45 1.45 1.45 1.45 1.46 1.46 Sigmoid 1.46 1.47 1.47 1.46 1.74 1.48 1.47 1.47 100 Bent 1.56 1.58 1.65 1.57 1.57 1.57 1.56 1.56 Linear 1.56 1.56 1.58 1.58 1.56 1.57 1.57 1.56 Sigmoid 1.56 1.56 1.57 1.56 1.56 1.56 1.56 1.57 5× 5 時,其訓練成效為最佳 (測試正確率:98.62%)。綜合以上依序 3 種不同實驗 分析之結果,我們可以得到當 t 等於 6;卷基層層數為 2 層;Convolution mask 等

於 5× 5;Pooling 方法為 Max;Activation function 為 Linear;隱藏層神經元個數為

(51)

N

a

ti

o

n

a

l

U

niversity of

K

ao

h

si

u

n

g

表 4.7: 實驗 C - 單層卷積層實驗參數組合 2-1(Min Pooling;測試辨識率) Min Pooling 神經元個數 Actfunc LTP threshold (t) t=2 t=4 t=6 t=8 t=10 t=12 t=14 t=16 30 Bent 64.62 60.41 56.97 61.93 59.17 61.10 64.35 62.14 Linear 65.93 64.14 65.86 59.72 65.31 69.24 62.55 65.31 Sigmoid 54.14 58.14 59.17 54.21 52.69 55.52 47.31 55.03 40 Bent 66.55 71.66 67.10 67.72 63.38 66.41 68.14 68.21 Linear 72.90 75.31 73.66 70.00 70.76 71.79 70.83 77.31 Sigmoid 61.17 59.03 61.17 64.00 60.76 62.76 61.52 59.59 50 Bent 72.28 67.59 74.90 77.52 72.14 71.72 77.59 70.90 Linear 75.79 75.42 77.59 77.17 76.07 73.38 73.03 72.07 Sigmoid 68.48 65.24 62.48 68.41 69.59 68.90 66.62 58.41 60 Bent 76.62 77.38 71.52 76.48 76.21 72.97 79.72 77.59 Linear 78.41 76.48 77.17 80.48 78.14 78.76 75.03 79.10 Sigmoid 70.35 68.14 69.03 66.28 67.72 71.31 67.79 69.17 70 Bent 74.90 77.93 72.48 73.72 76.35 77.38 78.69 74.21 Linear 81.17 74.76 75.17 80.83 81.38 80.83 73.03 85.45 Sigmoid 70.07 67.31 74.00 67.45 67.66 68.97 62.41 67.52 80 Bent 76.55 77.17 72.83 75.86 74.76 72.00 71.52 74.55 Linear 77.66 79.38 76.28 78.07 78.90 75.66 80.07 78.07 Sigmoid 72.14 68.48 70.41 67.66 63.45 67.66 66.76 69.17 90 Bent 72.62 75.24 74.21 75.79 73.86 73.66 75.38 73.86 Linear 75.66 72.14 76.41 75.59 78.28 74.48 74.97 72.76 Sigmoid 63.72 66.00 66.07 66.62 67.31 66.69 66.62 68.97 100 Bent 66.35 74.07 70.48 68.48 66.69 73.03 69.52 73.93 Linear 70.55 72.07 76.00 70.55 75.66 72.07 72.90 73.86 Sigmoid 66.07 63.03 56.76 65.86 65.10 64.07 61.86 58.00

4.6

實驗 D - 人臉特徵偵測模型測試和比較

透過實驗 A 至 C 所決定之實驗參數作為實驗 E 的參數設定,實驗 D 將以 LTP 和 Sobel 邊緣特徵分別作為左側、正面和右側的人臉特徵偵測模型的前置處

數據

圖 4.5: Chicago Face Database 資料庫人臉影像

參考文獻

相關文件

In x 2 we describe a top-down construction approach for which prototype charge- qubit devices have been successfully fabricated (Dzurak et al. Array sites are de­ ned by

SG is simple and effective, but sometimes not robust (e.g., selecting the learning rate may be difficult) Is it possible to consider other methods.. In this work, we investigate

Ongoing Projects in Image/Video Analytics with Deep Convolutional Neural Networks. § Goal – Devise effective and efficient learning methods for scalable visual analytic

• To achieve small expected risk, that is good generalization performance ⇒ both the empirical risk and the ratio between VC dimension and the number of data points have to be small..

CAST: Using neural networks to improve trading systems based on technical analysis by means of the RSI financial indicator. Performance of technical analysis in growth and small

CAST: Using neural networks to improve trading systems based on technical analysis by means of the RSI financial indicator. Performance of technical analysis in growth and small

Pascanu et al., “On the difficulty of training recurrent neural networks,” in ICML, 2013..

Mehrotra, “Content-based image retrieval with relevance feedback in MARS,” In Proceedings of IEEE International Conference on Image Processing ’97. Chakrabarti, “Query