• 沒有找到結果。

本篇用到人眼偵測方法

第二章 文獻探討

2.4 本篇用到人眼偵測方法

長時間閉眼是打瞌睡的重要指標之一,故偵測人眼及其開閉非常重要,首先 要從影像擷取特徵積分圖,然後將特徵積分圖算出的特徵值代入由 AdaBoost 排 序的眾弱分類器,再用 Haar cascade 法做是或否的分類。

2.4.1 人眼特徵擷取 (特徵積分圖)

本系統從即時影片擷取影像,約每秒 2.08 張,再從影像擷取特徵積分圖[33],

特徵積分圖如【圖 2-12】,有分邊緣特徵積分圖、線特徵積分圖及特殊方向特徵 積分圖,擷取眼睛的特徵積分圖如【圖 2-13】,通常影片一邊暗一邊亮的地方就 會形成邊緣,於是用邊緣特徵積分圖,通常影片兩邊暗中間亮或兩邊亮中間暗的 地方會用線特徵積分圖,通常影片傾斜方向暗兩邊亮或傾斜方向亮兩邊暗就會用 特殊方向特徵積分圖,至於用哪幾種特徵積分圖由設計者決定,

18

(a) (b)

(c) (d) (e) (f)

(g)

圖 2-12:特徵積分圖(a)(b)邊緣特徵積分圖 (c)(d)(e)(f)線特徵積分圖 (g)特殊方向特徵積分圖(取 自[33])

(a) (b) (c)

19

(d)

圖 2-13:擷取特徵積分圖(a)(b)線特徵積分圖(c)邊緣特徵積分圖(d)特殊方向特徵積分圖

再來用特徵積分圖白色區塊的亮度總合減去黑色區塊的亮度總合得到特徵值,如 (2-1)式[33],

(2-1)

再把特徵值做為眾多弱分類器的輸入。

2.4.2 自適應神經網路 (AdaBoost)

此為監督式演算法,也就是在訓練期,每一筆訓練資料要對應一個其所屬類 別,例如偵測到眼睛就說是,上文提到的眾多弱分類器需要按權重排成一列,權 重最重的排第一個,權重次重的排第二個,依此類推,自適應神經網路就是決定 各弱分類器權重的演算法[38],以下為決定各弱分類器權重的步驟,首先假設有 n 筆資料,其輸入弱分類器是 x(也就是特徵值),資料所屬類別是 y(是或不是,通 常用+1、-1 表示),如(2-2)式,

20

(2-2)

一開始先假設每筆資料權重為 1/n,如(2-3)式,

(2-3)

資料代入某弱分類器分類,若這分類器分出來 m 筆資料分錯,就把這 m 筆資料 的權重加起來做為此分類器的誤差 ,如(2-4)式,

(2-4)

依此類推做完其它弱分類器的誤差,t 為第 t 個弱分類器的意思,接著選誤差最小 的弱分類器,如(2-5)式,

(2-5)

將其誤差代入(2-6)式,

(2-6)

得出 即為第 t 個分類器的權重,接著再用(2-7)式算出新的資料權重 (也就 是一開始說的資料權重),

21

(2-7)

是為了正規化,正規化就是同乘或同除一個數,讓這些新資料權重相加為 1,

接者就是重算每個分類器的誤差 ,再選最小誤差的弱分類器(不能再選第一個算 的弱分類器),用(2-6)式算出其權重,如此重複步驟就能算出所有弱分類器的權 重。眾弱分類器按權重排完一列就進入下節的 Haar cascade。

2.4.3Haar cascade

Haar cascade[38]就是指排成一列的弱分類器要分類時(輸入特徵值時),第一 個判定為否,那後面弱分類器就不會再做分類了,分出的結果就是否,若第一個 判定為是,第二個判定為否,那第二個之後就不必做分類了,且分出的結果依然 是否,如【圖 2-14】,依此類推,故只要有一個說否就為否,全部都說是才是,

例如第一個分類器分類為不是眼睛,那後面就不必分了,答案就是不是眼睛,依 此類推。

圖 2-14:弱分類器分類順序(取自[38])

22

相關文件