摘要:為解決角度變化下的人臉檢測中存在參數(shù)量大及角度幅度變量小的問題,提出區(qū)域漸進校準網(wǎng)絡(luò)用于任意平面角度的人臉檢測,通過級聯(lián)網(wǎng)絡(luò)結(jié)構(gòu)降低角度變化、提升網(wǎng)絡(luò)運行速度。采用區(qū)域生成網(wǎng)絡(luò)產(chǎn)生高質(zhì)量的候選區(qū)域,構(gòu)造漸進校準網(wǎng)絡(luò),逐步縮小面部平面角度變化范圍,同時由粗到細地對候選區(qū)域執(zhí)行面部檢測。其中,特征提取的中間層融合參數(shù)量較少時,更好地表示了面部特征,調(diào)整錨的設(shè)置解決小尺度面部問題。在角度增強的FDDB(face detection data set and benchmark)數(shù)據(jù)集與WIDER FACE數(shù)據(jù)集上的實驗結(jié)果表明,提出的方法分別取得了89.1%與90.4%的平均召回率,準確度高于快速區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Faster RCNN),且運行速度更快。在實際項目中使用該算法,驗證了該方法的有效性及可行性。
關(guān)鍵詞:人臉檢測;神經(jīng)網(wǎng)絡(luò);機器視覺;級聯(lián)網(wǎng)絡(luò);旋轉(zhuǎn)不變
中圖分類號:TP391 文獻標志碼:A 文章編號:1008-0562(2024)02-0248-09
0 引言
人臉檢測作為目標檢測的特定場景應(yīng)用,是計算機視覺中最基本和最具挑戰(zhàn)的問題之一。高性能的人臉檢測器是人臉相關(guān)研究的關(guān)鍵保證,如人臉對齊、人臉識別、年齡識別、表情識別和行為檢測等。得益于深度學(xué)習(xí)在目標、人臉檢測器上的成功應(yīng)用,人臉檢測器經(jīng)過多年發(fā)展也日趨成熟,其應(yīng)用場景逐漸復(fù)雜,當人臉檢測器被應(yīng)用于平面旋轉(zhuǎn)角度過大的人臉檢測時,由于面部的變化巨大,人臉檢測器要達到高性能十分具有挑戰(zhàn)性。對于大幅度角度變化下的人臉檢測,現(xiàn)有的方法包括適應(yīng)變化和縮小變化兩類。
適應(yīng)變化的方法是人臉檢測器用足夠的計算量來應(yīng)對人臉角度變化,檢測器能夠在面部發(fā)生大幅度變化的情況下保持高性能。如快速區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(faster region convolotional neural netwrok,F(xiàn)aster RCNN)采用基于區(qū)域的二階段結(jié)構(gòu),使用區(qū)域生成網(wǎng)絡(luò)提升候選面部區(qū)域的生成速度,并利用深度殘差網(wǎng)絡(luò)(residual network,Res50)、視覺幾何組模型(visual geometry group model,VGG16)作為基礎(chǔ)網(wǎng)絡(luò),其擁有很高的檢測準確度,在WIDER FACE數(shù)據(jù)集達到了92.7%的平均召回率,在多方位FDDB數(shù)據(jù)集上平均召回率為88%?;谌四槄^(qū)域的卷積神經(jīng)網(wǎng)絡(luò)(faceregion-based fully convolutional network,F(xiàn)aceRFCN)基于區(qū)域的全卷積網(wǎng)絡(luò),在(region-basedfully convolution net,R-FCN)基礎(chǔ)上提出位置敏感平均池化,重新計算了每個候選面部區(qū)域的權(quán)重,對面部的不同區(qū)域進行了重要性劃分,消除人臉部分中的非均勻分布影響,其在WIDER FACE數(shù)據(jù)集上平均精度達到了91.8%。單射多尺度檢測器(single shot multibox detector,SSD)是在基于錨的方法上提出的基于默認區(qū)域的候選區(qū)域生成方法,消除了提出生成區(qū)域后與特征圖重新采樣的時間消耗,在隨機翻轉(zhuǎn)的FDDB數(shù)據(jù)集上平均召回率為87.7%,并且運行速度更快。齊悅等提出在SSD的基礎(chǔ)上級聯(lián)多個淺層卷積神經(jīng)網(wǎng)絡(luò)(convolution neural network,CNN),達到了87.1%的精度。
縮小變化的方法是通過由粗到細的級聯(lián)方法調(diào)整與降低變化幅度,并在過程中檢測面部。例如漸進式校準網(wǎng)絡(luò)(progressive calibration networks,PCN) 采用滑動窗口形式生成候選區(qū)域,通過前兩個階段將候選區(qū)域的角度變化范圍從[-180°,180°]降低到[-45°,45°],最后階段再進行精確的檢測,3個階段均采用小型CNN,能夠快速檢測面部,每秒達到了30幀以上,在隨機翻轉(zhuǎn)的FDDB數(shù)據(jù)集上平均召回率為86%。文獻[16]提出了一種旋轉(zhuǎn)路由(rotation router)的人臉檢測器,將角度問題從檢測問題中提出并單獨解決。在級聯(lián)卷積神經(jīng)網(wǎng)絡(luò)(Cascade CNN)方法與文獻[17]的研究中將多個獨立的檢測器級聯(lián),由粗至精地縮小分類變化,使分類更加精確。
在目標檢測的研究中,級聯(lián)區(qū)域卷積神經(jīng)網(wǎng)絡(luò)(Cascade RCNN)將級聯(lián)結(jié)構(gòu)與Faster RCNN相結(jié)合,并取得了比Faster RCNN更為優(yōu)秀的性能,相比增加各個獨立的級聯(lián)子網(wǎng)絡(luò)復(fù)雜度的方法,參數(shù)量增量也更低。
為解決角度變化對人臉檢測帶來的時間消耗、參數(shù)量高及小尺度人臉檢測的問題,本文提出區(qū)域漸進校準網(wǎng)絡(luò)(region-base progresslve calibrationnetwork,RPCN),用于解決平面角度變化下人臉檢測問題,該網(wǎng)絡(luò)利用區(qū)域生成網(wǎng)絡(luò)(region proposalnetwork,RPN)降低滑動窗口生成候選區(qū)域所帶來的時間消耗,引入中間層融合與適合人臉檢測的錨設(shè)計技術(shù),將候選區(qū)域?qū)?yīng)的特征圖區(qū)域的校準旋轉(zhuǎn)變換后,使用高復(fù)雜度的基礎(chǔ)網(wǎng)絡(luò)增加漸進校準網(wǎng)絡(luò)(progressive calibration network,PCN)的檢測準度。提出特征圖變換感興趣區(qū)域池化(region ofinterest and region pooling,ROI_R_Pooling)層以解決網(wǎng)絡(luò)結(jié)合問題、改進網(wǎng)絡(luò)結(jié)構(gòu)并提升檢測器的性能,包括中間層特征融合、改進的非最大值抑制、預(yù)期最大重疊(EMO)等方法。
1 區(qū)域漸進校準網(wǎng)絡(luò)
區(qū)域漸進校準網(wǎng)絡(luò)(RPCN)將漸進校準網(wǎng)絡(luò)與基于區(qū)域的檢測方法結(jié)合,實現(xiàn)全旋轉(zhuǎn)平面角度下的人臉檢測,見圖1。方法由特征提取與融合、區(qū)域生成網(wǎng)絡(luò)、漸進面部檢測3個模塊組成。
給定一張可能包含人臉的圖像m。特征提取與融合模塊對整張圖像提取用于候選區(qū)域生成與面部檢測的特征f,并融合每個卷積塊的中間層輸出,使得特征圖包含更豐富的幾何信息。
區(qū)域生成網(wǎng)絡(luò)對原圖進行采樣,利用神經(jīng)網(wǎng)絡(luò)對每個采樣區(qū)域給出是否包含人臉的置信度與粗略的區(qū)域大小回歸值,生成高質(zhì)量的人臉候選區(qū)域p。
漸進面部檢測模塊結(jié)合特征廠與人臉候選區(qū)域p,對人臉候選區(qū)域逐步地執(zhí)行檢測與區(qū)域大小回歸,并同時縮小面部平面角度的變化范圍,從而實現(xiàn)任意平面角度變化下的人臉檢測。
1.1 特征提取與融合
特征提取與融合模塊從整張圖像中提取用于候選區(qū)域生成與人臉檢測的特征,見圖2。該模塊由卷積塊、最大值池化層與特征圖組合層組成,采用類似VGG16結(jié)構(gòu)以保持卷積塊間參數(shù)量一致。
對于輸入圖像m,特征提取表示為
F1=f(m),(1)
式中:F1為特征提取結(jié)果特征圖;f(·)為特征提取運算。受文獻[19]和文獻[20]的啟發(fā),將每個最大池化(max pooling)層之前各卷積塊的輸出融合以保留圖像中的幾何信息,使用步幅為2的3x3卷積層以匹配融合特征圖的大小,將中間層特征表示為Hi(i∈{0,1,2})。中間層特征融合表示為
F2 = g3 (g2 (g1(H0)+H1)+H2),(2)
模塊的輸出特征圖表示為
F= F1+ F2,(3)
式(2)和式(3)中:F2為特征融合結(jié)果特征圖;F為輸出特征圖;Hi為各特征提取卷積塊的輸出;gi為特征融合的計算卷積塊;“+”表示中間輸出層加法運算,即矩陣加法。
1.2 區(qū)域生成網(wǎng)絡(luò)
區(qū)域生成網(wǎng)絡(luò)(RPN)是利用深度網(wǎng)絡(luò)來產(chǎn)生候選面部的方法,RPN網(wǎng)絡(luò)結(jié)構(gòu)見圖3。
從特征圖Fdown16上各點出發(fā),將每個特征圖的點逐一線性映射至輸入圖像上,進行不同尺度的區(qū)域采樣,RPN計算各個采樣區(qū)域包含面部的置信度與回歸區(qū)域大小的微調(diào)值。模塊根據(jù)各個采樣區(qū)域的置信度通過指定閾值α=0.5對采樣區(qū)域過濾,生成可能包含人臉的候選人臉框。
網(wǎng)絡(luò)目標函數(shù)定義為
式中:Lcls為分類損失,采用二進制交叉熵;Lreg為邊框回歸損失,采用平滑L1損失函數(shù)(Smooth L1)損失并除以批次上的方差;λreg為損失平衡因子,取值為1。
經(jīng)過適應(yīng)人臉的設(shè)計,錨(Anchor)的尺寸設(shè)置為B={16,32,48,64,96,128,256,512},比例設(shè)置為S={1},見圖4。ZHU等的研究表明,減小采樣區(qū)域間距離、增大特征圖的大小可以有效增加Anchor對小尺寸(16像素×16像素)面部的包含程度,因此對尺寸B為16像素、32像素的Anchor進行了偏移,見圖5,其中Sa是下采樣倍數(shù)。
為增大特征圖的大小,對候選人臉框R進行調(diào)整。采用8倍下采樣的結(jié)果特征圖F作為檢測任務(wù)的輸入特征圖,由于R是區(qū)域生成網(wǎng)絡(luò)16倍下采樣產(chǎn)生,因此將R中每個候選人臉框的大小擴大4倍。為了減小二者轉(zhuǎn)換帶來的誤差,對擴大后的R進行變化為1的偏移,見圖6,將中心進行8個方向的偏移。
1.3 區(qū)域漸進校準檢測網(wǎng)絡(luò)
區(qū)域漸進校準檢測網(wǎng)絡(luò)采用三階段校準網(wǎng)絡(luò)結(jié)構(gòu)進行人臉檢測,見圖7。該網(wǎng)絡(luò)利用候選人臉框R提取特征圖F上的對應(yīng)區(qū)域特征組成區(qū)域特征Froi。每個Froi將被調(diào)整到256像素×7像素×7像素大小,并根據(jù)標志角1(α1)、角2(α2)旋轉(zhuǎn)變換Froi,隨后被饋送到級聯(lián)的3個漸進校準子網(wǎng)絡(luò)中,預(yù)測目標的角區(qū)間,逐步縮小角的變化范圍,同時進行面部或非面部分類、邊界框回歸。
3個級聯(lián)的漸進校準子網(wǎng)絡(luò)的目標任務(wù)大致相同,分別為是否包含人臉的分類、邊界框回歸值預(yù)測和預(yù)測平面旋轉(zhuǎn)角(rotation in place,RIP)范圍。在這3個階段中,上一階段的預(yù)測值用于對候選人臉框R更新,并作為下一階段的輸入。指定平面坐標y軸正方向為0°,前兩個子網(wǎng)絡(luò)將檢測目標的平面角度所屬范圍由[-180°,180°]降低到[45°,-45°],第三階段進行精確的人臉分類,從而檢測出平面內(nèi)任意角度變化的人臉。其中ROI_R_Pooling層是在感興趣區(qū)域池化(region of interest poling,ROI_Pooling)層的基礎(chǔ)上對區(qū)域?qū)?yīng)的特征圖進行旋轉(zhuǎn)變換,這也是本文方法與Cascade RCNN網(wǎng)絡(luò)結(jié)構(gòu)的不同之處,對區(qū)域特征Froi的旋轉(zhuǎn)變換可表示為
F=Froir(α1)r(α2),(5)
式中:r(·)為矩陣旋轉(zhuǎn)函數(shù);α1、α2為區(qū)間的變化角,用于計算特征圖的矩陣轉(zhuǎn)置與翻轉(zhuǎn)變換。
第一階段校準子網(wǎng)絡(luò)PCNi,對Froi進行是否包含人臉的分類、邊界框回歸、對RIP角度進行上下朝向的二元分類。Adjusti利用PCNi網(wǎng)絡(luò)預(yù)測結(jié)果,過濾掉人臉二分類中預(yù)測值小于0.37的候選人臉框R,利用邊界框回歸值計算新的候選人臉框Ri,第一階段RIP角度預(yù)測值用于al的計算
式中,Pagl1為PCNi對目標角度區(qū)間的預(yù)測概率。
第二階段校準子網(wǎng)絡(luò)PCN2,首先用新的候選框獲取新的區(qū)域特征Froi,并根據(jù)αi將Froi旋轉(zhuǎn)變換為Fn1,將角度變化由[-180°,180°]降至[90°,-90°]。第二階段的目標任務(wù)類似于第一階段,不同點是對RIP角度進行[90°,45°]、[45°,-45°]或[-45°,-90°]區(qū)間的三分類。Adjust2利用PCN2網(wǎng)絡(luò)的預(yù)測結(jié)果,對候選人臉框R1進行過濾與回歸,得到新的候選人臉框R2,第二階段RIP角度預(yù)測值用于α2的計算。
式中,d為分類值。
第三階段校準子網(wǎng)絡(luò)PCN3,ROL_R_Pooling層提取R2對應(yīng)的特征,根據(jù)α1、α2將所有Froi校準到RIP范圍為[45°,-45°]。同樣,對Fn2進行精確的是否人臉的分類、邊界框回歸。最后,Adust3以第三階段的人臉二分類結(jié)果與回歸值做過濾與邊框回歸得到最終的檢測結(jié)果。
PCN1、PCN2網(wǎng)絡(luò)的目標函數(shù)定義為
PCN3網(wǎng)絡(luò)的目標函數(shù)定義為
式(8)和式(9)中:λreg、λcal為平衡因子;j為網(wǎng)絡(luò)序號。在3個階段分別采用二進制交叉熵、交叉熵、Smooth L1損失;F為各階段的輸入特征圖,其數(shù)據(jù)的分布隨著漸進檢測變化。
網(wǎng)絡(luò)訓(xùn)練階段,采用聯(lián)合訓(xùn)練的方式對整體網(wǎng)絡(luò)進行訓(xùn)練,將區(qū)域生成網(wǎng)絡(luò)與漸進校準網(wǎng)絡(luò)聯(lián)合訓(xùn)練,將漸進校準各子網(wǎng)絡(luò)聯(lián)合訓(xùn)練,損失共同作用于特征提取與融合層。在研究中發(fā)現(xiàn),區(qū)域生成網(wǎng)絡(luò)產(chǎn)生的候選區(qū)域的中心點圍繞在檢測目標的附近,兩者中心點越靠近,對于大尺寸的檢測目標,其候選區(qū)域的置信度越高;而對于小尺寸目標,各個候選區(qū)域的置信度高于指定閾值后,不能依賴置信度進行基于投票的非最大值抑制(NMS)。因此,只對尺寸較大的候選區(qū)域使用基于投票的非最大值抑制策略,并選取置信度大于0.5的最多2 000個候選區(qū)域進行檢測。
2 實驗
2.1 數(shù)據(jù)集
在WIDER FACE數(shù)據(jù)集與FDDB數(shù)據(jù)集上對本文方法進行評估。WIDER FACE數(shù)據(jù)集中有61種不同場景、32 203張圖像和393 703個面部,其中包括的小尺寸、面部數(shù)量差異、照明、姿態(tài)等問題使得數(shù)據(jù)集很具有挑戰(zhàn)性。根據(jù)已有的研究,WIDER FACE數(shù)據(jù)集40%為訓(xùn)練集,20%為測試集,合并訓(xùn)練集與測試集可以提高檢測器性能。將WIDER FACE數(shù)據(jù)集人工進行基準框的方位區(qū)間標注,并將所提方法在此數(shù)據(jù)集上進行訓(xùn)練,在WIDER FACE數(shù)據(jù)集和FDDB數(shù)據(jù)集上進行測試與評估,包括召回率與時耗的評估。
在預(yù)訓(xùn)練模型上,使用Faster RCNN的官方預(yù)訓(xùn)練模型進行了基于層名稱對應(yīng)的參數(shù)初始化。
關(guān)于正負樣本的確定,本文研究的是人臉檢測,正樣本為標注到的人臉,負樣本為沒有標注的圖像上的所有區(qū)域(所有Anchor涉及的區(qū)域)。使用的WIDER FACE數(shù)據(jù)集中,剔除人臉尺寸低于12像素的原始圖像,其中負樣本占整體訓(xùn)練集的10%~15%。
2.2 實現(xiàn)細節(jié)
采用聯(lián)合交叉訓(xùn)練的訓(xùn)練方式。首先將區(qū)域生成網(wǎng)絡(luò)中采用了Faster RCNN的官方預(yù)訓(xùn)練模型進行基于層名稱對應(yīng)的參數(shù)初始化。其中,預(yù)訓(xùn)練50 000次,采用隨機梯度下降(stochastic gradientdescent,SGD)進行優(yōu)化,學(xué)習(xí)率固定為5×10-4,動量為0.9,圖像批次設(shè)為1,錨的設(shè)定增加了偏移。
在區(qū)域生成網(wǎng)絡(luò)的訓(xùn)練過程中,將交并比(intersection over union,IoU)分數(shù)最大或IoU分數(shù)高于0.7的錨定義為正樣本,低于0.3的定義為負樣本,正負樣本的比例為1:1,單批次樣本數(shù)目最大為256個。
檢測網(wǎng)絡(luò)中的3個子網(wǎng)絡(luò)也采用聯(lián)合交叉訓(xùn)練方式,作為驗證的最終結(jié)果。設(shè)置迭代次數(shù)為70 000,基本學(xué)習(xí)率為10-4,在50 000次迭代后降低為2xl0-5。參考Cascade RCNN的相關(guān)研究,設(shè)定3個子網(wǎng)絡(luò)IoU得分的上閾值分別為0.5、0.6、0.7,下閾值設(shè)為0.1,分別用于對檢測網(wǎng)絡(luò)中各個子網(wǎng)絡(luò)正負樣本進行選取。
在訓(xùn)練過程中,對WIDER FACE數(shù)據(jù)集圖像進行圖像轉(zhuǎn)置、翻轉(zhuǎn)增強,并將每張圖像調(diào)整至1 024/max(w,h)的比率,w、h為圖像的原始寬、高。為了提高對區(qū)域生成網(wǎng)絡(luò)輸出的篩選速度并保證小尺寸人臉被包含,將置信度大于0.5的最多2 000個錨作為候選區(qū)域,只對尺寸大于48像素×48像素的候選區(qū)域進行非最大值抑制。
2.3 對比實驗
將RPCN與其他先進方法進行比較,包括FasterRCNN方法、Cascade CNN方法、PCN方法、SSD500方法。Faster RCNN方法、SSD500方法使用WIDERFACE數(shù)據(jù)集進行訓(xùn)練,采用VGG16作為基礎(chǔ)網(wǎng)絡(luò),并隨機旋轉(zhuǎn)訓(xùn)練樣本圖像。Faster RCNN方法使用區(qū)域生成網(wǎng)絡(luò)生成的前2 000個候選框。Cascade CNN方法和PCN方法都是根據(jù)滑動窗口和圖像金字塔原理獲得所有候選人臉區(qū)域,并通過多個級聯(lián)的分類器漸進地對候選區(qū)域分類,將WIDER FACE與FDDB數(shù)據(jù)集混合,用于訓(xùn)練PCN與Cascade CNN,其中圖像隨機旋轉(zhuǎn)的角度區(qū)間遵循PCN中的方法,Cascade CNN采用與PCN相同的3個CNN子網(wǎng)絡(luò)來級聯(lián)實現(xiàn)。
遵循PCN中的方法,將FDDB數(shù)據(jù)集分別旋轉(zhuǎn)90°、180°、270°,形成FDDBup、FDDBdown、FDDBleft、FDDBright。將FDDB數(shù)據(jù)集分成4個子數(shù)據(jù)集,每個子數(shù)據(jù)集分別有3個角度,記作多方位FDDB數(shù)據(jù)集,并將面部的注釋調(diào)整為矩形框。所有方法在WIDER FACE數(shù)據(jù)集、多方位FDDB數(shù)據(jù)集上進行評估。
2.4 評估結(jié)果
(1)多方位FDDB數(shù)據(jù)集上的結(jié)果
圖8為多方位FDDB數(shù)據(jù)集上的ROC(receiveroperating characteristic)曲線。本文方法性能優(yōu)于Faster RCNN方法,在誤報為200時,比FasterRCNN方法性能更好。與PCN方法相比,本文方法在整體上性能占優(yōu),但是在誤報為1 00時稍遜于PCN方法。
(2)運行速度與精度的比較
提出RPCN是為了利用級聯(lián)結(jié)構(gòu)降低檢測任務(wù)的變化,以此來降低網(wǎng)絡(luò)的參數(shù)量,提高處理速度,并保持精度。將多方位FDDB數(shù)據(jù)集與隨機旋轉(zhuǎn)的WIDER FACE數(shù)據(jù)集中的圖像調(diào)整到1 024像素Auax(w,h)的比率,最小人臉尺寸(mini-face)分別設(shè)為16像素×16像素、48像素×48像素,在其上與其他的方法進行比較,表1和表2分別為2個數(shù)據(jù)集上誤報為200個的結(jié)果。
在多方位FDDB數(shù)據(jù)集上,本文方法的召回率高于Faster RCNN方法和SSD500方法,運行速度在最小人臉尺寸為48像素時達到每秒11幀,比Faster RCNN方法快得多。在WIDER FACE數(shù)據(jù)集上,召回率超過90%,RPCN方法的運行速度雖然比PCN方法低,但召回率優(yōu)于PCN方法,特別是處理小尺寸人臉時??傮w來看,RPCN方法相較于一階段方法,運行速度稍慢一些,但性能更好,并且在處理小尺寸人臉時也更有優(yōu)勢;相較于二階段方法,RPCN方法使用更少的參數(shù)量達到了更好的性能。
3 結(jié)論
提出了一個將區(qū)域的檢測網(wǎng)絡(luò)與漸進校準網(wǎng)絡(luò)相結(jié)合的方法,用于全旋轉(zhuǎn)平面角度的人臉檢測。所提出的方法對特征提取和區(qū)域生成網(wǎng)絡(luò)進行改進,通過級聯(lián)的檢測結(jié)構(gòu),逐步減小面部的角度變化并實現(xiàn)精確的人臉檢測。在多方位FDDB數(shù)據(jù)集與WIDER FACE數(shù)據(jù)集上的實驗結(jié)果驗證了所提方法的有效性。所提方法能夠采用較短的時間,完成角度變化大和小尺度人臉檢測與定位的任務(wù)。在方法的應(yīng)用前景中,本文方法不局限于對人臉的檢測,也可以運用到角度變化下的一般目標檢測,以及變化更加頻繁的圖像中的文字檢測。在接下來的研究中,將重點提高對三維角度變化的魯棒性。
基金項目:國家自然科學(xué)基金項目(62173171)