徐 信,郝曉麗+,王 芳
(1.太原理工大學 計算機科學與技術學院,山西 太原030024;2.太原理工大學 信息學院,山西 太原030024)
由于攝像頭和觀測人群之間距離較遠,使得監控視頻圖像中的感興趣區域 (人臉區域)面積往往很小,圖像模糊、噪聲大并且分辨率低,檢測時準確率低誤報較高[1]。檢測并識別遠距離獲取的圖像中的人類對象時,還需要手動操作,耗費的時間與工作量較大[2]。因此人臉檢測需進一步研究,準確檢測人臉也是現實中亟待解決的問題。
Adaboost算法是一種流行的快速檢測物體算法[3],并在人臉檢測領域取得了突破性進展,實現了實時快速人臉檢測[4]。但是,在遠距離獲取的圖像中只運用Adaboost算法進行人臉檢測并不充分,誤報高檢測精確度低,所以常結合其它算法一起使用。膚色信息是人臉的重要特征,也常常被應用到人臉檢測中[5,6],人臉膚色空間在整個色度空間中只是一個很小的子空間,有較強的聚類特點,并且易于提取。利用膚色信息進行人臉檢測,算法簡單、速度快[7]。因此提出了基于Adaboost算法的誤報縮減機制用來去除在低分辨率圖像中的檢測誤報。
誤報縮減機制包括膚色檢測和可變邊緣蒙版篩選,膚色檢測需運用圖像的顏色信息,可變邊緣蒙版用來評價人臉邊緣形狀。待檢測窗體區域的膚色檢測是基于GRB這3種顏色分量的評價值。隨后生成的二進制群集圖像,是由已經通過了膚色檢測窗口區域的部分組成,二進制集群由通過檢測的每個像素點顏色確定。馬氏距離的計算使用的是均值矢量和替代區域集群的協方差矩陣,并且遵循卡方分布[8,9]。邊緣蒙版的大小與橢圓的長軸短軸類似,都為服從于90%置信區間的卡方分布。實驗運用監控系統和普通相機抓取到的圖像進行研究,實驗結果表明,平均誤報得到顯著降低,基于Adaboost算法的誤報縮減機制不但適用于在遠距離拍攝圖像中進行人臉檢測,也適用于一般圖像,具有較強的實用性。
所有通過計算機檢測人臉的算法或方法都包含3個主要的子任務:①將輸入圖像轉換為初步表示 (可包含預處理以及數學變換,如主成分的計算);②選擇主要特征(如:把前n個元素或系數離散余弦變換);③分類/聚類任務 (如:聚類分析模型,神經網絡等)。
給定一組被劃分在不同類別中的對象 (圖像),即預定義拓撲結構是分離的。根據這種拓撲結構,那些已被分到已知類的對象 (圖像)稱為訓練樣本,其它對象 (圖像)的歸屬類是未知的。立足于訓練樣本的信息,需要建立一個能夠對任何給定的對象進行分類的算法,即分類器——一個數學函數,通過分類算法實現,輸入數據后可以映射到一個類別。
機器學習的術語中,分類被認為是監督學習的一個實例,在學習中被正確識別的觀測訓練集是可用的。圖像分類的主要任務是目標檢測,人臉檢測中的Adaboost算法有兩個類,分類的定義如下:包含對象特征的集合X,屬于類的對象數量Y。有等式關系:Y*:X=>Y,訓練樣本為Xm={(x1,y1),…(xm,ym)}。函數f是由特征向量 X建立的,它能判斷任何可能的X以及x∈X的對象是否屬于已知類,這條簡單的規則對于給出的新數據有很好的分類效果。
Adaboost算法中,在構造弱分類器的基礎上進一步提出級聯分類器的思想[10],除第一個以外的所有分類器需要學習前一個分類器的錯誤分類對象,通過多數分類器檢測的對象將被判決到某個已知類中。然而,學習和創建訓練樣本是一個需要很長的過程,分類檢測任務假定分為兩個類:Y= {-1,+1},AdaBoost算法包括以下主要步驟:
預先給定

初始化權重

For t=1,…,T:①運用Dt的分布訓練弱學習算法;②獲取弱假設 (即弱分類結果)

對于分類錯誤的樣本

選擇

更新權重

Zt是常量因子,輸出最終假設

AdaBoost算法具有許多優點,如快速、簡單且易于編程,并且不需要任何參數來調整 (除了循環次數),不需要任何關于弱學習的先驗知識,因此可以靈活運用任意組合的方法尋找弱假設。Adaboost方法在近距離獲取的圖像中檢測人臉效果很好,可快速檢測圖像中的正面直立人臉[11]。但是,Adaboost算法在遠距離獲取圖像中人臉尺寸低于30*30像素時很難發揮作用,誤報會大幅度增加?;贏daboost上述特點,本文提出了誤報縮減機,用來提高檢測準確率。
基于Adaboost算法的誤報縮減機制人臉檢測系統分為以下幾個階段:Adaboost檢測,膚色檢測,可變邊緣蒙版篩選檢測。在第一階段,Adaboost過濾器產生一定數量的候選窗口,隨后膚色檢測和可變邊緣蒙版過濾機制用來驗證候選窗口并刪除誤檢區域。本文算法步驟如圖1所示。
Adaboost過濾器之后的膚色過濾方法和邊緣蒙版過濾方法用來移除誤報,首先,待檢測窗口運用膚色過濾器進行檢測。

圖1 人臉檢測方法框架

式 (8)中,mr,mg和mb分別為候選窗口中紅 (red)、綠 (green)和藍 (blue)分量的平均值,另外,ξr,ξg,ξb和ξd為預定義閾值,符號 “∩”是邏輯與,算法如式 (9)所示

式(9)為二進制群集圖像產生算法,其中Ir(j),Ig(j)和Ib(j)為組成像素j的紅、綠、藍分量的強度??蛇x擇像素在二進制群中的位置為Xj= [xjyj]t,xj和yj為像素j在x軸與y軸方向上的位置,t代表矩陣轉置。馬氏距離(Δ)介于xj與mx之間,定義如下

其為群集中可選擇的圖像中心像素點平均矢量mx;∑xx為可選擇像素點協方差矩陣;Δ服從卡方分布(),因此橢圓可通過卡方轉置累計分布函數 (CDF)的90%置信區間進行估算。邊緣屏蔽大小由橢圓的最長軸線與最短軸線共同決定,當k為常量時,最長軸線Imax=k最短軸線和λ2(λ1>λ2>0)同為協方差矩陣的特征值。圖2為可變邊緣屏蔽設計步驟,圖3為一副25*25的人臉圖像,圖3為在生成的二進制群集圖像中做出估計橢圓,為后續生成邊緣蒙版做準備,圖4為根據二進制群集圖像生成的邊緣蒙版。
邊緣蒙版由-1,0,1這3個不同的數字組成,圖5顯示的是本文實驗,邊緣蒙版中像素值Imax=Imin=15。邊緣蒙版過濾器定義如下

當he作為邊緣蒙版時,we為窗口區域的邊緣圖像,ξe為閾值,nw是窗口中像素點的數量。邊緣蒙版過濾器檢測人臉形狀邊緣是否在窗口范圍內,即圖4中標記為1的位置。
本文實驗運行環境:Pentium IV 2.0GHz CPU,2G內存,Windows XP操作系統,在 Matlab 6.5以及 VC++6.0仿真軟件平臺上編程實現。在實驗中,由監控攝像機拍攝得到人體圖像。圖6是由監控視頻獲取圖像,圖7由普通相機距離人體15m處獲得待檢測圖像,圖6(a)和圖7(a)為Canny邊緣檢測方法得到的邊緣圖像;圖6(b)和圖7(b)表示拍攝得到的圖像進行Adaboost過濾后輸出的候選窗口情況;圖6(c)和圖7(c)表示Adaboost算法與膚色檢測結合后輸出的候選窗口情況;圖6(d)和圖7(d)是運用了由本文提出的誤報縮減機制,顯示最終通過邊緣蒙版過濾器檢測的人臉面部區域圖像。
檢測效果圖像如圖6和圖7所示。
由表1可看出,運用傳統Adaboost對遠距離抓取得到的圖像進行人臉檢測時,檢測窗口數量高達349,誤報檢測窗口數量為261,高達檢測窗口總量的75%。Adaboost之后添加膚色檢測對檢測窗口進行過濾時,檢測窗口數量下降到92個,隨之誤報檢測窗口數目也下降到7個,此時,誤報檢測窗口數量約占檢測窗口總量的7.6%。運用本文提出的誤報縮減機制,對Adaboost和膚色過濾后的圖像繼續篩選,可變邊緣蒙版對可疑人臉區域進一步排除,此時檢測窗口數量下降到44,誤報檢測窗口個數減少為0。

圖2 候選窗口

圖3 帶有估計橢圓的二進制群集圖像

圖4 邊緣蒙版

圖5 可變邊緣蒙版

圖6 監控視頻獲取圖像檢測結果

圖7 普通相機獲取圖像檢測結果

表1 監控視頻圖像檢測結果對比
由表2可看出,運用傳統Adaboost對遠距離抓取得到的圖像進行人臉檢測時,檢測窗口數量為165,誤報檢測窗口數量為119。Adaboost算法對待檢測圖像過濾之后添加膚色檢測繼續對檢測窗口進行過濾時,檢測窗口數量下降到51個,誤報檢測窗口數目下降到4個。運用本文提出的誤報縮減機制進過圖像篩選后,檢測窗口數量下降到37,誤報檢測窗口個數為0。由實驗結果表明,該方法能顯著減少遠距離人臉檢測中的誤報數量。

表2 相機獲取圖像檢測結果對比
針對Adaboost人臉檢測算法對遠距離圖像中的人臉識別誤報率高,本文提出了一種遠距離人臉檢測方法,用顏色與形狀信息將誤報被移除,檢測膚色和邊緣信息來確定候選窗口。實驗顯示,本文算法處理遠距離抓取圖像時,移除錯誤感興趣區域的性能要優于Adaboost算法,有較高的效率,實現了準確的人臉定位。該算法也具有一定的實用性,改變訓練樣本后,可以用來檢測其它物體。
[1]Pandya JM,Rathod D,Jadav JJ.A survey of face recognition approach [J].International Journal of Engineering Research and Applications,2013,3 (1):632-635.
[2]Zhang C,Zhang Z.A survey of recent advances in face detection [R].Tech Rep,Microsoft Research,2010.
[3]Chen S,Ma X,Zhang S.Adaboost face detection based on haar-like intensity features and multi-threshold features [C]//International Conference on Multimedia and Signal Processing.IEEE,2011:251-255.
[4]Dai W,Yang Q,Xue GR,et al.Boosting for transfer learning [C]//Proceedings of the 24th International Conference on Machine Learning.ACM,2007:193-200.
[5]Vincenzo R,Lisa U.An improvement of adaboost for face-detection with motion and color information [C]//14th International Conference on Image Analysis and Processing.IEEE,2007:518-523.
[6]Wu YW,Ai XY.Face detection in color images using Ada-Boost algorithm based on skin color information [C]//First International Workshop on Knowledge Discovery and Data Mining.IEEE,2008:339-342.
[7]KANG Jinfeng,WANG Guoying.Algorithm of skin detection based on color space YCgCr [J].Computer Engineering and Design,2009,30 (19):4443-4446 (in Chinese). [康進峰,王國營.基于YCgCr顏色空間的膚色檢測方法 [J].計算機工程與設計,2009,30 (19):4443-4446.]
[8]Tsai HC,Wang WC,Wang JC,et al.Long distance person identification using height measurement and face recognition[C]//Region 10Conference TENCON.IEEE,2009:1-4.
[9]Lee D,Yeom S,Kim S.Improved face detection method at a distance with skin-color and variable edge-mask filtering [J].Journal of the KICS,2012,37:105-112.
[10]Ma S,Du T.Improved adaboost face detection [C]//Inter-national Conference on Measuring Technology and Mechatronics Automation.IEEE,2010:434-437.
[11]YE Yanliang.Application of Adaboost algorithm in face detection [J].Journal of Beihua University (Natural Science),2007 (5):451-453 (in Chinese). [葉延亮.Adaboost算法在人臉檢測中的應用 [J].北華大學學報 (自然科學版),2007 (5):451-453.]