• 沒有找到結果。

偵測眼睛相關電腦視覺演算法

第二章 文獻探討

2.2 偵測眼睛相關電腦視覺演算法

目前偵測眼睛相關電腦視覺演算法有分影像處理型、投影定位型、機器學習 型等等,以下討論。

2.2.1 影像處理型

利用影像處理做電腦視覺工作方法之一為影像分割(Image Segmentation),舉 例來說,偵測閉眼與睜眼要先偵測到人臉,這時就要從影像中分割出人臉的膚 色,而一般的紅色、綠色及藍色所組成的 RGB(Red Green Blue)色彩空間容易受 到光線變化的影響[1,21,22,23,24],膚色分佈無法集中在一個範圍內,故要將影像 轉換到其它色彩空間,如: YCbCr 色彩空間、HSV 色彩空間和正規化色彩空間 NCC(Normalized Color Coordinates)[25]等,其中 YCbCr 色彩空間常用於數位視訊

11

中,Y 代表亮度,Cb、Cr 分別代表黃到藍與綠到紅色度,HSV 色彩空間的 H 代 表色調,而 S 代表飽和度,V 則代表顏色深度,而正規化色彩空間 NCC,是將 R 及 G 的色版做正規化,如此一來可減少光源對色彩的影響,膚色分佈也更容易集 中在一個範圍內,用上述任一個色彩空間轉換後,就可做膚色分離,其結果如【圖 2-7】,膚色分離後影像仍存有一些雜訊,主要是源自近似膚色的背景及臉部非膚 色的特徵,這時可用影像處理型態學的膨脹(dilation)及侵蝕(erosion)運算去除這些 雜訊,膨脹能把臉部範圍內的小洞填補起來,侵蝕能將影像上的多餘雜訊清除,

其它影像處理還有灰階、邊緣偵測等。

(a) (b) (c) (d)

圖 2-7:不同色彩空間的膚色分離(a)原圖 (b)NCC 色彩空間的膚色分離 (c)YCbCr 色彩空間的膚 色分離 (d)HSV 色彩空間的膚色分離(取自[1])

2.2.2 投影定位型

投影分為水平投影跟垂直投影[1, 26,27,28,29,30,31],在投影定位時,必須先 做邊緣偵測,邊緣偵測圖上圖形的每個點都稱為邊界點,水平投影就是將邊緣偵 測圖,由上到下水平的每一行所累積的邊界點數畫成直方圖記錄下來,如【圖 2-8】,【圖 2-8】中(c)小圖橫軸為邊界點數量,縱軸為邊緣偵測圖對應高度,垂直 投影則是將邊緣偵測圖,由左至右縱向的每一行所累積的邊界點數畫成直方圖記 錄下來,眼睛定位時要用到的的垂直投影,就是利用眼睛的垂直投影大致上有對

12

稱性,所以搜尋大致對稱且較多邊界點就為眼睛的橫軸位置,如【圖 2-9】,接著 再搭配眼睛的水平投影,找出縱軸位置,就可以精確地定位眼睛的位置。

圖 2-8:水平投影(a)原圖 (b)邊緣偵測圖 (c)水平投影圖(取自[26])

圖 2-9:眼睛的垂直投影(取自[1])

2.2.3 機器學習型

機器學習分為監督式學習和非監督式學習,監督式學習是指把資料給機器學

13

習時,會告訴它類別是甚麼,訓練完後,會產生一個模型,之後碰到新資料,就 會用這個模型判斷這資料的類別是甚麼,利用監督式學習的演算法有:KNN(k-th nearest neighbor 第 k 位最接近的鄰居)、SVM(Support Vector Machine)、決策樹、

AdaBoost(自適應神經網路)、監督式學習的類神經網路,而非監督式學習則為資 料給機器學習時,不告訴它類別是甚麼,所以之後遇到新資料,其模型判斷為像 學習時的哪種資料,利用非監督式學習的演算法有:SOM(非監督式學習的類神經 網路)、K-Means(K-平均演算法)、SVC(support vector clustering 支撐向量群聚演算 法)和 SOINN(自組織增量學習神經網路),以下舉監督式學習的類神經網路、 新資料跟哪些訓練資料同一類,AdaBoost 在本研究是 Haar cascade 其中一個環節 [33,34,35,36],AdaBoost 方法會用很多資料訓練多個弱分類器,本研究就是用特 徵積分圖的特徵值訓練很多個弱分類器,使它們有權重並排成一列,權重越重越 先。

輸入新資料分類時分為下列幾個階段:

第一階段是 Haar-like feature,也就是在輸入圖中找出特徵積分圖,可能很多可 能很少,並算出特徵積分圖的特徵值。

第二階段是 Haar cascade,也就是這些特徵值由 AdaBoost 訓練的結果分類,例 如分類這是不是眼睛,要每個弱分類器都分類是眼睛才是眼睛。

14

圖 2-10:類神經網路結構圖(取自[32])

相關文件