◆張瑞國
基于卷積神經(jīng)網(wǎng)絡(luò)的區(qū)域人臉檢測研究
◆張瑞國
(山西水利職業(yè)技術(shù)學院信息工程系 山西 044000)
基于神經(jīng)網(wǎng)絡(luò)的區(qū)域人臉檢測方法已經(jīng)取得了一定的成功。本文提出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的區(qū)域人臉檢測方法,我們稱之為Face R-FCN。它比基于Face R-CNN的人臉檢測方法準確率更高,效率更快。該方法采用卷積殘差網(wǎng)絡(luò)作為主體,通過對目標區(qū)域進行平均池化操作、多尺度訓練和測試以及在線示例挖掘策略來提高檢測精度。用比較流行的人臉數(shù)據(jù)庫FDDB對網(wǎng)絡(luò)模型進行訓練,取得了比現(xiàn)有技術(shù)更好的性能。
卷積神經(jīng)網(wǎng)絡(luò);目標檢測;區(qū)域人臉檢測;多尺度信息融合
人臉檢測是目標檢測的重要組成部分,主要集中在R-CNN上并取得了良好的效果。但在復(fù)雜的多人臉圖像中,人臉檢測技術(shù)仍然面臨很多困難。如圖1所示,是一個多人臉圖像,由于遠近、尺度、光照等條件的影響,目前常用的區(qū)域檢測算法是Faster R-CNN,它是基于R-CNN人臉檢測算法。本文提出的R-FCN以全卷積殘差網(wǎng)絡(luò)為主體,通過TensorFlow深度學習模型框架來完成R-FCN網(wǎng)絡(luò)模型搭建,與基于R-CNN的方法相比,R-FCN提出了更少的區(qū)域?qū)哟芜M行平衡分類來完成模型的訓練和測試,完成了將卷積網(wǎng)絡(luò)與目標區(qū)域的結(jié)合,提高了訓練和測試效率及準確率[1-2]。
通過設(shè)計錨來對多人臉圖像中的面部進行錨定,根據(jù)面部尺寸的不同來設(shè)定錨的大小,由于面部尺寸、光照對檢測的影響不同,通過對目標區(qū)域進行平均池化操作生成嵌入特征來增強鑒別能力,從而消除面部各部位所帶來的不同影響。在這項工作中應(yīng)用了多尺度的訓練和測試策略。
圖1 多人臉圖像。綠框是不同的根據(jù)人臉尺寸所進行的錨定
Jones通過使用類似Haar的特征發(fā)明了一種級聯(lián)AdaBoost的人臉檢測模型[3]。許多工作都專注于開發(fā)更先進的和功能更強大的分類器。除了級聯(lián)方法外,DPM方法通過對人臉進行建模來檢測人臉面部發(fā)生的變化。
人臉檢測的最新進展主要得益于強大的深度學習方法?;诰矸e神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)模型取得了較好的效果。構(gòu)建級聯(lián)CNN,使用從粗到精的策略學習人臉檢測器。MT-CNN開發(fā)了多任務(wù)訓練框架共同進行人臉檢測和對齊。
工作總結(jié)如下:
(1)開發(fā)了一個基于卷積神經(jīng)網(wǎng)絡(luò)的人臉檢測模型,該模型考慮了多人臉圖像中的人臉特殊性。該方法稱之為Face R-FCN,它適合于多人臉圖像中的微小型人臉檢測。
(2)采用對目標區(qū)域進行平均池化操作生成嵌入特征來增強鑒別能力,代替以往對整張圖像進行平均池化操作的方式,從而消除圖像中非面部部位所帶來的影響。
(3)采用在線示例挖掘策略、多尺度方式訓練來提高Face R-FCN網(wǎng)絡(luò)模型的性能,提高網(wǎng)絡(luò)模型的準確率,提高檢測精度[4]。
本文從三個方面對R-FCN人臉檢測框架進行設(shè)計。首先,我們采用尺寸不同的錨來錨定尺寸不同的人臉圖像,以適合對微小面孔的檢測。第二,對錨定的目標進行平均池化操作來生成特征圖像以增強鑒別能力。第三,采用多尺度策略和在線示例挖掘(OHEM)策略進行模型訓練。具體細節(jié)如下:
R-FCN是一種用于區(qū)域檢測的全卷積神經(jīng)網(wǎng)絡(luò),最初用于目標檢測。與其他區(qū)域檢測(如Faster-RCNN)不同,R-FCN構(gòu)造了一個更深層次的完全匹配卷積網(wǎng)絡(luò)。R-FCN建立在152層ResNet的基礎(chǔ)上,由一個區(qū)域生成網(wǎng)絡(luò)(RPN)和一個R-FCN模塊組成。
R-FCN中的ResNet網(wǎng)絡(luò)起到了特征抽取器的作用。ResNet構(gòu)造了一個很深的神經(jīng)網(wǎng)絡(luò),能夠提取出具有高度代表性的圖像特征。這些特征擁有較大的感受野,為多人臉圖像中的微小人臉檢測提供了有利條件。ResNet網(wǎng)絡(luò)提取出特征圖像后,RPN錨定一批尺度不同的人臉圖像。這些人臉圖像進一步輸入到R-FCN模塊中的兩個同級位置池化層,完成圖像分類和檢測。
采用的R-FCN比R-CNN有兩個主要優(yōu)勢。首先,通過錨定微小人臉圖像將特征匯集在一起,將位置信息編碼到每個池化層,從而得到相應(yīng)位置的輸出特征圖;其次,將全連接層連接ResNet神經(jīng)網(wǎng)絡(luò),訓練出更具表現(xiàn)力的R-FCN網(wǎng)絡(luò)模型,以便于圖像分類和檢測。
為了更好地描述微小人臉,引入了更多的小尺度錨(比如,從1到64)。這些較小的錨非常有助于捕捉極其微小的面孔。除此之外,為位置敏感的池化區(qū)域設(shè)置了更小的池,以減少冗余信息,并對敏感區(qū)域進行平均池化操作,這將在下一節(jié)中描述。
在最初的R-FCN算法中,采用了全局平均池化操作匯集特征,將敏感區(qū)域池化后匯集到一個維度中,從而使面部每個位置的分布均勻。但是面部的每個部分所關(guān)注的程度并不相同。例如,在人臉識別方面,眼睛通常會比嘴得到更多的關(guān)注。因此,我們對敏感區(qū)域進行平均池化操作后對輸出的每個區(qū)域進行加權(quán)平均,以重新加權(quán)該區(qū)域,這就是目標區(qū)域平均池化。
采用多尺度的訓練和測試策略來提高網(wǎng)絡(luò)模型性能。在訓練階段,將輸入的最短邊調(diào)整為1024或1200像素。這個培訓策略使模型在檢測不同尺度的目標,特別是微小的人臉檢測上具有很強的魯棒性。
在線示例挖掘(OHEM)是一種簡單而有效的引導(dǎo)技術(shù)。在訓練過程中,對負樣本應(yīng)用OHEM,并設(shè)置正樣本和負樣本,每小批按1:3的比例進行訓練。
在測試階段,為每個測試圖像根據(jù)尺寸從大到小建立一個圖像金字塔。金字塔中的每個尺度都是獨立測試的。來自不同尺度的結(jié)果合并為圖像的最終結(jié)果。
我們使用FDDB數(shù)據(jù)集對R-FCN模型進行訓練及驗證。FDDB是全世界最具權(quán)威的人臉檢測評測平臺之一,包含2845張圖片,共有5171個人臉作為測試集。其中40%用于訓練,10%用于驗證,50%用于測試。
圖2 FDDB數(shù)據(jù)集部分圖像
一臺較高配置計算機、Linux操作系統(tǒng),i7處理器,64G內(nèi)存,4G顯存。
對權(quán)重參數(shù)的訓練類似于Face R-CNN。與Face R-CNN不同的是,使用在ImageNet上訓練的142層ResNet的預(yù)訓練權(quán)重來初始化網(wǎng)絡(luò)。具體地說,對模型最初的幾層的權(quán)重值,使用在ImageNet訓練好的權(quán)重參數(shù)。
在RPN階段,F(xiàn)aceR-FCN設(shè)定錨的多個配置,以便精確搜索人臉。將一系列多尺度錨和縱橫比結(jié)合在一起,構(gòu)建多尺度錨點。錨定到原始圖像以計算IoU分數(shù),IoU 的全稱為交并比,它計算的是 “預(yù)測的邊框” 和 “真實的邊框” 的交集和并集的比值。根據(jù)以下規(guī)則進一步做出分類:首先,具有最高IoU分數(shù)嚴格保持為正;其次,得分高于0.7錨定為正,第三,如果IoU分數(shù)低于0.3,則錨定為負。
R-FCN在處理過的錨上進行訓練,其中陽性樣本和陰性樣本分別定義為IoU大于0.5和介于0.1和0.5之間。采用非最大抑制(NMS)對具有一定IoU分數(shù)的錨進行正則化。
利用多尺度訓練,其中輸入圖像的大小調(diào)整與雙線性插值到不同刻度(例如,1024或1200)。在測試階段,通過將圖像縮放到圖像中進行多尺度測試一個圖像金字塔,用于更好地檢測微小型人臉圖像。
人臉檢測是計算機視覺領(lǐng)域的一個基本問題。本文提出了一種基于Face R-CNN的人臉檢測方法,它對微小型的人臉檢測具有較高的性能。通過比較R-CNN和R-FCN,設(shè)計出新的方法來改進專門用于人臉檢測的網(wǎng)絡(luò)模型。在FDDB數(shù)據(jù)集上對該方法進行了評價。實驗結(jié)果證明了該方法的優(yōu)越性。
[1]董瑞. 基于深度學習優(yōu)化的圖像壓縮框架研究[D].哈爾濱工業(yè)大學,2020.
[2]于璠.新一代深度學習框架研究[J].大數(shù)據(jù),2020,6(04):69-80.
[3]蘭勝坤.基于Adaboost算法的人臉檢測[J].電腦與信息技術(shù),2021,29(02):16-19.
[4]席威. 基于深度學習的多尺度目標檢測與分割算法研究[D].江南大學,2020.
山西水利職業(yè)技術(shù)學院2021年院級課題:基于卷積神經(jīng)網(wǎng)絡(luò)的區(qū)域人臉檢測研究(Jky202013)