








摘" 要: 為了應對針對人臉識別系統的欺騙攻擊,設計一種基于軟件的方法來檢測人臉欺騙攻擊。首先,從多個顏色通道中隨機提取局部視頻塊并將其向量化,隨后訓練并使用自編碼器將提取的向量進一步編碼為局部低維特征;接著,利用這些特征擬合一個高斯混合模型;然后,使用Fisher矢量編碼將來自同一樣本的全部局部低維特征聚合成一個全局特征向量;最后,通過支持向量機對這些全局特征進行分類。在三個標準人臉欺騙數據集上的實驗結果證明了該方法的有效性。在IDIAP數據集上的半錯誤率為0%,在CASIA數據集和MSU數據集上的等錯誤率分別為3.33%和2.08%。該方法結合自編碼器和Fisher矢量編碼,在低維特征的情況下取得了較高的性能,可以有效地抵抗人臉識別中基于照片和視頻的欺騙攻擊。
關鍵詞: 人臉識別; 欺騙攻擊; 人臉防偽檢測; 局部采樣; 自編碼器; Fisher矢量編碼; 特征提取
中圖分類號: TN911.73?34; TP391" " " " " " " " " "文獻標識碼: A" " " " " " " " " 文章編號: 1004?373X(2024)13?0001?06
Research on face spoofing detection based on auto?encoder and Fisher vector encoding
ZHOU Shanshan1, 2, ZHAO Xiaochao1, LI Zhe1
(1. School of Computer and Information Science, Hubei Engineering University, Xiaogan 432000, China;
2. School of Computer Science and Information Engineering, Hubei University, Wuhan 430062, China)
Abstract: A software?based face spoofing detection method is designed in order to cope with spoofing attacks against face recognition systems. Local video blocks are randomly extracted from multiple color channels and then vectorized. An auto?encoder is trained and employed to encode the extracted vectors into local low?dimensional features. These features are used to fit a Gaussian mixture model. The Fisher vector encoding is applied to aggregate all local low?dimensional features from the same sample into a global feature vector. These global features are classified by support vector machine (SVM). The experiments on three benchmark face spoofing datasets demonstrate the effectiveness of the proposed method. Its half total error rate (HTER) on the IDIAP dataset is 0%, and its equal error rates (EERs) on the CASIA dataset and MSU dataset are 3.33% and 2.08%, respectively. The proposed method is based on auto?encoder and Fisher vector encoding, and achieves high performance with low?dimensional features. In conclusion, this method can effectively and efficiently counter photo? and video?based spoofing attacks in the face recognition.
Keywords: face recognition; spoofing attack; face spoofing detection; local sampling; auto?encoder; Fisher vector encoding; feature extraction
0" 引" 言
如今,人臉識別技術已經融入到日常生活的各個方面,從解鎖手機到移動支付等應用都體現了人臉識別技術的便利性和安全性。另一方面,隨著人臉識別系統的廣泛應用,人們對其抵抗欺騙攻擊的能力產生了擔憂[1]。欺騙攻擊的目的是通過偽造系統用戶的面部信息(如打印照片、視頻回放、3D面具等方式[2])來欺騙人臉識別系統,從而非法地獲取系統權限。因此,提高人臉防偽檢測的性能對于提升人臉識別系統自身的安全性具有重要意義。
人臉防偽檢測任務本質上是一個二分類問題,其關鍵是提取和建模偽造人臉與真實人臉之間的差異信息。傳統方法主要使用手工定義的特征來訓練分類器,雖然能獲得良好的性能,但是通常需要使用很高維度的特征,這會限制它們在資源有限環境中的應用。例如,文獻[3]使用離散小波變換、局部二值模式和離散余弦變換來提取頻率?時空特征,雖然該方法性能較好,但是其特征維度高達15 104。與傳統方法不同,基于深度學習的方法直接從訓練數據中學習特征。由于深度學習技術在各種計算機視覺任務上表現出色,近年來該類方法備受關注。以文獻[4]為例,該方法首先使用自編碼器(Auto?Encoder)進行特征編碼,然后將編碼器的輸出用于訓練卷積神經網絡,取得了優于傳統手工特征的性能。
本文提出了一種基于自編碼器和Fisher矢量編碼的人臉防偽檢測方法(AE?FV),通過充分利用不同顏色通道中局部區域的像素信息,實現了使用低維特征取得較高的人臉防偽檢測性能。該方法的有效性在三個標準數據庫(CASIA、IDIAP和MSU)上都得到了驗證。相較于當前的最新方法,AE?FV具有較強的競爭力。
1" 算法設計
本節將詳細介紹AE?FV算法,其流程如圖1所示,主要包含顏色空間轉換、視頻塊提取及向量化、低維局部特征提取、全局特征編碼四個階段。
1.1" 顏色空間轉換
基于紋理分析的人臉防偽檢測廣泛采用彩色紋理。研究人員發現,人臉彩色紋理比灰度紋理包含更具區分性的信息,如人臉印刷缺陷、視頻偽影、噪聲特征等,而不同顏色通道的紋理特征具有一定的互補性[2]。因此,使用彩色紋理特征的人臉防偽檢測性能更好[5]。
文獻[5]證明了彩色紋理的互補性體現在顏色空間的色度和亮度分量中,這是因為人眼對亮度變化比對色度更敏感。通常,色域映射算法的焦點是在犧牲色度信息的前提下保留原始圖像中的局部亮度變化。盡管RGB空間的色度和亮度無法被充分分離,但HSV空間和YCbCr空間可以很好地分離色度(H、S、Cb、Cr)和亮度(V、Y),為人臉防偽檢測提供了互補信息。
因此,本文將RGB視頻轉換到HSV和YCbCr兩個色彩空間,并從多個顏色通道中提取特征用于區分真實人臉和偽造人臉。
1.2" 視頻塊提取及向量化
對于一個大小為[X×Y×Z]的訓練視頻,從視頻的不同顏色通道中隨機采樣視頻塊,采樣塊的大小為[D=d×d×d]。采樣時不做邊界拓延,故有效采樣塊的總數為[N=X-2 d2×Y-2d2×Z-2d2]。然后,從這些有效塊中隨機選取[M]個,將多個顏色通道的視頻塊向量化后拼接在一起,記為[fn∈RmD(n=1,2,…,M],[m]為顏色通道的個數)。最后,將來自[T]個訓練視頻的所有視頻塊向量組成一個矩陣[F'=[f1,f2,…,fT]∈RmD×TM]作為Auto?Encoder的訓練數據。
1.3" 低維局部特征提取
Auto?Encoder是一種無監督學習算法,主要包括兩個部分:編碼器和解碼器,如圖2所示。從輸入層到隱藏層的過程是編碼器,從隱藏層到輸出層的過程是解碼器。本文將使用[F']訓練一個Auto?Encoder網絡,然后將它的編碼器作為局部特征提取器。
自編碼器是一種簡單的神經網絡,它使用編碼器從圖像中提取低維局部特征,映射關系為[fθ1:xi→z],并使用解碼器重建圖像,映射關系為[fθ2:z→xRi],如圖3所示。其中,隱變量[z]可以作為輸入樣本的特征表示。
本文的自編碼器選擇了隨機梯度下降法作為優化器。[xi]與[xRi]之間的誤差包含均方誤差和[L2]正則化損失,損失函數為:
[τ(xi,xRi)=1Ni=1N(xi-xRi)+λi=1NW2i] (1)
式中:[1Ni=1N(xi-xRi)]表示均方誤差;[λi=1NW2i]表示[L2]正則化損失,[Wi]代表網絡權重,[λ]是正則化系數。損失函數越小,Auto?Encoder就越能從輸入樣本中提取本質特征。圖4顯示了訓練過程中損失函數的變化曲線,可以發現,在第500個周期時損失函數的值趨于穩定。因此,本文設置訓練周期(epoch)為500。
Auto?Encoder在神經網絡的非線性特征提取能力的幫助下能夠捕獲有區分性的特征。從功能上講,它類似于主成分分析。然而,與主成分分析相比,Auto?Encoder表現出更優越的性能[4],原因是主成分分析屬于線性變換,而Auto?Encoder屬于非線性變換,更能夠捕捉特征之間的復雜關系。
1.4" Fisher矢量編碼
利用1.3節得到的編碼器將[F']中的每一個向量編碼為一個長度為[L]的特征。然后利用期望最大法根據這些局部特征擬合一個高斯混合模型(Gaussian Mixture Model, GMM)。GMM的參數定義為[θ={μk,σk,λk:k=1,2,…,K}],其中,[μk]、[σk]、[λk]分別是第[k]個高斯分量的均值、方差和權重。該GMM模型即為Fisher矢量編碼的字典。
與訓練階段隨機采樣視頻塊不同,在特征編碼階段,本文將采用稠密采樣,即提取一個樣本中所有的有效視頻塊,并使用Auto?Encoder的編碼器將它們轉化為[N]個[L]維局部特征[fnNn=1]。在將這些局部特征編碼為一個全局特征之前,需要定義一個變量[φnk],它表示每個局部特征[fn]在第[k]個高斯分量上的權重,其定義為:
[φnk=λkPk(fn)j=1KλjPj(fn)] (2)
式中[Pk?]是第[k]個高斯分量的概率密度函數。
接下來執行Fisher矢量編碼:
[guk=1Nλkn=1Nφnkfn-μkσk] (3)
[gvk=1N2λkn=1Nφnkfn-μkσk2-1] (4)
式中:[guk]和[gvk]表示局部特征[fn]在第[k]個高斯分量上的一階和二階信息。最后,將它們拼接起來,形成一個長度為[2KL]的代表對應樣本的全局特征向量[F=guT1,guT2,…,guTK,gvT1,gvT2,…,gvTKT]。
2" 實驗設計與結果分析
2.1" 數據集
2.1.1" CASIA數據集
CASIA數據集由來自50個人的600個視頻(150個真實人臉視頻和450個欺騙攻擊視頻)組成。它包含三種不同類型的攻擊:回放視頻攻擊、剪切照片攻擊、彎曲照片攻擊。它還考慮了使用不同的視頻質量的攻擊:低質量、正常質量、高質量。其中,20人的數據用于訓練,其他的則作為測試集。
2.1.2" IDIAP數據集
IDIAP數據集包括來自50個人的1 200個視頻。其中,攻擊視頻包括打印的照片、電子屏幕展示的照片或播放的視頻。這1 200個視頻被分為三個部分:訓練集(來自15個人)、開發集(來自15個人)和測試集(來自20個人)。
2.1.3" MSU數據集
MSU數據集包括來自35個人的280個視頻,這些數據是由筆記本電腦和智能手機收集的。該數據庫考慮了兩種類型的欺騙攻擊:打印照片和回放視頻。其中,15人的數據用于訓練,其他的用于測試。
2.2" 測試方案
在本文實驗中采用了標準測試方案。訓練集用于構建模型,開發集用來找到分類閾值,測試集用來報告分類性能。在評估人臉防偽檢測性能時,需要根據閾值計算:錯誤拒絕率(False Reject Rate, FRR),即將真實人臉分類為偽造人臉的比率;錯誤接受率(False Accept Rate, FAR),即將偽造人臉分類為真實人臉的比率。當某個閾值使得FRR和FAR相等時,它們被稱為等錯誤率(Equeal Error Rate, EER)。半錯誤率(Half Total Error Rate, HTER)用于衡量整體檢測性能,其定義為HTER=[(FRR+FAR)2]。由于CASIA和MSU兩個數據集都沒有開發集,所以直接報告測試集上的EER。
2.3" 參數設置
本實驗有5個關鍵參數:每個訓練樣本中的采樣塊數([M])、3D塊大?。╗d])、不同顏色通道的組合、特征維度的長度([L])和GMM的高斯分量個數([K])。
對于參數[M],在每個訓練樣本中隨機選擇500個視頻塊(即[M]=500)。對于其他4個參數,根據經驗選擇其大致范圍為:[d]∈{3,5,7,9,11},[L]∈{10,20,30,40,50},[K]∈{10,20,30,40,50},顏色通道組合{HSV,RGB,YCbCr,HSV+RGB,HSV+YCbCr,RGB+YCbCr,HSV+RGB+ YCbCr}。本文先在IDIAP數據集上測試各種參數組合,在篩選出能獲得良好性能的參數后,直接使用這些參數在其他兩個數據集上進行實驗。值得一提的是,本文使用的是線性支持向量機,并且沒有調整參數[c],而是直接設置[c]=1來強調AE?FV的貢獻。
根據實驗結果,當只使用一個顏色空間時,HSV可以提供約2%的HTER,而使用RGB和YCbCr時,大多數情況下的HTER在2%~10%之間。當結合多個顏色空間時,HTER會顯著降低。特別是當[d]=3時,HSV+RGB和HSV+YCbCr的HTER都可以達到0%。但當[d]取其他值時,HSV+YCbCr的結果略好于HSV+RGB。因此,本文選定顏色組合HSV+YCbCr。
為了找到合適的參數[d],本文固定[L]=30,在IDIAP數據集上測試不同[d]值的性能。結果如圖5所示,不同[K]值的HTER通常隨著[d]的增加而上升,因此將[d]設置為3([d]=3)。[K]和[L]的值決定了全局特征的維度,因此[K]和[L]的選擇至關重要。保持3D塊的大小固定為[3×3×3],測試[L]和[K]之間的關系,結果如圖6所示。當[K]=50時,隨著[L]的增加,HTER在0~0.5之間波動。因此,本文選擇[K]=50。此外,當[K]=50時,雖然[L]=20和[L]=50的HTER都為0%,但考慮到全局特征的維度,本文選擇[L]=20。
2.4" 與現有的新方法進行比較
為了展示AE?FV的有效性,本節將其與當前的先進方法進行比較,所有對比方法的結果直接引用自公開文獻。
2.4.1" 在IDIAP數據集上的結果
在IDIAP數據集上與先進方法的性能比較結果見表1。從表1可以觀察到,AE?FV在IDIAP數據集上顯著優于其他方法(包括基于深度學習的方法)。盡管DWT?LBP?DCT[3]同樣表現出色,但它使用了15 104維的特征,而本文方法的特征維度僅為2 000。此外,還可以發現,基于深度學習的方法在人臉防偽檢測任務上的總體表現都不錯,體現了深度學習技術在特征提取方面的優勢。
2.4.2" 在CASIA數據集上的結果
在CASIA數據集上與先進方法的性能比較結果見表2。由表2可知,AE?FV在性能上優于大多數方法。基于深度學習的方法中,Two?Stream CNN[14]、3D CNN[15]和LBPNet[16],相對于AE?FV的優勢分別為0.66%、1.93%和0.83%,這些差距都在2%以內。但是,這些基于深度學習的方法至少包含50萬個參數,這可能會限制它們的實際應用?;谑止ぬ卣鞯姆椒ㄖ?,RCTR[8]和LBP+GS?LBP[9]的EER分別比AE?FV低1.53%和0.8%。但是,RCTR[8]以級聯的方式使用了三個分類器,因而無法確定其優異性能是否完全歸因于其特征定義。另一方面,LBP+GS?LBP[9]在采用高維度特征(6 372)的情況下取得了0.8%的微小優勢。
2.4.3" 在MSU數據集上的結果
在MSU數據集上與先進方法的性能比較結果見表3。如表3所示,共有8個方法在該數據集上進行了測試。其中,本文提出的AE?FV排名第二,EER為2.08%,僅落后RCTR[8]0.08%。此外,AE?FV是這8個方法中唯一采用深度學習方法提取基礎特征的一個,在防偽檢測及特征維度兩個方面都頗具競爭力,再一次說明了深度學習方法具有良好的特征提取能力。
3" 結" 語
本文提出了一種基于學習的特征提取方法AE?FV,以應對欺騙攻擊給人臉識別系統帶來的挑戰。首先,利用訓練數據的多個隨機視頻塊的信息進行Auto?Encoder和GMM學習;隨后,將所有樣本的局部隨機特征聚合成全局特征;最后,支持向量機將這些全局特征進行二分類。該方法在三個人臉防偽數據庫上進行了評估,結果顯示出良好的性能。與現有的人臉防偽檢測方法相比,AE?FV具有特征維度低且性能好的優點,適用于提升資源有限環境下人臉識別系統的安全性。
注:本文通訊作者為趙小超。
參考文獻
[1] SHARMA D, SELWAL A. A survey on face presentation attack detection mechanisms: Hitherto and future perspectives [J]. Multimedia systems, 2023, 29(3): 1527?1577.
[2] SHU X, TANG H, HUANG S C. Face spoofing detection based on chromatic ED?LBP texture feature [J]. Multimedia systems, 2021, 27(2): 161?176.
[3] ZHANG W L, XIANG S J. Face anti?spoofing detection based on DWT?LBP?DCT features [J]. Signal processing: Image communication, 2020, 89: 115990.
[4] ARORA S, BHATIA M P S, MITTAL V. A robust framework for spoofing detection in faces using deep learning [J]. The visual computer, 2022, 38(7): 2461?2472.
[5] BOULKENAFET Z, KOMULAINEN J, HADID A. Face spoofing detection using colour texture analysis [J]. IEEE transactions on information forensics and security, 2016, 11(8): 1818?1830.
[6] YEH C H, CHANG H H. Face liveness detection based on perceptual image quality assessment features with multi?scale analysis [C]// 2018 IEEE Winter Conference on Applications of Computer Vision (WACV). New York: IEEE, 2018: 49?56.
[7] ZHANG L B, PENG F, QIN L, et al. Face spoofing detection based on color texture Markov feature and support vector machine recursive feature elimination [J]. Journal of visual communication and image representation, 2018, 51: 56?69.
[8] DU Y T, QIAO T, XU M, et al. Towards face presentation attack detection based on residual color texture representation [J]. Security and communication networks, 2021(1): 1?16.
[9] PENG F, QIN L, LONG M. Face presentation attack detection using guided scale texture [J]. Multimedia tools and applications, 2018, 77(7): 8883?8909.
[10] PENG F, QIN L, LONG M. CCoLBP: Chromatic co?occurrence of local binary pattern for face presentation attack detection [C]// 2018 27th International Conference on Computer Communication and Networks (ICCCN). New York: IEEE, 2018: 1?9.
[11] PAN S, DERAVI F. Facial biometric presentation attack detection using temporal texture co?occurrence [C]// 2018 IEEE 4th International Conference on Identity, Security, and Behavior Analysis (ISBA). New York: IEEE, 2018: 1?7.
[12] ZHAO X C, LIN Y P, HEIKKIL? J. Dynamic texture recognition using volume local binary count patterns with an application to 2D face spoofing detection [J]. IEEE transactions on multimedia, 2017, 20(3): 552?566.
[13] CHEN F M, WEN C, XIE K, et al. Face liveness detection: Fusing colour texture feature and deep feature [J]. IET biome?trics, 2019, 8(6): 369?377.
[14] ATOUM Y, LIU Y J, JOURABLOO A, et al. Face anti?spoofing using patch and depth?based CNNs [C]// 2017 IEEE International Joint Conference on Biometrics (IJCB). New York: IEEE, 2017: 319?328.
[15] LI H L, HE P S, WANG S Q, et al. Learning generalized deep feature representation for face anti?spoofing [J]. IEEE transactions on information forensics and security, 2018, 13(10): 2639?2652.
[16] LI L, FENG X Y, XIA Z Q, et al. Face spoofing detection with local binary pattern network [J]. Journal of visual communication and image representation, 2018, 54: 182?192.
[17] REHMAN Y A U, PO L M, LIU M Y. LiveNet: Improving features generalization for face liveness detection using convolution neural networks [J]. Expert systems with applications, 2018, 108: 159?169.