姚東明,馬 川, 于 溪,吳建斌
(1.武漢市公安局 警務指揮中心,湖北 武漢 430030;2.華中師范大學 物理與科學技術學院,湖北 武漢 430079)
一種高效的人臉馬賽克方法
姚東明1,馬 川2, 于 溪2,吳建斌2
(1.武漢市公安局 警務指揮中心,湖北 武漢 430030;2.華中師范大學 物理與科學技術學院,湖北 武漢 430079)
針對現有人臉檢測方法速度緩慢的問題,在詳細介紹結合類Haar特征和級聯AdaBoost人臉檢測算法原理及訓練流程的基礎上,提出一種改進的人臉檢測算法。該算法可以動態調整Haar檢測函數的閾值和選取擴展的Haar特征,并運用OpenCV中圖像處理的基本算法實現較高準確度和較快速度的人臉檢測,可高效用于馬賽克處理。實驗結果表明,該算法人臉檢測率達到95.41%,處理圖片時間約2.4ms/frame,計算復雜度低,且穩定性較好,可廣泛用于人臉檢測中。
人臉馬賽克;人臉檢測;級聯分類器;類Haar特征;OpenCV
高清攝像頭經常在拍攝車輛信息的同時,也會拍攝到乘車人的臉部信息。為保護隱私,在公布圖片時,需要對人臉進行馬賽克處理。現階段主要是利用工具軟件自帶的Mosaic濾鏡功能對畫面進行手動處理,不但費時費力,而且圖片處理的效果也不理想。因此,有必要研究實現高效且準確率高的人臉馬賽克處理方法。
人臉檢測是實現人臉馬賽克的一個重要步驟,人臉特征選取直接影響人臉檢測的精確性。目前,人臉特征選取方法大體可分為基于知識方法、基于統計方法、基于膚色模型方法3類。其中,基于知識的方法是在各種先驗知識的基礎上建立人臉模型,再利用該模型達到人臉檢測的目的。如馬德智[1]和陳雁翔等[2]描述了一種基于高斯混合模型的目標檢測方法;基于統計方法[3]是將向量機分為3層,分別對人臉圖像模型進行多姿態協同人臉檢測;趙海峰、孫姍姍等[4]對不同LBP特征值進行融合再用于人臉檢測;Nilsson等[5]利用具有較小計算代價的局部連續均值量化特征以及分裂稀疏網絡分類器進行正面人臉圖像檢測; 基于膚色模型方法[6,7]以李全彬等[8]為代表。上述方法均能取得較好的檢測效果,但也存在一些不足之處:馬德智、陳雁翔等的方法計算量大,實現過程復雜;滕少華等的方法運算量大、耗時長,特征描述能力不足;趙海峰、Nilsson等的方法實時性較強,但誤識率較高;李全彬等的方法在表情多樣的情況下,效果不是很理想。
為提高算法運行效率,利用類Haar特征和Adaboost分類器在人臉檢測中的優勢[9,10],本文提出了一種改進的人臉檢測算法。該算法可以動態調整Haar檢測函數的閾值和選取擴展的Haar特征。實驗結果證明該改進算法能夠實現不同人物、表情、姿態等的人臉檢測與馬賽克效果。
人臉檢測包括針對待檢測圖像的訓練過程和檢測過程。訓練過程主要是構建包含類Haar特征信息的級聯AdaBoost分類器;檢測過程需提取人臉關鍵類Haar特征,借助級聯AdaBoost分類器判斷人臉存在性,最后將檢測后的人臉區域打上馬賽克。
預處理是人臉檢測的前提,其流程如圖1所示。注意到圖像在空間內像素的高度相關性,故采用高斯濾波去除圖像噪聲。隨后采用灰度圖像進行檢測降低背景干擾和減小計算量;再通過尺寸變換將圖像縮放到同一大小進行處理;最后采用直方圖均衡化增強圖像對比度。

圖1 預處理流程
1.1 改進型類Haar特征提取
使用類Haar特征能高效描述人臉邊緣輪廓,采用AdaBoost中的篩選式級分類器對特征進行分類,多數初級弱分類器只有一層決策樹(stump)。表達式如式1所示:

(1)
其中,弱分類器h(x,f,p,θ)由子窗口圖像x,一個特征f,指示不等號方向的p和閾值θ組成。一層決策樹允許下面形式的決策:判斷特征f的值v大于某個閾值t,并判斷人臉,判斷抉擇如式(2)所示:
(2)
式(2)中vi是第i個特征點的特征值,t為設定的閾值。當為人臉時判斷特征fi為+1,反之則為-1。對于閾值t的計算方法如下:
(1)對于每個特征fi,計算所有訓練樣本的特征值,并將其排序,掃描一遍排好序的特征值,對排好序的表中的每個元素,計算圖像區域內所有人臉樣本的權重之和t1;圖像區域內所有非人臉樣本的權重之和t0;掃描此元素之前的人臉樣本的權重之和s1;掃描此元素之前的非人臉樣本的權重之和s0;
(2)在當前元素的特征值Fki和它前面的一個特征值Fki-1之間選取閾值,閾值t表示為:
(3)
傳統的弱分類器選取該元素最小值作為最優閾值,形成一個弱分類器。本文給出一種新的閾值選取計算公式:
(1)將該節點上的所有決策樹數據按照當前元素進行連續性的取特征值,得到序列{Fk1,Fk2,…,Fki} ;
(2)在特征值取值序列{Fk1,Fk2,…,Fki}生成分割點,每個分割點根據當前點的特征值和其決策樹上的一個特征值將閾值設定為:
(4)
其中,α,β為初始權值,對于不同的圖片樣本,需設置不同的權值。結合實驗數據,本文對平均大小 為693*692的圖像設定α=0.16,β=0.84,并在一定范圍內調節窗口移動步長,構建最優弱分類器。由于每個樣本總共可得到57 519個類Haar特征,計算量大,故采用Viola等[1]提出的方法,將積分圖像方法應用到類Haar特征提取計算中,提高該系統獲取人臉特征的速度。
1.2 級聯AdaBoost算法
AdaBoost算法通過訓練多個弱分類器,并把弱分類器按一定的權重加權構成強分類器。在訓練過程中,數據點分類錯誤這個代價經過一系列更新,使得后級弱分類器更加關注前級分類器分類錯誤的數據點。機器學習過程中可能由于各種錯誤(欠擬合、過擬合、模型無法學習數據等)導致分類失敗,AdaBoost算法的優勢在于對每一個分類器學習過程中那些效果差的訓練集再一次進行加重學習,使分類器性能最大化;在人臉檢測過程中,希望分類器的錯誤拒絕率很大,而錯誤識別率很小,可設置ROC曲線和混淆矩陣(見圖2、圖3)參數使操作點下降,即在允許一定錯誤檢測率的基礎上,使得目標錯誤拒絕率很大。

圖2 ROC曲線 圖3 混淆矩陣
強分類器結構如圖4所示,將包含類Haar特征的待測樣本送入級聯AdaBoost分類器中,只有被前一級強分類器判決為T的樣本才能被輸入到下一級強分類器,否則被判為非人臉樣本,只有通過了所有強分類器檢測的圖片區域才是有效人臉區域。

圖4 級聯AdaBoost分類器結構
1.3 馬賽克效果
馬賽克效果是先把感興趣區域(RIO)分割成矩形的子矩陣,再把包含在子矩陣內的像素按照一定的規則涂抹成相同的灰度值,本文提出4種涂抹方式如圖5所示。

圖5 馬賽克效果的涂抹方式

(5)
其中,x∈[0,m],y∈[0,n],矩陣m×n為子矩陣像素點的數目,分子則表示對應子矩陣的像素值之和。
1.4 運行測試
為驗證文中方法的有效性和可行性,探尋級聯在人臉檢測中的作用,采用主頻為2.4GHz、Inter(R)Core(TM)i3-2370MCPU、4GB內存的PC機,借助vs2012和OpenCV2.4.8搭建仿真環境,測試結果如表1所示。實驗采用的驗證人臉庫為FERET和ORL標準人臉庫、多人臉圖像庫。

表1 不同級聯階數的檢測率和速度
由表1可以看出級聯在人臉檢測中的重要性,表中參數測量時間包含人臉檢測時間和實現馬賽克效果的時間,Size是對所有圖片的像素平均值。可以看出,該算法在應用于人臉檢測上具有較大的優越性,增強分類器階數能小幅度提高人臉正確檢測率,而大大降低誤檢率是階數約為20時,且檢測時間不會增加。對于平均690*493像素的圖片,平均用時0.4s,可以達到每天處理15萬張以上的圖片的效率。從算法復雜性的角度,假定樣本數為N,特征的數量是M,傳統的人臉檢測方法復雜性是O(M×N),本文中改進人臉檢測方法的復雜性為其一半,明顯優于傳統方法。
圖6是待檢測圖像和處理后的圖像對比。可以看出,本文中的人臉馬賽克效果可以成功將圖中任意位置的人臉進行馬賽克處理。對于多姿態、多表情的人臉檢測及馬賽克效果檢測準確率很高、處理效果較好,且不存在誤檢,且只會對人臉進行馬賽克處理,而不影響后續對車輛的車牌、車身或其他部分進行識別。

圖6 待檢測圖像和處理后圖像對比
本文在AdaBoost算法的基礎上,提出了一種動態調整Haar檢測函數閾值的算法。采用參數選擇方法較大程度上簡化了整個流程,解決了單純級聯AdaBoost算法的人臉檢測方法在復雜背景環境下魯棒性不佳的問題。該算法動態調整Haar檢測函數的閾值,并微調窗口移動步長,通過閾值對窗口內的目標進行精確搜索,實現高效進行人臉檢測和馬賽克效果。實驗結果證明了本文改進算法相較于傳統算法有處理速度快和準確率高的優越性,能實現自動化馬賽克處理,提高信息集成度,極大提高工作效率。
[1] 馬德智.基于高斯混合模型的運動目標檢測方法研究與應用,電子測量技術,2013,36(10):47-50.
[2] 陳雁翔,李賡.基于AdaBoost的安全帶檢測系統,電子測量技術,2015,38(4):123-127.
[3] 滕少華,陳海濤,張巍.基于超球支持向量機的多姿態協同人臉檢測,計算機應用,2013,33(7):1988-1990.
[4] 趙海峰,孫姍姍等. 基于LBP算子和類覆蓋捕獲圖的人臉檢測算法,數學的實踐和認識,2013,43(7):50-56.
[5] VIOLA P, Jones M. Robust real-time face detection [J]. International Journal of Computer Vision (S0920-5691), 2004, 57(2): 137-154.
[6] 劉春生,常發亮,陳振學,等.改進的高斯膚色模型及其在人臉檢測中的應用[J].儀器儀表學報,2012,33(5):1117-1121.
[7] 李全彬,王小明,劉錦高,等.復雜光照下的人臉膚色檢測方法[J]. 計算機應用,2010,30(6):1594-1596.
[8] 李全彬,孫巧榆,劉錦高,等.復雜背景和光照多變的人臉檢測方法[J].計算機工程,2009,45(18):22-24.
[9] VIOLA P,JONES M.Rapid object detection using a boosted cascade of simple features[C].In Proceeding of International Conference on Computer Vision and Pattern Recognition,Kauai, HI, USA2001, 1: 511 -518.
[10] LIENHART R, MAYDT J. An extended set of haar-like features for rapid object detection[C].The IEEE International Conference on Image Processing,NewYork,USA,2002:900-903.
[11] 金立君,閆書家,劉源.基于類 Haar 特征與級聯 AdaBoost 算法的防震錘識別,系統仿真學報,2012,24(9):1806-1809.
(責任編輯:陳福時)
華中師范大學中央高校基本科研業務研究基金項目(CCNU15A02040)
姚東明(1974-),男,河南商丘人,碩士,武漢市公安局警務指揮中心一級警督,研究方向為計算機視覺與智能視頻監控;吳建斌(1972-),男,湖北黃梅人,博士,華中師范大學物理與科學技術學院副教授、碩士生導師,研究方向為計算機視覺與隱身通信。
10.11907/rjdk.162321
TP317.4
A
1672-7800(2017)003-0167-03