淺析人臉檢測技術的探究
引 言
隨著計算機技術的高速發(fā)展,計算機的應用已滲入到人們生活的各個方面。尤其是近年來人工智能的發(fā)展,其可利用計算機取代人的工作,利用智能設備完成信息交互和控制,極大地推動了智能技術和智能設備的研究應用。其中,人臉識別技術是人工智能領域的關鍵技術 [1],包括人臉檢測、識別和跟蹤等,廣泛應用于智能視頻監(jiān)控系統(tǒng)、門禁控制系統(tǒng)中。人臉檢測是從輸入的圖像中檢測出是否有人臉圖像的存在,并將其從背景中分離出來的過程,是人臉識別技術的基礎,也是人臉識別的第一步。人臉檢測的算法非常多,目前常用的方法有支持向量機、神經(jīng)網(wǎng)絡、AdaBoosting 等。
1 支持向量機
支持向量機(Support Vector Machine,SVM)建立在統(tǒng)計學習理論的VC 維理論和結構風險最小原理基礎上[2],用于對線性可分的模型進行分類的算法。對于訓練樣本而言,就是尋找最優(yōu)的分類面來完成樣本的分類。支持向量機工作原理圖如圖 1 所示。
其本質(zhì)是一個二分類問題,實心圓和空心圓分別代表兩 類不同的訓練樣本。尋找最優(yōu)的分類線 L,這條分類線不僅能 正確地將樣本分開,還能夠使得與它平行的直線 L1 和 L2 之間 的距離最小。
最初該算法用于線性可分的問題模型,經(jīng)過發(fā)展后也可用于線性不可分的模型問題。采用非線性映射將低維空間的非線性問題轉(zhuǎn)化為高維空間的線性問題,從而在高維空間利用線性算法對樣本的非線性問題進行分析,求出最優(yōu)分類面, 達到對樣本進行分類的目的。但獲取的分類器是在高維空間得到的,維度很高,訓練過程比較復雜,實現(xiàn)實時檢測非常困難。
2 人工神經(jīng)網(wǎng)絡
人工神經(jīng)網(wǎng)絡(Artificial Neural Network,ANN)從信息處理的角度模擬人腦神經(jīng)元網(wǎng)絡。利用大量節(jié)點即神經(jīng)元組成一個網(wǎng)絡,然后將大量的人臉圖像樣本和非人臉圖像樣本數(shù)據(jù)輸入進行訓練,使網(wǎng)絡逐漸具有對樣本正確分類的能力。神經(jīng)網(wǎng)絡結構如圖 2 所示,該網(wǎng)絡結構是前饋型網(wǎng)絡[3],分為輸入神經(jīng)元、隱含神經(jīng)元和輸出神經(jīng)元,其中隱含神經(jīng)元可以有多層。將提取的特征值輸入至輸入層,并傳到后方的隱含層,最后通過連接權輸出到輸出層。在訓練的過程中不斷調(diào)整連接權值,直到網(wǎng)絡輸出的誤差減小到可以接受的程度。因此, 在非線性分類中可以充分逼近理想結果。但是分類器的獲取太復雜,對多姿態(tài)的容忍度很低,不太適合實時的人臉檢測。
3 AdaBoost
AdaBoost 算法是利用分類能力一般的弱分類器通過推選構成的具有很強分類能力的強分類器,采用分類能力遞增的方式將多個強分類器組成級聯(lián)分類器[4]。對于這樣的級聯(lián)系統(tǒng), 正確檢測率(Correct Detection Rate,CDR)越大越好,而虛假正確率(False Positive Rate,F(xiàn)PR)越小越好[5]。
對輸入圖像進行檢測時,提取的特征值絕大多數(shù)都是非人臉圖像,只有極少的是存在人臉的圖像,所以人臉檢測是一個小概率事件的檢測過程。在構造訓練樣本時,非人臉訓練樣本的數(shù)量應多于人臉訓練樣本的數(shù)量。
為方便表述,將訓練樣本總數(shù)記為 M,每個樣本提取的特征數(shù)記為 N。大致的訓練過程如下:
(1) 將 M個訓練樣本以及與之對應的 N個特征值構造為二維矩陣 F[i][ j],其中 1 ≤ i≤ N,1 ≤ j≤ M,每個 F[i][ j] 表示第 j個樣本的第 i個特征值,而 F[i][] 則表示所有訓練樣本的第 i個特征值的集合。
(2) 對所有樣本的第 i個特征值進行排序,并設置初始權重為 wj=1/M,其中 wj為第 j個樣本的權重。
error為訓練樣本被錯誤分類的均方差值誤差,yk為樣本的類型值,當 k為人臉圖像時,yk=1,否則 yk= - 1。hj(F[i][ j])為第 j 個弱分類器。
if(error<minerror)
minerror=error,
θ=F[i][ j],
最終將均方差值最小的 θ 值作為弱分類器的閾值。此時得到的弱分類器是經(jīng)過訓練的最優(yōu)弱分類器。
(3) 對所有的特征值進行計算,從得到所有的均方差值最小的最優(yōu)弱分類器中挑選出本輪誤差值最小的最優(yōu)弱分類器作為第一個強分類器,若用 t表示當前強分類中包含的弱分類器的數(shù)量,那么此時 t=1。
然后根據(jù)最優(yōu)弱分類器的分類結果,分別調(diào)整樣本的權重。增大被錯誤分類的樣本的權重,減小被正確分類的樣本的權重,以利于提高非人臉樣本被檢測出的概率。
(4) 為了提高檢測的效率,采用遞進復雜度的級聯(lián)分類器,具體如圖 3 所示。

前面的幾個最優(yōu)強分類器由于包含的弱分類器數(shù)量較少, 結構也比較簡單,可以快速過濾掉大量比較容易排除的非人臉圖像。但隨著后面最優(yōu)強分類器包含的弱分類器的增多,過濾非人臉的能力越來越強,能夠進一步對難以排除的非人臉圖像進行過濾,但檢測速率也隨之下降。
強分類器對非人臉圖像的判別準確度非常高,一旦發(fā)現(xiàn)為非人臉圖像,就將它過濾掉,后面的分類器將不再對它進行處理。而且在采集到的圖像中,絕大多數(shù)都是非人臉圖像, 人臉圖像只占很少一部分,所以采用級聯(lián)的方法提高人臉檢測的速度,滿足實時檢測的需求。
4 結 語
人臉檢測與識別技術是人工智能領域的熱點研究課題, 在視頻監(jiān)控、門禁系統(tǒng)等領域都有廣泛的應用。本文從構造人臉檢測的分類器出發(fā),分析了支持向量機、人工神經(jīng)網(wǎng)絡以及AdaBoost 算法。相比較而言,AdaBoost 算法通過尋找弱分類器,利用訓練過程將弱分類器構造為強分類器,并將多個強分類器按由簡單到復雜的次序進行級聯(lián),從而將大量的非人臉圖像過濾掉,極大地降低了處理時間,提高了檢測效率, 在實時人臉檢測與識別領域得到了廣泛的應用。





