魏東,岳許要,章烈剽,黃宇恒
(1.廣州廣電運通金融電子股份有限公司,廣東 廣州 510700;2.廣州廣電卓識智能科技有限公司,廣東 廣州 510700)
人臉識別攻擊方式包括照片打印、視頻重放以及三維立體(3D)面具等,而在暗光、逆光、強光等不同光線下的人臉成像質(zhì)量差,往往導(dǎo)致人臉活體檢測算法無法有效甄別真假臉。目前,在活體檢測方面,有很多學(xué)者提出了諸多有研究價值的人臉活體檢測方法,大致可以分為三類:基于人工設(shè)計的方法、基于深度學(xué)習(xí)的方法和基于融合策略的方法[1]。
基于人工設(shè)計的方法采用傅里葉變換分析[2]、局部二值模式(Local Binary Pattern,LBP)[3]等算法捕捉二維圖像和三維圖像的紋理和頻率差異,對真假人臉進(jìn)行判斷;相較于傳統(tǒng)的手工特征,深度學(xué)習(xí)技術(shù)所提取的深度特征具有更豐富的語義信息,Luo 等人[4]提出多尺度深度特征融合的方法,用以解決人臉活體檢測問題;近紅外在真實人臉、紙張、面具上的反射率差異大于可見光,近年業(yè)界提出了融合可見光及紅外光圖像的人臉活體檢測算法,鄧等人[5]利用近紅外與可見光的映射關(guān)系實現(xiàn)特征點的匹配并獲取其深度信息,再利用深度信息進(jìn)行三維點云重建,以此實現(xiàn)抵御偽造人臉的攻擊。
基于近紅外與可見光的多模態(tài)活體檢測方法一定程度上推進(jìn)了活體檢測算法的落地應(yīng)用,但如何融合可見光、近紅外圖像的多模態(tài)特征仍是困擾業(yè)界的難題,本文提出一種基于注意力機制多特征融合的人臉活體檢測方法,解決算法精度不高的問題。針對邊緣設(shè)備硬件條件有限,無法運行復(fù)雜算法的技術(shù)問題,在MobileNetV2[6]核心模塊的基礎(chǔ)上重新設(shè)計本文的網(wǎng)絡(luò)結(jié)構(gòu)LiveFaceNetV1,降低算法推理階段的復(fù)雜度。
本文活體檢測算法架構(gòu)圖如圖1所示,首先,對雙目攝像頭可見光視頻和紅外視頻進(jìn)行抽幀,提取人臉圖像并進(jìn)行人臉對齊,接著通過局部引力模式PLGF[7]描述符將可見光圖像轉(zhuǎn)換成PLGF 特征圖,將PLGF 特征圖、紅外圖作為兩個支流分別輸入到LiveFaceNetV1 網(wǎng)絡(luò)中,為有效融合PLGF 特征圖特征、紅外圖特征,提出一種基于注意力機制的方法對特征進(jìn)行加權(quán)融合,最后對視頻中的人臉圖像進(jìn)行活體分類。
圖1 基于注意力機制融合的多模態(tài)活體檢測框架
本文根據(jù)雙目攝像頭活體檢測應(yīng)用場景的特點,以MobileNetV2 網(wǎng)絡(luò)結(jié)構(gòu)為基礎(chǔ)搭建了LiveFaceNetV1,其網(wǎng)絡(luò)結(jié)構(gòu)如表1所示。Conv_block 是卷積模塊,包括網(wǎng)絡(luò)的池化層、歸一化層以及PReLU 激活函數(shù);bottleneck 由Residual_conv 及Depth_Wise_conv 組成,結(jié)構(gòu)圖如圖2所示;t表示第一個1×1 卷積對通道數(shù)“擴張”的倍數(shù);c表示輸出通道數(shù);n表示bottleneck 重復(fù)的次數(shù);s表示重復(fù)的bottleneck 殘差塊中第一個殘差塊中深度卷積的步長;k表示最后輸出分類的類數(shù)。
表1 LiveFaceNetV1 網(wǎng)絡(luò)結(jié)構(gòu)
主要結(jié)構(gòu)修改如下:
(1)激活函數(shù)。修改激活函數(shù)為PReLU,在反向傳播過程中,使激活函數(shù)輸入小于零的部分也可以計算得到梯度,避免梯度方向鋸齒問題。(2)全局深度可分離卷積層。用全局深度可分離卷積層取代全局池化層,解決全局池化層每個單元權(quán)重統(tǒng)一,導(dǎo)致網(wǎng)絡(luò)獲取的信息不夠豐富的問題[8]。(3)bottleneck。借鑒了ResNet[9]殘差思想,提出網(wǎng)絡(luò)結(jié)構(gòu)既用殘差,同時采用逆轉(zhuǎn)殘差的方法重新設(shè)計殘差模塊Residual_conv 及Depth_Wise_conv,降低計算量,具體結(jié)構(gòu)如圖2所示。
圖2 Residual_conv 和Depth_Wise_conv
在視覺問題建模中,注意力模型是讓算法找到模型應(yīng)該重點關(guān)注的區(qū)域[10]。為了充分利用可見光、近紅外雙模態(tài)特征,本文采用一種基于注意力機制的特征加權(quán)求和的方式[11],關(guān)聯(lián)注意力機制,按照重要程度的不同為不同的特征分配不同級別的權(quán)重。在不增加模型參數(shù)的基礎(chǔ)上實現(xiàn)特征的自適應(yīng)加權(quán)融合。
如圖3所示,在人臉活體檢測中,將PLGF 特征圖、紅外圖作為兩個支流分別輸入到LiveFaceNetV1 網(wǎng)絡(luò)中進(jìn)行特征提取,分別記為f1、f2,需要學(xué)習(xí)與特征相對應(yīng)的權(quán)重{ωi,i=1,2},生成融合后的特征f。q用于過濾特征向量,過濾產(chǎn)生的向量di表示特征的重要性,將di代入式(3)中的softmax 進(jìn)行歸一化處理,獲得權(quán)值ω1和ω2。注意力模塊中q是需要學(xué)習(xí)的參數(shù),可通過反向傳播和梯度下降進(jìn)行訓(xùn)練。
圖3 基于注意力機制的特征融合
可見光攝像頭對光照敏感,光照變化會直接導(dǎo)致成像差異,影響活體檢測準(zhǔn)確率。為減少光照差異帶來的影響,將可見光拍攝的人臉圖像用局部引力模式PLGF(Pattern of Local Gravitational Force)進(jìn)行轉(zhuǎn)化。PLGF 是一種圖像描述符,無需進(jìn)行數(shù)據(jù)訓(xùn)練,是一種圖像轉(zhuǎn)化成另外一種圖像的表示方式,具有光照不變性。PLGF 的數(shù)學(xué)公式如式(4)所示。
其中,rn和xn分別表示原始圖像和處理過的圖像,Mx和My表示卷積核,*表示基于像素級的卷積操作。2 個卷積核的公式如式(5)和式(6)所示;p和q表示與中心相對位置的索引,在PLGF 模塊中,卷積核的大小設(shè)置為5,因此p、q的范圍分別為-2 ≤p、q≤2。
本文中的顏色通道差值圖構(gòu)建方法如圖4所示,具體步驟可描述為:
圖4 顏色通道差值圖算法處理過程
(1)分別計算人臉圖像R、G、B三個顏色通道中任意2 個顏色通道間的差值圖Dr-g、Dr-b、Dg-b,如式(7)、式(8)和式(9)所示。
(2)對上述3 個顏色通道差值圖進(jìn)行歸一化操作,可以得到歸一化顏色通道差值圖,歸一化方法如式(10)所示,其中Ddmax 為顏色通道差值圖中的最大值,Ddmin 為顏色通道差值圖中的最小值,Dd(x-y)為當(dāng)前像素值。
如圖5所示為真實樣本和彩色/灰度圖攻擊樣本對應(yīng)的紅綠藍(lán)通道圖像及其顏色通道差值圖像,從圖中可以看出經(jīng)過顏色通道差值處理后,相比于紅綠藍(lán)通道圖像,真實樣本和彩色/灰度圖攻擊樣本的區(qū)分度更高。
圖5 樣本的紅綠藍(lán)通道圖像和顏色通道差值圖像
(3)計算三通道差值圖方差的平均值。若方差平均值小于閾值,則認(rèn)為采集到的人臉是灰度假體人臉,若方差平均值大于閾值,則采信本文活體檢網(wǎng)絡(luò)的分類結(jié)果。根據(jù)實際經(jīng)驗,將閾值設(shè)置為30。
2.1.1 算法實施環(huán)境
本算法的實驗選擇在深度學(xué)習(xí)框架PyTorch 上進(jìn)行,模型的訓(xùn)練使用4 張Tesla P100 進(jìn)行加速訓(xùn)練,模型優(yōu)化器選擇Adam,學(xué)習(xí)率初始值設(shè)置為0.1,每完成10 輪訓(xùn)練改變一次學(xué)習(xí)率,改變后的學(xué)習(xí)率為前一次的0.1 倍;損失函數(shù)使用交叉熵;訓(xùn)練周期設(shè)置為50,每批次訓(xùn)練圖像128 張。
2.1.2 數(shù)據(jù)集
針對雙模態(tài)活體檢測算法的驗證,目前尚未有標(biāo)準(zhǔn)的專用數(shù)據(jù)集,本文按照銀行卡檢測中心BCTC 的活體測試標(biāo)準(zhǔn)進(jìn)行數(shù)據(jù)錄制、訓(xùn)練和測試驗證。為此我們開發(fā)一套人臉樣本數(shù)據(jù)錄制工具,人工采集了正常光、暗光、強光、逆光、陰陽光等不同光照條件以及40 cm 和80 cm 不同攝像距離下的樣本數(shù)據(jù),建立累計達(dá)2 403 200 張真人人臉檢測圖像的樣本數(shù)據(jù)庫,同時錄制累計915 280 張假體人臉數(shù)據(jù),所有的人臉圖像都是成對出現(xiàn),一張紅外人臉圖像對應(yīng)一張可見光人臉圖像,錄制圖像的分辨率都是640×480;訓(xùn)練集、驗證集和測試集的劃分比例為7:2:1,數(shù)據(jù)集的樣例如圖6所示。
圖6 數(shù)據(jù)庫樣本示例
自建數(shù)據(jù)庫樣本示例如圖6所示。我們從數(shù)據(jù)集中采集的樣本主要包括以下真實人臉、二維紙質(zhì)圖像、二維非紙質(zhì)圖像、二維重放圖像、三維面具、三維頭套、三維頭模等7 個種類,其中真實人臉樣本的旋轉(zhuǎn)角、傾斜角和俯仰角≤20°,對攻擊樣本的角度不做限制。
為了考察不同算法模型對活體算法的輕量化效果,本節(jié)主要給出一些現(xiàn)有算法的參數(shù)和計算量以及本文所提算法的參數(shù)和計算量,如表2所示,算法模型的輸入圖像大小為80×80×3。所有方法的參數(shù)和計算量主要取決于網(wǎng)絡(luò)的規(guī)模,最主要的就是卷積和全連接。相比主流輕量級骨干網(wǎng)絡(luò),本文所設(shè)計網(wǎng)絡(luò)結(jié)構(gòu)模型的參數(shù)和計算量均為最小。
表2 算法的參數(shù)和計算量對比圖
2.3 實驗評估與分析
為驗證本文方案的有效性,本節(jié)重點討論基于采集的測試數(shù)據(jù)集進(jìn)行測試結(jié)果分析。采用FAR(False Acceptance Rate)表示非活體人臉判定為活體人臉接受的概率;FRR(False Rejection Rate)表示活體人臉判定為非活體人臉拒絕的概率。Acc(Accuracy)為真人識別為真人和假體識別為假體的概率。
2.3.1 消融實驗
2.3.1.1 雙模態(tài)組合和可見光PLGF 特征圖實驗
基于本文的訓(xùn)練集、驗證集和測試集,按表3中輸入圖像類型進(jìn)行實驗比較。前三種為單模態(tài)圖像,后兩種為雙模態(tài)組合,組合方式為:(1)基于可見光圖、紅外圖兩種模態(tài)數(shù)據(jù)特征融合訓(xùn)練;(2)基于可見光計算三通道差值圖方差。實驗結(jié)果如表3所示。
表3 雙模態(tài)組合和可見光PLGF 特征圖實驗結(jié)果單位:%
從表3中可以看出,在使用測試樣本進(jìn)行測試時,單模態(tài)圖像在FAR 和FRR 表現(xiàn)方面均存在誤識,相比之下,紅外圖像效果最佳,但對比多模態(tài)組合方案,整體精度仍偏低。多模態(tài)組合方面,如果可見光不轉(zhuǎn)化為PLGF 圖,F(xiàn)RR 的數(shù)據(jù)顯著提高,真人容易被誤識別為假體。我們深究原因,可以得出可見光攝像頭對光照敏感,光照變化會直接導(dǎo)致成像差異,而PLGF 圖可以減少光照變化的影響,故可以降低FRR。
2.3.1.2 顏色通道差值圖算法輔助活體判斷
基于可見光的PLGF 特征圖、紅外圖多模態(tài)數(shù)據(jù)為輸入的網(wǎng)絡(luò)進(jìn)行訓(xùn)練。通過改變是否增加顏色通道差值圖算法,在自建數(shù)據(jù)集上進(jìn)行實驗。輸入圖像為可見光、紅外光拍攝人臉紙質(zhì)圖片各50 張,實驗結(jié)果如表4所示。
從表4中可以看出,在使用測試樣本進(jìn)行測試時,如果不增加顏色通道差值圖算法,紅外圖片可能會被誤識別為活體。我們深究原因,可以發(fā)現(xiàn)本文算法在進(jìn)行可見光的PLGF特征圖、紅外圖融合時,紅外圖片所占的權(quán)重比較大,從紅外圖片學(xué)習(xí)到的特征偏多。故本文增加顏色通道差值圖算法來過濾掉紅外圖的攻擊,作為最終判斷真?zhèn)蔚囊粋€輔助方法。
表4 增加顏色通道差值圖算法的實驗結(jié)果單位:%
2.3.1.3 基于注意力機制的特征融合方法
將基于注意機制的特征融合方法與特征平均(Features Average)、分?jǐn)?shù)平均(Score Average)等兩種常用的特征融合方法在自建測試數(shù)據(jù)集(測試集為真人240 320 張;假體91 528 張,后面實驗的測試集都用這個)上進(jìn)行了比較,結(jié)果如表5所示。
表5 比較不同的融合方法的實驗單位:%
從表5中可以看出,表格中的最后一行,是基于注意力機制的特征融合方式,與其他的特征融合方法相比較,數(shù)值都是最小的,且沒有出現(xiàn)拒識和誤識。實驗表明,基于注意力的融合方法的有效性,在自建測試數(shù)據(jù)集上都達(dá)到了最好的結(jié)果。
2.3.2 對比實驗
基于本文的訓(xùn)練集、驗證集、測試集,將本文模型與MobileNets 系列(MobileNetV2)、ShuffleNet 系列(Shufflenet V2)和改進(jìn)輕量化代表性版本(MobileViT)進(jìn)行實驗比較。組合方式是:(1)基于可見光圖、紅外圖兩種模態(tài)數(shù)據(jù)特征融合訓(xùn)練;(2)可見光計算三通道差值圖方差。實驗結(jié)果如表6所示。
表6 四種網(wǎng)絡(luò)模型比較實驗單位:%
從表6中可以看出,本文設(shè)計的骨干網(wǎng)路及活體檢測方案在誤識率、準(zhǔn)確率等方面明顯優(yōu)于MobileNetV2、ShufflenetV2、MobileViT 等模型。
本文針對在暗光、逆光、強光等不同光線條件下的人臉成像質(zhì)量差導(dǎo)致無法有效甄別真假臉,以及邊緣設(shè)備算力有限的問題,引入可見光、近紅外圖像雙模態(tài)圖像進(jìn)行分類,并利用基于注意力機制的融合方法對雙模態(tài)特征進(jìn)行融合,在此基礎(chǔ)上提出了輕量級骨干網(wǎng)絡(luò)提升算法的推理效率,解決人臉活體檢測的準(zhǔn)確性和實時性難題。
但本文算法訓(xùn)練和測試的采集樣本存在兩個制約:(1)光照條件的局限。雖然分5 個級別,但每種光線之間的光照沒有覆蓋;(2)采集硬件裝置的制約。不同的鏡頭、成像處理器等會導(dǎo)致采樣樣本的差異,影響算法精度。今后的研究重點是優(yōu)化采集樣本的廣度和覆蓋度,進(jìn)一步提升算法的泛化性能,使之能夠?qū)崿F(xiàn)覆蓋更多光線場景,更多的攝像頭硬件。