姚東明,馬 川, 于 溪,吳建斌
(1.武漢市公安局 警務(wù)指揮中心,湖北 武漢 430030;2.華中師范大學(xué) 物理與科學(xué)技術(shù)學(xué)院,湖北 武漢 430079)
一種高效的人臉馬賽克方法
姚東明1,馬 川2, 于 溪2,吳建斌2
(1.武漢市公安局 警務(wù)指揮中心,湖北 武漢 430030;2.華中師范大學(xué) 物理與科學(xué)技術(shù)學(xué)院,湖北 武漢 430079)
針對(duì)現(xiàn)有人臉檢測(cè)方法速度緩慢的問(wèn)題,在詳細(xì)介紹結(jié)合類Haar特征和級(jí)聯(lián)AdaBoost人臉檢測(cè)算法原理及訓(xùn)練流程的基礎(chǔ)上,提出一種改進(jìn)的人臉檢測(cè)算法。該算法可以動(dòng)態(tài)調(diào)整Haar檢測(cè)函數(shù)的閾值和選取擴(kuò)展的Haar特征,并運(yùn)用OpenCV中圖像處理的基本算法實(shí)現(xiàn)較高準(zhǔn)確度和較快速度的人臉檢測(cè),可高效用于馬賽克處理。實(shí)驗(yàn)結(jié)果表明,該算法人臉檢測(cè)率達(dá)到95.41%,處理圖片時(shí)間約2.4ms/frame,計(jì)算復(fù)雜度低,且穩(wěn)定性較好,可廣泛用于人臉檢測(cè)中。
人臉馬賽克;人臉檢測(cè);級(jí)聯(lián)分類器;類Haar特征;OpenCV
高清攝像頭經(jīng)常在拍攝車輛信息的同時(shí),也會(huì)拍攝到乘車人的臉部信息。為保護(hù)隱私,在公布圖片時(shí),需要對(duì)人臉進(jìn)行馬賽克處理?,F(xiàn)階段主要是利用工具軟件自帶的Mosaic濾鏡功能對(duì)畫面進(jìn)行手動(dòng)處理,不但費(fèi)時(shí)費(fèi)力,而且圖片處理的效果也不理想。因此,有必要研究實(shí)現(xiàn)高效且準(zhǔn)確率高的人臉馬賽克處理方法。
人臉檢測(cè)是實(shí)現(xiàn)人臉馬賽克的一個(gè)重要步驟,人臉特征選取直接影響人臉檢測(cè)的精確性。目前,人臉特征選取方法大體可分為基于知識(shí)方法、基于統(tǒng)計(jì)方法、基于膚色模型方法3類。其中,基于知識(shí)的方法是在各種先驗(yàn)知識(shí)的基礎(chǔ)上建立人臉模型,再利用該模型達(dá)到人臉檢測(cè)的目的。如馬德智[1]和陳雁翔等[2]描述了一種基于高斯混合模型的目標(biāo)檢測(cè)方法;基于統(tǒng)計(jì)方法[3]是將向量機(jī)分為3層,分別對(duì)人臉圖像模型進(jìn)行多姿態(tài)協(xié)同人臉檢測(cè);趙海峰、孫姍姍等[4]對(duì)不同LBP特征值進(jìn)行融合再用于人臉檢測(cè);Nilsson等[5]利用具有較小計(jì)算代價(jià)的局部連續(xù)均值量化特征以及分裂稀疏網(wǎng)絡(luò)分類器進(jìn)行正面人臉圖像檢測(cè); 基于膚色模型方法[6,7]以李全彬等[8]為代表。上述方法均能取得較好的檢測(cè)效果,但也存在一些不足之處:馬德智、陳雁翔等的方法計(jì)算量大,實(shí)現(xiàn)過(guò)程復(fù)雜;滕少華等的方法運(yùn)算量大、耗時(shí)長(zhǎng),特征描述能力不足;趙海峰、Nilsson等的方法實(shí)時(shí)性較強(qiáng),但誤識(shí)率較高;李全彬等的方法在表情多樣的情況下,效果不是很理想。
為提高算法運(yùn)行效率,利用類Haar特征和Adaboost分類器在人臉檢測(cè)中的優(yōu)勢(shì)[9,10],本文提出了一種改進(jìn)的人臉檢測(cè)算法。該算法可以動(dòng)態(tài)調(diào)整Haar檢測(cè)函數(shù)的閾值和選取擴(kuò)展的Haar特征。實(shí)驗(yàn)結(jié)果證明該改進(jìn)算法能夠?qū)崿F(xiàn)不同人物、表情、姿態(tài)等的人臉檢測(cè)與馬賽克效果。
人臉檢測(cè)包括針對(duì)待檢測(cè)圖像的訓(xùn)練過(guò)程和檢測(cè)過(guò)程。訓(xùn)練過(guò)程主要是構(gòu)建包含類Haar特征信息的級(jí)聯(lián)AdaBoost分類器;檢測(cè)過(guò)程需提取人臉關(guān)鍵類Haar特征,借助級(jí)聯(lián)AdaBoost分類器判斷人臉存在性,最后將檢測(cè)后的人臉區(qū)域打上馬賽克。
預(yù)處理是人臉檢測(cè)的前提,其流程如圖1所示。注意到圖像在空間內(nèi)像素的高度相關(guān)性,故采用高斯濾波去除圖像噪聲。隨后采用灰度圖像進(jìn)行檢測(cè)降低背景干擾和減小計(jì)算量;再通過(guò)尺寸變換將圖像縮放到同一大小進(jìn)行處理;最后采用直方圖均衡化增強(qiáng)圖像對(duì)比度。
圖1 預(yù)處理流程
1.1 改進(jìn)型類Haar特征提取
使用類Haar特征能高效描述人臉邊緣輪廓,采用AdaBoost中的篩選式級(jí)分類器對(duì)特征進(jìn)行分類,多數(shù)初級(jí)弱分類器只有一層決策樹(stump)。表達(dá)式如式1所示:
(1)
其中,弱分類器h(x,f,p,θ)由子窗口圖像x,一個(gè)特征f,指示不等號(hào)方向的p和閾值θ組成。一層決策樹允許下面形式的決策:判斷特征f的值v大于某個(gè)閾值t,并判斷人臉,判斷抉擇如式(2)所示:
(2)
式(2)中vi是第i個(gè)特征點(diǎn)的特征值,t為設(shè)定的閾值。當(dāng)為人臉時(shí)判斷特征fi為+1,反之則為-1。對(duì)于閾值t的計(jì)算方法如下:
(1)對(duì)于每個(gè)特征fi,計(jì)算所有訓(xùn)練樣本的特征值,并將其排序,掃描一遍排好序的特征值,對(duì)排好序的表中的每個(gè)元素,計(jì)算圖像區(qū)域內(nèi)所有人臉樣本的權(quán)重之和t1;圖像區(qū)域內(nèi)所有非人臉樣本的權(quán)重之和t0;掃描此元素之前的人臉樣本的權(quán)重之和s1;掃描此元素之前的非人臉樣本的權(quán)重之和s0;
(2)在當(dāng)前元素的特征值Fki和它前面的一個(gè)特征值Fki-1之間選取閾值,閾值t表示為:
(3)
傳統(tǒng)的弱分類器選取該元素最小值作為最優(yōu)閾值,形成一個(gè)弱分類器。本文給出一種新的閾值選取計(jì)算公式:
(1)將該節(jié)點(diǎn)上的所有決策樹數(shù)據(jù)按照當(dāng)前元素進(jìn)行連續(xù)性的取特征值,得到序列{Fk1,F(xiàn)k2,…,Fki} ;
(2)在特征值取值序列{Fk1,F(xiàn)k2,…,Fki}生成分割點(diǎn),每個(gè)分割點(diǎn)根據(jù)當(dāng)前點(diǎn)的特征值和其決策樹上的一個(gè)特征值將閾值設(shè)定為:
(4)
其中,α,β為初始權(quán)值,對(duì)于不同的圖片樣本,需設(shè)置不同的權(quán)值。結(jié)合實(shí)驗(yàn)數(shù)據(jù),本文對(duì)平均大小 為693*692的圖像設(shè)定α=0.16,β=0.84,并在一定范圍內(nèi)調(diào)節(jié)窗口移動(dòng)步長(zhǎng),構(gòu)建最優(yōu)弱分類器。由于每個(gè)樣本總共可得到57 519個(gè)類Haar特征,計(jì)算量大,故采用Viola等[1]提出的方法,將積分圖像方法應(yīng)用到類Haar特征提取計(jì)算中,提高該系統(tǒng)獲取人臉特征的速度。
1.2 級(jí)聯(lián)AdaBoost算法
AdaBoost算法通過(guò)訓(xùn)練多個(gè)弱分類器,并把弱分類器按一定的權(quán)重加權(quán)構(gòu)成強(qiáng)分類器。在訓(xùn)練過(guò)程中,數(shù)據(jù)點(diǎn)分類錯(cuò)誤這個(gè)代價(jià)經(jīng)過(guò)一系列更新,使得后級(jí)弱分類器更加關(guān)注前級(jí)分類器分類錯(cuò)誤的數(shù)據(jù)點(diǎn)。機(jī)器學(xué)習(xí)過(guò)程中可能由于各種錯(cuò)誤(欠擬合、過(guò)擬合、模型無(wú)法學(xué)習(xí)數(shù)據(jù)等)導(dǎo)致分類失敗,AdaBoost算法的優(yōu)勢(shì)在于對(duì)每一個(gè)分類器學(xué)習(xí)過(guò)程中那些效果差的訓(xùn)練集再一次進(jìn)行加重學(xué)習(xí),使分類器性能最大化;在人臉檢測(cè)過(guò)程中,希望分類器的錯(cuò)誤拒絕率很大,而錯(cuò)誤識(shí)別率很小,可設(shè)置ROC曲線和混淆矩陣(見圖2、圖3)參數(shù)使操作點(diǎn)下降,即在允許一定錯(cuò)誤檢測(cè)率的基礎(chǔ)上,使得目標(biāo)錯(cuò)誤拒絕率很大。
圖2 ROC曲線 圖3 混淆矩陣
強(qiáng)分類器結(jié)構(gòu)如圖4所示,將包含類Haar特征的待測(cè)樣本送入級(jí)聯(lián)AdaBoost分類器中,只有被前一級(jí)強(qiáng)分類器判決為T的樣本才能被輸入到下一級(jí)強(qiáng)分類器,否則被判為非人臉樣本,只有通過(guò)了所有強(qiáng)分類器檢測(cè)的圖片區(qū)域才是有效人臉區(qū)域。
圖4 級(jí)聯(lián)AdaBoost分類器結(jié)構(gòu)
1.3 馬賽克效果
馬賽克效果是先把感興趣區(qū)域(RIO)分割成矩形的子矩陣,再把包含在子矩陣內(nèi)的像素按照一定的規(guī)則涂抹成相同的灰度值,本文提出4種涂抹方式如圖5所示。
圖5 馬賽克效果的涂抹方式
(5)
其中,x∈[0,m],y∈[0,n],矩陣m×n為子矩陣像素點(diǎn)的數(shù)目,分子則表示對(duì)應(yīng)子矩陣的像素值之和。
1.4 運(yùn)行測(cè)試
為驗(yàn)證文中方法的有效性和可行性,探尋級(jí)聯(lián)在人臉檢測(cè)中的作用,采用主頻為2.4GHz、Inter(R)Core(TM)i3-2370MCPU、4GB內(nèi)存的PC機(jī),借助vs2012和OpenCV2.4.8搭建仿真環(huán)境,測(cè)試結(jié)果如表1所示。實(shí)驗(yàn)采用的驗(yàn)證人臉庫(kù)為FERET和ORL標(biāo)準(zhǔn)人臉庫(kù)、多人臉圖像庫(kù)。
表1 不同級(jí)聯(lián)階數(shù)的檢測(cè)率和速度
由表1可以看出級(jí)聯(lián)在人臉檢測(cè)中的重要性,表中參數(shù)測(cè)量時(shí)間包含人臉檢測(cè)時(shí)間和實(shí)現(xiàn)馬賽克效果的時(shí)間,Size是對(duì)所有圖片的像素平均值??梢钥闯觯撍惴ㄔ趹?yīng)用于人臉檢測(cè)上具有較大的優(yōu)越性,增強(qiáng)分類器階數(shù)能小幅度提高人臉正確檢測(cè)率,而大大降低誤檢率是階數(shù)約為20時(shí),且檢測(cè)時(shí)間不會(huì)增加。對(duì)于平均690*493像素的圖片,平均用時(shí)0.4s,可以達(dá)到每天處理15萬(wàn)張以上的圖片的效率。從算法復(fù)雜性的角度,假定樣本數(shù)為N,特征的數(shù)量是M,傳統(tǒng)的人臉檢測(cè)方法復(fù)雜性是O(M×N),本文中改進(jìn)人臉檢測(cè)方法的復(fù)雜性為其一半,明顯優(yōu)于傳統(tǒng)方法。
圖6是待檢測(cè)圖像和處理后的圖像對(duì)比??梢钥闯觯疚闹械娜四橊R賽克效果可以成功將圖中任意位置的人臉進(jìn)行馬賽克處理。對(duì)于多姿態(tài)、多表情的人臉檢測(cè)及馬賽克效果檢測(cè)準(zhǔn)確率很高、處理效果較好,且不存在誤檢,且只會(huì)對(duì)人臉進(jìn)行馬賽克處理,而不影響后續(xù)對(duì)車輛的車牌、車身或其他部分進(jìn)行識(shí)別。
圖6 待檢測(cè)圖像和處理后圖像對(duì)比
本文在AdaBoost算法的基礎(chǔ)上,提出了一種動(dòng)態(tài)調(diào)整Haar檢測(cè)函數(shù)閾值的算法。采用參數(shù)選擇方法較大程度上簡(jiǎn)化了整個(gè)流程,解決了單純級(jí)聯(lián)AdaBoost算法的人臉檢測(cè)方法在復(fù)雜背景環(huán)境下魯棒性不佳的問(wèn)題。該算法動(dòng)態(tài)調(diào)整Haar檢測(cè)函數(shù)的閾值,并微調(diào)窗口移動(dòng)步長(zhǎng),通過(guò)閾值對(duì)窗口內(nèi)的目標(biāo)進(jìn)行精確搜索,實(shí)現(xiàn)高效進(jìn)行人臉檢測(cè)和馬賽克效果。實(shí)驗(yàn)結(jié)果證明了本文改進(jìn)算法相較于傳統(tǒng)算法有處理速度快和準(zhǔn)確率高的優(yōu)越性,能實(shí)現(xiàn)自動(dòng)化馬賽克處理,提高信息集成度,極大提高工作效率。
[1] 馬德智.基于高斯混合模型的運(yùn)動(dòng)目標(biāo)檢測(cè)方法研究與應(yīng)用,電子測(cè)量技術(shù),2013,36(10):47-50.
[2] 陳雁翔,李賡.基于AdaBoost的安全帶檢測(cè)系統(tǒng),電子測(cè)量技術(shù),2015,38(4):123-127.
[3] 滕少華,陳海濤,張巍.基于超球支持向量機(jī)的多姿態(tài)協(xié)同人臉檢測(cè),計(jì)算機(jī)應(yīng)用,2013,33(7):1988-1990.
[4] 趙海峰,孫姍姍等. 基于LBP算子和類覆蓋捕獲圖的人臉檢測(cè)算法,數(shù)學(xué)的實(shí)踐和認(rèn)識(shí),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] 劉春生,常發(fā)亮,陳振學(xué),等.改進(jìn)的高斯膚色模型及其在人臉檢測(cè)中的應(yīng)用[J].儀器儀表學(xué)報(bào),2012,33(5):1117-1121.
[7] 李全彬,王小明,劉錦高,等.復(fù)雜光照下的人臉膚色檢測(cè)方法[J]. 計(jì)算機(jī)應(yīng)用,2010,30(6):1594-1596.
[8] 李全彬,孫巧榆,劉錦高,等.復(fù)雜背景和光照多變的人臉檢測(cè)方法[J].計(jì)算機(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 特征與級(jí)聯(lián) AdaBoost 算法的防震錘識(shí)別,系統(tǒng)仿真學(xué)報(bào),2012,24(9):1806-1809.
(責(zé)任編輯:陳福時(shí))
華中師范大學(xué)中央高?;究蒲袠I(yè)務(wù)研究基金項(xiàng)目(CCNU15A02040)
姚東明(1974-),男,河南商丘人,碩士,武漢市公安局警務(wù)指揮中心一級(jí)警督,研究方向?yàn)橛?jì)算機(jī)視覺(jué)與智能視頻監(jiān)控;吳建斌(1972-),男,湖北黃梅人,博士,華中師范大學(xué)物理與科學(xué)技術(shù)學(xué)院副教授、碩士生導(dǎo)師,研究方向?yàn)橛?jì)算機(jī)視覺(jué)與隱身通信。
10.11907/rjdk.162321
TP317.4
A
1672-7800(2017)003-0167-03