吳秀 吳薇
摘 要:文中首先利用背景差分法檢測出輸入視頻中的運(yùn)動(dòng)目標(biāo),過濾掉背景對人臉檢測產(chǎn)生的干擾,然后在YCbCr色度空間建立膚色模型,利用膚色在該空間的聚類特性篩選出膚色區(qū)域,最后利用AdaBoost算法對膚色檢測的結(jié)果進(jìn)行處理,精確定位出人臉。與傳統(tǒng)AdaBoost檢測算法相比,所提方法充分利用視頻中的運(yùn)動(dòng)信息,極大地縮小了檢測范圍,提高了檢測速度。同時(shí),有效解決了膚色檢測在復(fù)雜背景下誤檢率高以及AdaBoost算法對多姿態(tài)人臉檢測率低的問題。
關(guān)鍵詞:人臉檢測;YCbCr色度空間;聚類特性;AdaBoost算法
中圖分類號:TP391.4 文獻(xiàn)標(biāo)識碼:A 文章編號:2095-1302(2018)09-00-03
0 引 言
隨著生物識別技術(shù)的全面高速發(fā)展,人臉識別逐漸成為一個(gè)熱門的研究課題。人臉識別技術(shù)包括人臉檢測、圖像預(yù)處理、特征提取以及匹配識別四個(gè)部分。其中,人臉檢測是整個(gè)識別過程的第一步,也是關(guān)鍵的一步,其目的是判斷輸入圖像或視頻中是否存在人臉并定位出人臉位置。
根據(jù)圖像來源的不同,人臉檢測分為靜態(tài)圖像人臉檢測和動(dòng)態(tài)圖像人臉檢測。人臉檢測方法主要分為基于知識的人臉驗(yàn)證方法和基于統(tǒng)計(jì)的學(xué)習(xí)方法[1]。目前,主流的基于圖像或視頻的人臉檢測方法有模板匹配法、主成分分析法、膚色模型以及AdaBoost算法等。這些檢測方法具有實(shí)現(xiàn)簡單、效果穩(wěn)定等優(yōu)點(diǎn),但同時(shí)也存在一些比較明顯的缺點(diǎn),如計(jì)算量大、檢測精度不高等。近年來,也有一些在以上方法的基礎(chǔ)上提出的改進(jìn)算法,文獻(xiàn)[2]提出一種將膚色檢測與AdaBoost算法相結(jié)合的檢測算法,文獻(xiàn)[3]在AdaBoost算法的基礎(chǔ)上提出兩組新的Haar-like特征。以上改進(jìn)算法雖然在縮小檢測范圍或提高檢測速度上有一定的改進(jìn),但在某些方面還存在不足,如沒有充分利用視頻圖像中的運(yùn)動(dòng)信息。本文進(jìn)一步研究視頻中的人臉檢測算法,將傳統(tǒng)的人臉檢測算法進(jìn)行優(yōu)化,降低計(jì)算量和誤檢率,提高檢測速度。
1 算法原理
1.1 背景差分法
背景差分法將視頻當(dāng)前幀像素值與背景圖像對應(yīng)點(diǎn)像素值相減,若差值大于某一設(shè)定閾值,則判定此像素屬于運(yùn)動(dòng)目標(biāo)范圍。背景差分法流程如圖1所示。
背景差分法的定義為:
式中:T為預(yù)先設(shè)定的閾值,若輸出值大于或等于閾值T,則將該點(diǎn)像素值置1,否則置0。
1.2 膚色模型
人臉膚色是進(jìn)行人臉與非人臉區(qū)分的顯著特征[4],并且可以與大多數(shù)背景的顏色相區(qū)分,具有較強(qiáng)的穩(wěn)定性。膚色不依賴于人臉的細(xì)節(jié)特征,對于人臉姿態(tài)、表情等的變化有較好的魯棒性,所以利用膚色特征在一定程度上可將人臉從背景圖像中分割出來。膚色特征主要由膚色模型表示,膚色模型是用于描述膚色在某個(gè)特定色度空間上的分布規(guī)律,膚色在色度空間內(nèi)呈聚類特性,利用這一特性,可以判斷輸入圖像中的某個(gè)像素是否屬于膚色區(qū)域。先利用膚色模型算法分割出膚色區(qū)域,再進(jìn)行后續(xù)處理,在一定程度上減小了檢測的計(jì)算量,提高了檢測速度。
1.3 AdaBoost算法
2001年,Paul Viola和Michael Jones首次引入了“積分圖像”的概念[5],提出了一種基于Haar-like特征的AdaBoost算法,實(shí)現(xiàn)了實(shí)時(shí)人臉檢測。該算法通過類Haar特征構(gòu)造分類器,特征值可以通過積分圖計(jì)算快速獲得。利用輸入的人臉和非人臉樣本訓(xùn)練出若干弱分類器,再將弱分類器通過一定的方法級聯(lián)成一個(gè)強(qiáng)分類器,最終完成目標(biāo)檢測。由于該算法可以快速計(jì)算特征值,因此極大地提升了檢測速度,并且具有較好的泛化性能。
2 改進(jìn)的人臉檢測算法
2.1 運(yùn)動(dòng)目標(biāo)檢測
在視頻圖像中,通常人都處于運(yùn)動(dòng)狀態(tài),所以可通過運(yùn)動(dòng)信息將人從背景中分割出來。運(yùn)動(dòng)目標(biāo)檢測即從輸入圖像序列中將運(yùn)動(dòng)區(qū)域與背景區(qū)域區(qū)分開來。目前,基于圖像序列檢測的方法主要有背景差分法[6]、光流法[7]及幀間差分法[8]三種。其中背景差分法將圖像序列的當(dāng)前每一幀圖像與背景圖像進(jìn)行比較,獲取運(yùn)動(dòng)目標(biāo),由于此方法計(jì)算量小、實(shí)時(shí)性好,并且對于運(yùn)動(dòng)目標(biāo)定位準(zhǔn)確,因此本文采用背景差分法完成圖像序列中的運(yùn)動(dòng)目標(biāo)檢測。
在輸入的圖像序列中,每隔固定時(shí)間獲取一幀圖像,每獲取K幀圖像就更新一次背景圖像。本文采用均值法進(jìn)行背景建模,即將獲取的K幀圖像的均值作為背景圖像。背景差分法處理后輸出的是一個(gè)運(yùn)動(dòng)二值圖像。像素值為1的像素點(diǎn)即為間隔時(shí)間內(nèi)發(fā)生變化的區(qū)域,由此可獲得視頻序列中的運(yùn)動(dòng)目標(biāo)。
原視頻幀圖像和運(yùn)動(dòng)目標(biāo)檢測后的結(jié)果分別如圖2、圖3所示。
2.2 膚色檢測
運(yùn)動(dòng)目標(biāo)檢測后,視頻中的運(yùn)動(dòng)物體就被鎖定了,接下來對單幀圖像進(jìn)行膚色檢測,篩選出人的膚色區(qū)域。膚色檢測是在特定的色度空間上利用已建立的膚色模型判斷輸入像素是否屬于膚色。常見的色度空間有RGB空間、歸一化RGB空間、HSV空間、HSI空間以及YCbCr空間[9]。目前大多數(shù)圖像采集設(shè)備采用RGB色彩空間,此色彩空間受亮度影響較大,不利于膚色分割。而YCbCr空間能較好地將亮度與色度分離,膚色在該空間上的聚類特性較好,因此本文采用YCbCr空間進(jìn)行膚色建模。RGB空間與YCbCr空間的轉(zhuǎn)換公式如下[10]:
式中:Y分量代表圖像的亮度信息;Cb和Cr代表顏色信息,Cb表示藍(lán)色,Cr表示紅色。
在YCbCr色彩空間上建立簡單膚色高斯模型,由高斯模型計(jì)算出圖像的膚色似然率,根據(jù)膚色似然率分割出膚色區(qū)域,生成膚色二值圖。為了提高檢測速度,在實(shí)際應(yīng)用中,膚色檢測只針對上一步檢測出的運(yùn)動(dòng)目標(biāo)。
原圖像與膚色檢測后的結(jié)果分別如圖4、圖5所示。
2.3 AdaBoost算法檢測
膚色檢測的優(yōu)點(diǎn)是不受人臉姿態(tài)、角度的影響,魯棒性較好。但當(dāng)圖像背景較復(fù)雜時(shí),背景圖像中的類膚色區(qū)域會(huì)被誤檢。另外,膚色檢測會(huì)檢測出人臉之外其他部位的膚色區(qū)域,這時(shí)需要進(jìn)一步處理篩選出人臉。本文采用AdaBoost算法完成,將膚色檢測后的結(jié)果作為AdaBoost級聯(lián)分類器的輸入,可以精確定位出人臉位置。AdaBoost算法將若干弱分類器級聯(lián)成強(qiáng)分類器完成人臉檢測,檢測速度快。弱分類器
3 實(shí)驗(yàn)結(jié)果及分析
3.1 實(shí)驗(yàn)平臺(tái)
硬件:Intel i5-3230M 2.60 GHz,內(nèi)存4 GB。
軟件:Matlab R2016a。
操作系統(tǒng):Windows 10。
3.2 實(shí)驗(yàn)結(jié)果
本文采用的數(shù)據(jù)集為網(wǎng)絡(luò)上搜集的25段視頻圖像,每段視頻大約20 s,并且均包含有人臉。分別使用傳統(tǒng)的AdaBoost人臉檢測算法、文獻(xiàn)[2]提出的改進(jìn)算法和本文提出的方法對以上視頻圖像進(jìn)行檢測,將三種方法的檢測效果進(jìn)行對比,結(jié)果見表1所列。
表1 三種算法檢測性能對比%
由表1可知,本文提出的檢測算法的準(zhǔn)確率、誤檢率都優(yōu)于前兩種方法。三種方法的人臉測試結(jié)果分別如圖8、圖9、圖10所示。
由圖7~圖9可知,傳統(tǒng)的AdaBoost方法對人臉存在一定的漏檢和誤檢;基于膚色檢測的AdaBoost算法首先將膚色區(qū)域檢測出來作為候選區(qū)域,然后進(jìn)行AdaBoost算法檢測,提升了人臉檢測率,但同時(shí)會(huì)將背景中的類膚色區(qū)域誤判斷為人臉;而本文方法的誤檢率和漏檢率都優(yōu)于前兩種方法,能更加準(zhǔn)確地檢測出視頻圖像中的人臉。
4 結(jié) 語
本文對傳統(tǒng)的AdaBoost檢測算法做了相應(yīng)的改進(jìn)。首先采用背景差分法檢測出視頻圖像中的運(yùn)動(dòng)目標(biāo),縮小檢測范圍,然后對上一步檢測結(jié)果進(jìn)行膚色檢測,排除掉非膚色區(qū)域,最后將膚色檢測結(jié)果輸入到AdaBoost級聯(lián)檢測器中,進(jìn)一步排除掉非人臉膚色區(qū)域,精確定位出視頻圖像中的人臉。由實(shí)驗(yàn)結(jié)果可知,本文提出的方法可顯著提高人臉檢測率,降低誤檢率和漏檢率,是一種有效的人臉檢測方法,但對于具有動(dòng)態(tài)背景的視頻圖像而言,本文方法的檢測效果不理想,而這也將是下一步研究的方向。
參考文獻(xiàn)
[1]梁路宏,艾海舟,徐光檔,等.人臉檢測研究綜述[J].計(jì)算機(jī)學(xué)報(bào),2002,25(5):449-458.
[2]李明瑞,傅明,曹敦.基于膚色檢測的AdaBoost人臉檢測算法改進(jìn)[J].計(jì)算機(jī)工程,2012,38(19):147-150.
[3]江偉堅(jiān),郭躬德,賴智銘.基于新 Haar-like特征的AdaBoost人臉檢測算法[J]. 山東大學(xué)學(xué)報(bào)(工學(xué)版),2014(2):43-48.
[4]王映輝.人臉識別:原理、方法與技術(shù)[M].北京:科學(xué)出版社,2010:163-164.
[5] VIOLA P,JONES M.Rapid object detection using a boosted cascade of simple features[C]// Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition,Kauai,Hawaii,2001:511-518.
[6] KARMANN K P.Moving object recognition using an adaptive background memory [C]// Time-Varying Image Processing and Moving Object Recognition,1990:289-296.
[7] HARITAOGLU I,HARWOOD D,Davis L S.W4:Real-time surveillance of people and their activities [J].IEEE transactions on pattern analysis and machine intelligence,2000,22(8):809-830.
[8] LIPTON A J,F(xiàn)UJIYOSHI H F,PATIL R S.Moving target classification and tracking from real-time video[J].IEEE workshop on applications of computer vision,1998:8-14.
[9]楊敏,王金庭.膚色檢測中的顏色空間[J]. 福建電腦,2006(7):48-49.
[10]畢雪芹,惠婷.基于膚色分割與AdaBoost算法的人臉檢測[J].國外電子測量技術(shù),2015(12):82-86.
[11] VIOLA P,JONES M.Robust real-time face detection[J].International journal of computer vision,2004,57(2):137-154.