應用層下的人臉識別(三):人臉比對
本文作者根據多年人臉識別專案經驗,總結了人臉識別技術在安防、商業領域應用及產品設計細節,彙總成應用層下的人臉識別系列文章。本文為系列文章的第三篇——介紹人臉比對相關內容。全文圍繞人類比對型別、人臉比對要素展開介紹。
一、人臉比對型別
人臉比對型別可分為四種,分別是: 人臉1:1、人臉1:n、人臉1:N、人臉M:N。
人臉識別應用無非就是圍繞著這四種比對方式展開,下面將依次介紹各種比對型別。
1. 人臉1:1
人臉1:1一般用於人證核驗,可以簡單理解為:證明你就是。
例如:在乘坐火車、飛機,出入境,銀行辦卡時,通常需要驗證本人與其持有身份證是否為同一個人。
如下圖,系統只需讀取二代身份證中的人臉照片,與現場抓拍的本人照片做比對即可。
人臉1:1又稱為 靜態人臉比對 ,同時具有 配合式 的特點,完成比對需要使用者攜帶身份證並主動配合採集人臉。
2. 人臉1:n
人臉1:n:將一張人臉照片與人臉庫中的多張人臉逐一進行比對,人臉庫有多少人臉就需要比對多少次——平臺採集了“我”的一張照片之後,從海量的人像資料庫中找到與當前使用者人臉資料相符合的影象,並進行匹配,找出來“我是誰”。
人臉1:n又稱 動態人臉比對。
比對照片是從動態視訊中獲取的,同時具有 非配合 特點——整個比對過程是無感知的,不需要人為配合。這兩個特性使人臉1:n能迅速落地於公安追捕逃犯,但時其難度要遠高於人臉1:1 。(其通常會受到光照變化、人臉姿態的影響——比如側臉、低頭、逆光現象,會大大提升人臉漏報率。)
人臉1:n中“n”的大小(人臉庫照片的數量)會影響人臉識別的準確率和比對速度,所以比對人臉庫規模會設定的相對較小。
3. 人臉1:N
人臉1:N又稱 靜態大庫檢索 :即以人臉圖片、人臉相似度作為檢索條件,在人臉庫中搜索與其相似(相似度大於設定閾值)的圖片——類似於百度以圖搜圖。
檢索過程實際就是:進行N次人臉比對,並留下比分大於閾值的結果。
人臉1:N的人臉庫規模相較於人臉1:n會大很多,最高可支援 億級人臉檢索 ,所以這裡的N為大寫。
4. 人臉M:N
人臉M:N實際就是 兩個人臉庫進行比對。
例如:人臉庫A有M個人臉,人臉庫B有N個人臉。如果想檢視人臉庫A和B包含多少個相同的人,就需要用人臉庫A中M個人臉逐一與人臉庫B中N個人臉進行比對,相當於是M個人臉1:N相加的結果。
人臉M:N常用於 慣犯排查、身份查重 。
例如:辦案人員在處理類似三搶一盜的案件中,一般來說80%的案件是慣犯所為。於是,將線索地點路人庫與慣犯庫進行人臉M:N比對碰撞,可快速排查嫌疑,找出偵查方向。
二、人臉比對的要素
1. 人臉資料
人工智慧演算法的演進必須有資料作為支撐。
使用大量標註好的資料訓練模型,可將識別的準確率從70%提升到99%水平。客觀、精準的資料是人工智慧應用必須具備的條件。
獲取人臉資料的五種方式:
- 監控相機、手機相機等各種型別相機: 拍攝的視訊、照片是人臉原始資料的主要來源。專案中常通過RTSP、FTP等協議對接這類相機獲取實時視訊流或圖片流。
- NVR/DVR等錄影儲存裝置: 儲存了大量視訊資源,可通過ONVIF協議對接這類裝置獲取資料。
- 第三方企業、事業單位的人員資訊庫: 例如公安的八大資訊資源庫、企業在職員工資訊庫等。獲取這類資料難度較大,會涉及到第三方平臺對接,還需考慮到保密、網路安全等問題。
- 網際網路中的開放資料集: 常用的WebFace、FDDB、LFW、YouTube Face等人臉資料集,提供了優質的標註資料,可用於演算法測試及模訓練。
- 網路爬取: 通過編寫或者利用免費網路爬蟲程式,自動抓取全球資訊網中的圖片。它們被廣泛用於網際網路的資料採集中。
2. 人臉比對庫
人臉比對庫為人臉識別提供比對模板——人臉1:n、人臉1:N、人臉M:N必須要有人臉比對庫才能進行比對。
系列第二篇文章 《應用層下的人臉識別(二):人臉庫》 詳細的介紹了人臉庫的建立方法。
3. 比對閾值
比對閾值:人臉比對的相似度。
人臉比對結果以相似度值呈現,在人臉比對之前需要設定一個相似度的門檻值,大於這個門檻則判定兩張照片可能為同一個人。
比對閾值對人臉識別的準確率、漏報率影響頗大, 比對閾值設定的越高準確率就越高,漏報率也會隨之升高 。比對閾值沒有一個固定的標準,應根據應用場景來靈活調整。
例如:刷臉支付更關注比對準確率,需要調高閾值;而公安嫌犯人臉布控要求降低漏報,就需要適當調低閾值。
4. 晶片
人工智慧的三要素是演算法、算力和資料,而晶片決定了算力。
深度學習工程的兩大關鍵環節 training(訓練) 和 inference(推測) 需要大量的算力支撐,普通的CPU無法滿足計算要求。
相繼推出的高效能 GPU 、 TPU 、 FPGA 、 ASIC 等加速晶片,大大提升了計算速度,同時也促進了演算法的發展。
GPU在人臉1:n、1:N、M:N比對中是不可或缺的,而部分人臉1:1計算量不大,可以不使用加速晶片。億級人臉檢索在GPU的加速下可以達到秒級返回結果。
5. 人臉演算法
人臉演算法效果決定了人臉識別的上限,也是人臉比對最關鍵的要素。隨著深度學習技術的普及,各大公司的人臉演算法效果差距也越來越小。
目前主流的人臉識別演算法可以分為以下四類:
- 基於人臉特徵點的識別演算法
- 基於整幅人臉影象的識別演算法
- 基於模板的識別演算法
- 利用神經網路進行識別的演算法
2018年11月20日公佈的,有工業界黃金標準之稱的全球人臉識別演算法測試(FRVT)結果(如下圖):
排名前五的演算法都被中國包攬:
- 依圖科技(yitu)繼續保持全球人臉識別競賽冠軍,在千萬分之一誤報下的識別準確率超過99%。
- 排名第二的演算法也來自依圖科技。
- 商湯科技(sensetime)摘得第三名和第四名。
- 中國科學院深圳先進技術研究院(siat)排名第五。
人臉演算法雖然在各種資料集的測試中準確率頗高,但還遠沒達到在商業應用中的滿意程度。
目前仍然有很多缺陷需要解決,例如:
姿態問題:
人臉識別主要依據人的面部表象特徵來進行,“如何識別由姿態引起的面部變化?”就成了該技術的難點之一。
姿態問題涉及:頭部在三維垂直座標系中,繞三個軸的旋轉造成的面部變化。其中,垂直於影象平面的兩個方向的深度旋轉會造成面部資訊的部分缺失。這使得姿態問題成為人臉識別的一個技術難題。
針對姿態的研究相對比較的少,目前多數的人臉識別演算法主要針列正面、準正面人臉影象。當發生俯仰或者左右側而比較厲害的情況下,人臉識別演算法的識別率也將會急劇下降。
影象質量問題:
人臉影象的來源可能多種多樣,由於採集裝置的不同,得到的人臉影象質量也不一樣。
特別是對於那些低解析度、噪聲大、質量差的人臉影象(如:手機攝像頭拍攝的人臉圖片、遠端監控拍攝的圖片等),“如何進行有效地人臉識別?”就是個需要關注的問題。
而對於高分辨影象對人臉識別演算法的影響,也需要進一步的研究。
現在,我們在人臉識別時,一般採用的都是相同尺寸、清晰度很接近的人臉圖片,所以影象質量問題基本可以解決。但是,面對現實中更加複雜的問題,還是需要繼續優化處理。
遮擋問題:
對於非配合情況下的人臉影象採集,遮擋問題是一個非常嚴重的問題。
特別是在監控環境下,往往被監控物件都會帶著眼鏡、帽子等飾物,使得被採集出來的人臉影象有可能不完整,從而影響了後面的特徵提取與識別,甚至會導致人臉檢測演算法的失效。
人臉演算法在人臉五官被擋的情況下表現的不是很好。
目前對遮擋識別效果較好的DeepID2演算法,可穩定識別 遮擋在20%以內,塊大小在30*30以下 的人臉。
樣本缺乏問題:
基於統計學習的人臉識別演算法是目前人臉識別領域中的主流演算法,但是統計學習方法需要大量的訓練。
由於人臉影象在高維空間中的分佈是一個不規則的流形分佈,能得到的樣本只是對人臉影象空間中的一個極小部分的取樣。關於“如何解決小樣本下的統計學習問題?”,還有待進一步的研究。
以上就是系列文章的第三篇——《應用層下的人臉識別(三):人臉比對》的相關內容。
歡迎大家新增公眾號“陽春柏樰”與我繼續交流影象識別相關問題。