• 沒有找到結果。

本章節首先介紹臉部辨識與應用,提出研究動機及研究流程。本章 主要分為研究背景、研究動機與目的、研究流程及研究貢獻共四小節。

說明如下:

第一節 研究背景

臉部辨識(Face Recognition)是一種生物辨識,每個人擁有不同的 臉部特徵,例如眼睛、鼻子、嘴巴及臉部輪廓等特徵,透過這些特徵可 以直接進行身分確認。臉部辨識廣泛應用於隱私安全及監視系統方面,

隱私安全方面例如電腦加密及門鎖系統;監視系統方面例如機場海關即 時監控系統,2001 年美國 911 事件後,臉部辨識更是被重視運用於預防 犯罪行為上。

臉部辨識的方法最常見的有主成分分析法(Principal Component Analysis, PCA),主要分為兩個步驟,分別是訓練與辨識。訓練時,將現 有訓練樣本計算特徵值與特徵向量,保留一定個數的特徵向量構成特徵 空間,將訓練樣本投影至特徵空間,儲存成一訓練集,此方式可以降低 原始圖像維度,減少儲存的空間和計算的複雜度;辨識時,先對測試圖 像進行正規化,再將測試圖像投影至特徵空間,藉由計算測試圖像與訓 練圖像的投影量的歐式距離,決定辨識結果。

第二節 研究動機與目的

應用主成分分析法於臉部辨識時,訓練與辨識這兩個步驟各有其最 耗時的地方,訓練方面最耗時的地方在於計算特徵值與特徵向量,其次

是將訓練樣本投影至特徵空間;辨識方面最耗時的地方在於將待辨識的 圖片投影至特徵空間。

主成分分析法在計算特徵向量,常見的方法有 Non-linear Iterative Partial Least Squares (NIPALS)( Štruc, V., & Pavešić, N., 2009; Wold, S., Esbensen, K., & Geladi, P., 1987; Schwartz, W., Guo, H., & Davis, L., 2010).

與 Gram-Schmidt orthogonalization(Sajid, I., Ahmed, M. M., & Taj, I., 2009; Ramesha, K., & Raja, K. B., 2011; Andrecut, M., 2009)。在特徵值與 特徵向量計算上,2009 年 Andrecut 提出運用圖形處理器(Graphical Processing Units, GPU ) 加 速 非 線 性 迭 代 偏 最 小 二 乘 法 ( Non-linear Iterative Partial Least Squares, NIPALS ) 與 Gram-Schmidt 重 正 交 化

(Gram-Schmidt reorthogonalization, GS)計算的方法。本研究提出以圖 形處理器(Graphical Processing Units, GPU)分別加速臉部辨識的訓練與 辨識步驟,其中訓練步驟以 GPU 加速 NIPALS 和 GS 於計算訓練樣本的 的主成分以及訓練樣本對特徵向量的投影計算,辨識步驟則以 GPU 加 速測試樣本對特徵向量得投影計算。

第三節 研究流程

為做實驗比較,本研究共實現五種 PCA 版本,包括 OpenCV 實現 的 Eigenface、 NIPALS CPU 版本、GS CPU 版本、NIPALS GPU 版本與 GS GPU 版本。Eigenface 是採用 OpenCV Ver. 2.4.5 ,而後面四者是實現 Andrecut 提出兩種計算特徵值與特徵向量的加速方法,並結合 OpenCV 做 PCA 的臉部辨識,並將訓練與辨識時做特徵投影的步驟實現於 GPU 上。資料庫採用 Georghiades, Belhumeur 和 Kriegman (2001)建構的 Extended YaleB 臉部資料庫,其中共有 28 人,每人 9 種姿勢以及 64 種 不同光源的圖像。

第四節 研究貢獻

就上述五種方法,實驗結果顯示,在訓練部分,相較於 OpenCV 實 現的 Eigenface,CPU 版本的 NIPALS 能夠得到 1.3 倍的加速,而 GS 可 得到 1.2 倍的加速,GPU 版本的 NIPALS 能夠得到 5.9 倍的加速,而 GS 可以得到 5.25 倍的加速。另一方面相較於 NIPALS 與 GS 的 CPU 版本,

GPU 版本則可以得到 4.5 倍的加速。在辨識部分,我們也利用 GPU 做 特徵投影的加速,實驗結果顯示透過 GPU 加速可以能夠得到 1.57 倍的 加速。

相關文件