基於DNN的人臉識別中的反欺騙機制
想象一下,只需使用臉部即可解鎖手機,無需指紋掃描或觸控。它會在沒有任何使用者干預的情況下自動且完美地工作。是的,目前已經可以做到了這一點,它被稱為iPhone X,你可能已經在使用它了。
更好的未來是:使用人臉識別進行使用者身份驗證的潛力比這更大!在不遠的將來,我們能夠通過展示我們獨特的面部特徵來租一輛車,並簽署法律檔案。
實際上,我們已經開始看到需要身份驗證的某些服務(如銀行和其他型別的交易系統)。在這種情況下,所提供的法律資料將與檔案上的ID和麵部影象上的資料進行交叉檢查,並與所有者的面部進行比較。但是,像大多數新技術一樣,技術在創新,騙子也在創新。而欺騙人臉識別機制的最流行方式之一是“人臉欺騙”攻擊。
欺騙攻擊是指通過使用照片、視訊或授權人臉部的其他替代品來獲取其他人的特權或訪問權。
一些欺騙攻擊的例子:
列印攻擊:攻擊者將別人的照片列印或者顯示在數字裝置上。
重播/視訊攻擊:誘騙系統的更復雜的方式,通常需要一個受害者臉部的迴圈視訊。與保持某人的照片相比,這種方法可以確保行為和麵部運動看起來更自然。
3D掩碼攻擊:在這種型別的攻擊中,掩碼被用作欺騙的首選工具。這是一個比利用臉部視訊更復雜的攻擊。除了自然的面部運動之外,它還可以欺騙一些額外的保護層,例如深度感測器。
欺騙檢測方法
欺騙的方法有很多種,對應的我們有許多不同的方法來應對它們的挑戰。最流行的反欺騙最先進的解決方案包括:
面部生命力檢測:一種基於分析測試面如何“活著”的機制。這通常通過檢查眼球運動來完成,例如閃爍和臉部運動。
上下文資訊科技:通過調查影象的周圍環境,我們可以嘗試檢測掃描區域中是否有數字裝置或照片紙。
紋理分析:在這裡探測輸入影象的小紋理部分,以便在欺騙和真實影象中查詢圖案。
使用者互動:通過要求使用者執行動作(將頭部向左/向右轉動,微笑,閃爍的眼睛),機器可以檢測動作是否以與人類互動類似的自然方式進行。
當然,我們不能忽視房間裡的大象(指某種巨大到不可能被忽視的真相,而事實上如此巨大的大象常常被集體忽略。)——iPhone X上的FaceID。在最新的硬體迭代中,Apple推出了先進的深度對映和3D感應技術,可以以前所未有的精度實現欺騙檢測。但是,由於這種高階硬體在不久的將來將無法在大多數消費類裝置上使用,所以我們不得不進化我們的技術以保證我們可以避免被欺騙。
事實上,在我們的研究和實施過程中,我們發現使用中等質量的2D相機也可以實現極高水平的實時欺騙檢測。到底是什麼讓2D相機擁有如此高的檢測水準?答案就是當下最火的深度學習解決方案和自定義的神經網路。
我們通過與現有的文件化方法進行交叉檢查來驗證我們的方法。
交叉檢查1:影象質量評估
該解決方案基於將原始影象與用高斯濾波處理的影象進行比較。該論文的作者[1]證明了假影象之間的差異與真實影象之間的差異,並且可以自動檢測。為了做到這一點,我們提取了14種流行的影象質量特徵,例如:均方誤差,平均差或邊緣/角差。下一步是將它們傳送給分類器,以確定它是“真實”的臉還是“假的”臉。
圖1. IQA分類處理流程:將影象轉換為灰度,使用高斯濾波器,從原始影象和濾波影象之間的差異中提取14個特徵,將特徵傳遞給分類器。
交叉檢查2:影象失真分析
四種不同的特徵(鏡面反射、模糊、色度矩和色彩多樣性)被髮送分類器用於分類。分類器由多個模型構建而成,每個模型都訓練出不同型別的欺騙攻擊向量。
圖2. IDA分類過程流程:提取4個失真特徵,將它們傳遞給一組分類器,將結果傳遞給負責欺騙/非欺騙決策的分類器
最終方法:深度神經網路模型
這是基於用CNN(卷積神經網路,這是影象分析中最流行的神經網路)建立的模型。裁剪後的人臉影象被傳遞到神經網路,然後通過神經層進行處理,以將其分類為真實/假的。
圖3. DNN分類處理流程:將面部影象傳遞到CNN
訓練系統
上述所有解決方案都包含了需要監督學習才能返回正確結果的模型。訓練集是從站在攝像機前面的人們的影象構建的,或者拿著一個裝置,並在其上顯示他們的臉部。所有的面孔被裁剪並分成兩組:真實的和假的。這些影象是由中等解析度的800萬畫素相機拍攝的,這是一款在工業應用中使用的流行款式,三種方法都使用相同的訓練集。
訓練集示例
比較結果
對於效能測試,我們使用簡單的精確度、召回率和F1分數。所有三個實驗的結果顯示在下表中:
準確性和效能總結
欺騙示例
下一步是什麼?
所呈現的最先進的解決方案僅適用於2D重放/視訊攻擊。為了增加對更多型別攻擊的抵抗能力,DNN模型還可以通過使用紙質列印的攻擊示例擴充套件訓練資料來調整。另外,3D欺騙嘗試可以通過附加感測器來處理(例如深度)。
安全是一個不斷變化的問題,因為一旦引入新的保護方法,攻擊者就會不斷髮現新的方法來破壞系統,我們需要不斷髮明一些新的方法來對抗那些攻擊者!
來自:網易易盾
作者:ArturBaćmaga,YND的AI專家。
原文:https://mp.weixin.qq.com/s/eWomgNgoithRl-uZe99UtA
三個月從零轉行機器學習工程師!
相關文章
- 知物由學 | 基於DNN的人臉識別中的反欺騙機制DNN
- 基於PCA(主成分分析)的人臉識別PCA
- 【基於PCA的人臉識別演算法】從QR分解到PCA,再到人臉識別PCA演算法
- 基於深度學習的人臉識別系統系列(Caffe+OpenCV+Dlib)——【六】設計人臉識別的識別類深度學習OpenCV
- 帶你玩轉OpenHarmony AI:基於Seetaface2的人臉識別AI
- 基於深度神經網路的人臉識別相關問題神經網路
- 淺談基於Shapley值的資料融合反欺騙資料判斷相關
- 基於卷積神經網路的人臉表情識別應用--AR川劇變臉(一)卷積神經網路
- 基於卷積神經網路和tensorflow實現的人臉識別卷積神經網路
- SAP官方提供的人臉識別APIAPI
- 基於深度學習的人臉性別識別系統(含UI介面,Python程式碼)深度學習UIPython
- 一種基於隨機動作指令的人臉活體檢測技術,有效避免人臉識別系統被破解隨機
- 一個簡單的人臉識別庫
- DNS欺騙和ARP欺騙是什麼?有何區別?DNS
- 弱電智慧化系統中的人臉識別技術
- 面部識別必看!5篇頂級論文了解如何實現人臉反欺詐、跨姿勢識別
- 基於Javascript的人臉探測技術JavaScript
- .NET 開源的功能強大的人臉識別 APIAPI
- 初探堆疊欺騙之靜態欺騙
- 我們破解了幾乎所有旗艦手機的人臉識別,iPhone倖免於難iPhone
- 基於TensorflowLite的人聲識別在端上的實現
- 利用opencv 做一個簡單的人臉識別OpenCV
- Fabric基於Kafka的共識機制剖析Kafka
- 再探堆疊欺騙之動態欺騙
- 基於Emgu CV的人臉檢測程式碼
- 如何理解並實現一個簡單的人臉識別演算法(下):人臉識別演算法
- 基於Android平臺實現人臉識別Android
- 直播美顏SDK的人臉識別技術進階知識
- 基於Java實現的人臉識別功能,一切都為了寵粉(附原始碼)Java原始碼
- 基於卷積神經網路的人臉識別專案_使用Tensorflow-gpu+dilib+sklearn卷積神經網路GPU
- 用於星系的人臉識別:人工智慧為天文學帶來新工具人工智慧
- 欺騙機器學習模型機器學習模型
- DNS欺騙(轉)DNS
- 基於Python的人臉檢測與分類Python
- Java 基於ArcFace人臉識別2.0 服務端DemoJava服務端
- 【專案】Python人臉識別(GUI介面)—— 基於pyopencvPythonGUIOpenCV
- 得物技術基於自注意機制的影像識別演算法演算法
- YouGov:17%的約會應用使用者的動機是欺騙別人Go