AG
騰訊優圖
Main Idea
本文提出了一種簡單高效的anti-spoofing方法,不需要特別的硬件設備。利用了多幀RGB圖在不同光照條件下具有不同的反射。提出並定義了一種光參數序列light CAPTCHA,應用到人臉上,形成了具有不同反射效果的人臉幀。然後對其提取normal cues,該過程使用了Lambert’s Law。將normal cues輸入一個多任務CNN,第一個分支使用encoder+decoder估計深度信息(2D softmax + CE),然後再進行分類。另外一個分支對光參數進行迴歸,使用均方誤差。
Abstract
本文提出的方案是一種快速高效的anti-spoofing方法,已經被數百萬用戶使用。該方法首先通過光反射分析提取normal cues;然後使用一個端到端訓練的可訓練的多任務CNN不僅恢復對象的深度信息以輔助活體判斷,同時還在迴歸分支中提供了light CAPTCHA(光驗證碼)檢查機制,進一步提升系統的穩定性。此外,本文還蒐集了一個12000活體和非活樣本的數據集,包括豐富的圖像質量和攻擊模式。
1.Introduction
本文的方法主要包括兩個部分:
- 以Lambertian model爲基礎,產生動態變化的光驗證碼,並從反射幀中提取normal cues.
- 使用一個端到端的多任務網絡來同時判斷活體與非活,並同時迴歸光驗證碼。前者使用normal cues估計深度,判斷活體與非活;後者迴歸光參數的機制用於處理一種特殊的攻擊modality spoofing。
***Q:什麼是modality spoofing?***
後面的實驗部分有詳細講
Contribution
- 提出了一種簡單高效的anti-spoofing方法,在實際場景中不需要特別的硬件設備支持就可以應用。
- 提出了一種cost-free的深度恢復網絡,通過從反射幀提取出來的normal cues即可以恢復深度進行活體分類。
- 一種新的光驗證碼檢查機制可以提升對抗攻擊的安全性,尤其是modality spoofing。
- 建立了一個具有廣泛的攻擊模式和各種圖像質量的數據集。
2.Related Work
Tan, Chan等已經使用Lambertian反射對anti-spoofing進行研究,但是取得的效果卻非常有限。本文的主要區別在於:
- 本文使用光源產生隨機參數的光序列,形成不同的光反射。
- 本文建立了一個迴歸分支,形成光驗證碼檢查機制。
- 使用DNN學習,而前面的工作都是基於手工設計的特徵。
3.The Proposed Method
本文方法的流程如圖09-1所示。使用手機的前置攝像頭和光源產生隨機參數的光序列$r=\{(\alpha_i,\beta_i)\}_{i=1}^n$
並且採集到$n$
幀圖片$F_r$
,順序估計normal cues$N$
,輸入CNN中進行預測,並回歸光驗證碼$\hat{r}$
,最終的判斷綜合考慮預測結果和$\hat{r}$
與$r$
的匹配結果。
[外鏈圖片轉存失敗(img-uW0iIrwO-1568520402635)(https://github.com/douyh/PaperReading/raw/master/pic/09-1.jpg)]
圖09-1
3.1 Normal Cues from Light Reflection
Lambert’s Law(朗伯定律)認爲反射部分在漫射表面的所有方向上都是相等的。即任意像素點$p$
在特定光照$L_r$
下的光強$F_r(p)$
可以表示爲:
F_r(p)=\rho_p(k_a+k_r\boldsymbol{l}\cdot \boldsymbol{n_p})
其中$k_a, k_r$
分別是環境權重和漫反射權重。$\rho_p$
是反射率,$\boldsymbol{l}$
是光源方向,$\boldsymbol{n_p}$
是法線。當光照變化的時候$k_a,\boldsymbol{l}$
是不變的,使用PRNet (Feng) 得到的人臉關鍵點估計的轉換矩陣來對齊不同圖片對之間的$p^\prime,p$
,那麼在另外一個光照$L_r^\prime $
下的另外一幅圖片,對應點$p^\prime$
的光強:
F_{r^\prime}(p)=F_{r^\prime}(p^\prime)=\rho_{p^\prime}(k_a+k_{r^\prime}\boldsymbol{l}\cdot \boldsymbol{n_{p^\prime}})
每個點的標量積結果:
N_{\triangle r}(p)=\boldsymbol{l}\cdot \boldsymbol{n_p}=\frac{F_r(p)-F_{r^\prime}(p)}{k_r-k_{r^\prime}}
通過各個點的標量積的結果組成的圖就是normal cue。
Q2:$\rho$
不變且爲1?
3.2Multi-Task CNN
- 活體判別
將normal cues輸入到一個encoder-decoder結構的網絡中,得到深度圖,再被送入到一個簡單的分類結構中以區分3D人臉和2D的攻擊。使用交叉熵作爲損失函數,在深度圖恢復部分,使用了2D像素級的softmax和交叉熵。如圖09-2:
[外鏈圖片轉存失敗(img-ehJ3NcSi-1568520402636)(https://github.com/douyh/PaperReading/raw/master/pic/09-2.jpg)]
圖09-2
網絡結構如圖09-3
[外鏈圖片轉存失敗(img-2ZGyOLWM-1568520402636)(https://github.com/douyh/PaperReading/raw/master/pic/09-3.jpg)]
圖09-3
- 光參數迴歸
把normal cues輸入到迴歸分支中,損失函數
\mathcal{L}_{reg}=\frac{1}{m}\sum_{i=1}^m\{||\mathcal{R}(\mathcal{S}(N_i))-\triangle r_i||^2\}
其中$\mathcal{R}$
表示迴歸網絡,$\triangle r_i$
是兩幀$F_{r_i},F_{r_{i-1}}$
的光參數GT的差。
假設訓練集中有$V$
個視頻,整個網絡的損失函數可以表示爲:
[外鏈圖片轉存失敗(img-evdzbbA0-1568520402636)(https://github.com/douyh/PaperReading/raw/master/pic/09-4.jpg)]
圖09-4
在實際中,光驗證碼序列由4中隨機次序的光組成,平衡了驗證碼的檢查和複雜度。光照變化與幀率相同,這樣幀會有不同的光反射。$F,r$
的長度等於$m+1$
,使用SNR來檢查光參數序列與GT是否匹配。
3.3Dataset Collection
本文采集了一個數據集,其樣本是通過投射動態光序列到目標上,並錄製30fps的視頻得到的。主要採集的是2D攻擊的照片。包含12000個live和spoof的video,平均時長3秒,包括200個對象,50種採集設備,print, replay, modality和光投影spoof。
4.實驗
ablation study
$\lambda_{depth}$
深度信息的監督可以幫助提高分類的準確率。
分類分支可以比較好的解決大部分正常的2D攻擊,但是仍然對modality spoofing表現很差。這種攻擊方式直接僞造需要的反射模式。當滿足以下兩種情況的時候,modality spoofing會使分類網絡失效。
- 之前捕獲的原始視頻是由面部反射幀組成,其中包含真實的反射模式,被高分辨率屏幕泄露和重放。
- 在攻擊試驗捕獲過程中,投射光不干擾視頻幀中人臉的原始反射。
圖09-5描述了光驗證碼對抗這種攻擊的原理。
[外鏈圖片轉存失敗(img-YYQQWojs-1568520402637)(https://github.com/douyh/PaperReading/raw/master/pic/09-5.jpg)]
圖09-5
圖09-6是使用SNR來比較迴歸參數和GT的圖。
[外鏈圖片轉存失敗(img-arFZt0ck-1568520402637)(https://github.com/douyh/PaperReading/raw/master/pic/09-6.jpg)]
圖09-6
光驗證碼是由4種隨機次序投射的光組成。modality spoofing通過錄制這4種面部反射,並重復播放3000遍。固定的視頻循環必須匹配到隨機產生的光驗證碼,才能通過系統,而使用了光驗證碼的檢查機制之後,極大提高了對modality spoofing的抵抗能力。
圖09-7展示了本文的深度估計方法和當前的anti-spoofing的深度估計方法的對比。本文的深度GT是通過intel的深度攝像頭採集得到的。
[外鏈圖片轉存失敗(img-oBjZCQn9-1568520402638)(https://github.com/douyh/PaperReading/raw/master/pic/09-7.jpg)]
圖09-7
圖片09-8和09-9展示了本文的方法在自採數據集和公開數據集上的表現。由於公開數據集的活體數據沒有光驗證碼,因此只能測試FAR指標。
[外鏈圖片轉存失敗(img-BciLYnkS-1568520402638)(https://github.com/douyh/PaperReading/raw/master/pic/09-8.jpg)]
圖09-8
[外鏈圖片轉存失敗(img-12PDI7fs-1568520402639)(https://github.com/douyh/PaperReading/raw/master/pic/09-9.jpg)]
圖09-9
實驗結果表明本文提出的方法在HATER,錯誤率,泛化性能,運行時間上與SOTA方法進行了對比,具有相當的優勢。和基於硬件的SL3D方法有相當的效果。
一些問題:
1.深度迴歸是直接通過RGB來做的,是用的深度攝像頭的GT來訓練的嗎?
深度信息
2.光驗證碼這部分的細節和modality spoofing。
參考
https://zhuanlan.zhihu.com/p/61100492