應用層下的人臉識別(三):人臉比對
本文作者根據多年人臉識別項目經驗,總結了人臉識別技術在安防、商業領域應用及產品設計細節,匯總成應用層下的人臉識別系列文章。本文為系列文章的第三篇——介紹人臉比對相關內容。全文圍繞人類比對類型、人臉比對要素展開介紹。
一、人臉比對類型
人臉比對類型可分為四種,分別是:人臉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”的大?。ㄈ四槑煺掌臄盗浚绊懭四樧R別的準確率和比對速度,所以比對人臉庫規模會設置的相對較小。
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等人臉數據集,提供了優質的標注數據,可用于算法測試及模訓練。
- 網絡爬?。?/strong>通過編寫或者利用免費網絡爬蟲程序,自動抓取萬維網中的圖片。它們被廣泛用于互聯網的數據采集中。
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以下的人臉。
樣本缺乏問題:
基于統計學習的人臉識別算法是目前人臉識別領域中的主流算法,但是統計學習方法需要大量的訓練。
由于人臉圖像在高維空間中的分布是一個不規則的流形分布,能得到的樣本只是對人臉圖像空間中的一個極小部分的采樣。關于“如何解決小樣本下的統計學習問題?”,還有待進一步的研究。
以上就是系列文章的第三篇——《應用層下的人臉識別(三):人臉比對》的相關內容。
歡迎大家添加公眾號“陽春柏樰”與我繼續交流圖像識別相關問題。
三、相關閱讀
本文由@陽春柏樰 原創發布于人人都是產品經理。未經許可,禁止轉載
題圖來自Unsplash,基于CC0協議
”比對閾值設置的越高準確率就越高,漏報率也會隨之升高“=》這段應該寫錯了吧,應該是“比對閾值設置的越高,準確率就越高,漏報率會隨之降低”?
已理解清楚,作者描述無錯誤,抱歉打擾
主流的人臉識別算法大體就兩類:傳統的和cnn的,作者你能解釋下基于特征點和基于全局圖的嗎,我也是做人臉識別產品的,不太清楚你的分類標準,請指教下
我們公司也是做人臉識別的,覺得設計底層人臉識別算法的人真的好牛逼啊
國內公司商湯是唯一幾家做算法底層的,其他公司都是基于國外人臉算法開源庫開發的
我就說這種的肯定還是國內借鑒國外的多,所以說中國目前還是沒有實力掌握底層核心的東西