人臉識別算法SDK
電話(huà)(微信):13632514967
一、產(chǎn)品概述
隨著(zhù)人們對安全問(wèn)題的不斷重視,生物特征識別技術(shù)以其可靠性,有效性和安全性得到了越來(lái)越多的關(guān)注。人臉識別技術(shù)作為生物特征識別技術(shù)的一種,以其獨特的友好性,近年來(lái)已成為了國際上的一個(gè)重點(diǎn)課題,視覺(jué)科技是以視覺(jué)算法為核心,專(zhuān)注于高精度,小型化的人臉識別技術(shù),公司所研發(fā)的人臉識別模型在刷臉支付,智慧園區、智慧校園等多領(lǐng)域應用廣泛。
人臉識別 SDK V1.0 標準版是視覺(jué)針對各種線(xiàn)下識別場(chǎng)景封裝的“業(yè)務(wù)型”人臉識別算法SDK,主要封裝了人臉識別通用功能,如人臉檢測、活體檢測、人臉搜索等,方便客戶(hù)二次開(kāi) 發(fā)??蛻?hù)既可以自由組合原子化接口,也可基于封裝的應用模式做集成開(kāi)發(fā)。
二、功能模塊
標準版SDK客戶(hù)端支持安卓系統,主要用于人臉識別終端設備,例如;人臉門(mén)禁機、電子班牌、刷臉支付終端、人臉考勤機等。方便,快捷,快速精準的處理和反饋給戶(hù)所識別的結果。
客戶(hù)端SDK功能
功能名稱(chēng) |
功能描述 |
輸入 |
輸出 |
人臉檢測 |
檢測人臉(跟蹤模式下實(shí)時(shí)跟蹤人臉 ),是所有人臉算法操作的前置步驟 |
BGR格式的人臉照片 |
人臉數據列 表,單個(gè)人臉數據包括;人臉框的位置及大小、5個(gè)關(guān)鍵點(diǎn)等 |
質(zhì)量檢測 |
檢測人臉照片質(zhì)量,保證照片質(zhì)量,提升識別率 |
BGR格式的人臉照片、人臉關(guān)鍵點(diǎn) |
人臉的質(zhì)量維度,包含;模糊度、姿態(tài)等 |
活體檢測 |
檢測照片中的人臉是否為活體,用于判斷是否存在攻擊行為,支持單目活體檢測、雙目活體檢測 |
BGR格式的可見(jiàn)光人臉照片、BGR格式的紅外人臉, 照片、人臉關(guān)鍵點(diǎn) |
活體分數 |
人臉搜索 |
根據識別的人臉,從人臉庫中搜索出最與之相似的N個(gè)人臉 |
人臉特征值、TopN |
N個(gè)人臉數據、人臉數據包括;人臉ID,相似度等 |
特征提取 |
提取人臉照片中的人臉特征存入底庫中,用于人臉搜索及人臉比對 |
BGR格式的人臉照片,人臉關(guān)鍵點(diǎn) |
人臉特征值 |
人臉對比 |
比對兩張人臉照片的相似度 |
BGR 格式的兩張人臉照片 |
相似度 |
底庫管理 |
底庫管理,包括;添加、刪除、修改、查詢(xún)人臉特征,用于人臉搜索 |
/ |
/ |
三、核心模塊
人臉識別技術(shù)是以身份檢索或校驗為目標,通過(guò)從給定的靜態(tài)或動(dòng)態(tài)圖像中提取人臉信息等手段,與數據庫中已知身份人臉進(jìn)行匹配的過(guò)程。影響人臉識別的關(guān)鍵因素有兩個(gè);人臉底庫、識別算法。
底庫是一個(gè)用于識別的人員數據集合,集合是由多個(gè)人員數據組成,每個(gè)人員的數據由人員編碼、 人員分組、人員信息及多張人臉特征組成,將這些人臉特征與人臉 ID 關(guān)聯(lián)在一起,搜索時(shí),匹配到某個(gè)人臉特征,即搜到了相關(guān)聯(lián)的人員編碼及其對應的人員信息。幾個(gè)字段解釋如下;
關(guān)鍵字段 |
解釋 |
人臉特征 |
是通過(guò)人臉特征提取算法將一張人臉照片提取為一個(gè)可用于識別算法的特征值。通常情況下一張照片即可準確完成人臉識別,為了支持特殊場(chǎng)景,允許一個(gè)人 員添加多張人臉照片提取的特征保存到底庫中,比如;添加戴眼鏡照和不戴眼鏡照,化妝照和不化妝照。 |
人員編碼 |
由客戶(hù)應用指定的唯一用戶(hù) ID,客戶(hù)應用可以通過(guò)此 ID 找到對應人臉的相關(guān)信息。 |
人員分組 |
用于客戶(hù)應用根據人臉?lè )纸M做特定業(yè)務(wù)邏輯處理。 |
人臉信息 |
由客戶(hù)應用定義內容,比如,人員名稱(chēng)或其他數據。 |
底庫是通過(guò)人臉注冊建立的,人臉注冊流程如下
1)獲取人臉照片,可從服務(wù)端下載或本地拍照獲取。
2)檢測人臉質(zhì)量,底庫的人臉質(zhì)量是影響識別準確率的關(guān)鍵因素之一??梢愿鶕?chǎng)景選擇不同的質(zhì)量分數作為入庫標準,低于標準的照片將不能入庫。
3)提取人臉特征,用特征提取模型提取照片中的人臉特征。
4)人臉特征入庫,將從人臉照片中提取到的人臉特征及人臉 ID、人臉?lè )纸M、人臉信息添加到底庫中。人臉 ID要確保和人臉照片關(guān)聯(lián)一致,以免出現人臉照片與人臉信息不匹配。
人臉識別
典型的人臉識別流程如下圖:

基于攝像頭的人臉識別是按幀處理的,每幀處理的第一步是將攝像頭的視頻流格式轉換成算法支持的格式,再送到算法中檢測并識別人臉。
人臉檢測時(shí),檢測到的每個(gè)人臉會(huì )有一個(gè)跟蹤的ID,該ID用于在視頻流的連續幀中關(guān)聯(lián)同一個(gè)人臉,后續的識別過(guò)程都是基于該ID進(jìn)行的。
識別過(guò)程包括人臉質(zhì)量檢測、特征提取、人臉搜索、活體檢測等,前一個(gè)步驟通過(guò),才能執行后一個(gè)步驟。所有步驟都執行通過(guò),人臉識別才完成。
人臉識別過(guò)程中每幀人臉跟蹤信息都會(huì )以事件的形式通知到應用層,人臉跟蹤信息包括:人臉框大小、位置、識別到的人員信息等,應用層可以根據這些信息畫(huà)人臉框或做其他處理。
四、算法性能
檢測最小人臉尺寸 |
30*30 像素 |
識別最小人臉尺寸 |
60*60 像素(識別不帶活體)/80*80 像素(識別帶活體) |
人臉姿態(tài) |
正常姿態(tài) 小角度姿態(tài) 大角度姿態(tài) |
召回率 |
標準環(huán)境下, 10000 人底庫 |
誤識率 |
0.5% |
活體檢出率 |
99 %@0.5 拒真率 |
注:識別模型會(huì )持續更新,每次更新識別模型需要重新抽取特征 |
相關(guān)精度指標
場(chǎng)景 |
指標 |
名稱(chēng)介紹 |
識別
|
召回率 |
視頻中目標人出現 100 人次,正確識別 99 人次,召回率是 99% |
準確率 |
識別次數是 100 次,其中 99 次為正確識別,準確率是 99% |
|
誤識率 |
1@10 萬(wàn)底庫,即 10 萬(wàn)底庫情況下,100 張圖像產(chǎn)生了 1 次誤識別,誤識率 1% |
|
漏識率 |
1-召回率 |
活體檢測及人臉識別測試
活體檢測
正樣本:真人的人臉
負樣本:非真人的照片(照片、手機、面具等)
通過(guò)率:設定一個(gè)閾值,給定 M 個(gè)正樣本,其中模型輸出的分數高于閾值的樣本
(即檢測為真人的正樣本)數量為m個(gè),通過(guò)率=m/M
拒絕率:設定一個(gè)閾值,給定N個(gè)負樣本,其中模型輸出的分數低于閾值的樣本(檢測為攻擊的負樣本)數量為n個(gè),通過(guò)率=n/N
活體的效果依賴(lài)因素也非常多,包括圖片質(zhì)量、現場(chǎng)環(huán)境、活體閾值等。尤其需要指出的是,活體識別對于不同材質(zhì)的攻擊手段的防范能力是有差別的,下表給出了常見(jiàn)情況的檢測標。
人臉識別
正樣本集:本人比對本人負樣本集:本人比對他人
通過(guò)率=比對通過(guò)的正樣本數(比對相似度高于閾值的數量)/正樣本集總數誤識率=比對通過(guò)的負樣本數(比對相似度高于閾值的數量)/負樣本集總數
測試平臺 |
3516dV300 |
|
測試圖像分辨率 |
480*640 (注:測試分辨率和實(shí)際面板機原始輸入不一樣,實(shí)際面板機原始輸入最大沒(méi)有限制) |
|
人臉尺寸 |
60*60(識別不帶活體) 80*80(識別帶活體) |
|
多人支持 |
可支持多人,算法不做人臉個(gè)數限制 |
|
耗時(shí)定義 |
從數據輸入模型到輸出結果花費的時(shí)間 |
|
SDK 產(chǎn)品規格 |
||
最大底庫 |
10 萬(wàn) |
|
推薦底庫 |
1萬(wàn) |
|
人臉檢測 |
人臉檢測耗時(shí) |
<35ms |
人臉檢測跟蹤耗時(shí) |
<18ms |
|
活體 |
雙目CPU 模型耗時(shí) |
<65ms |
1:N人臉識別 |
特征提取耗時(shí) |
<45ms |
人臉 search 耗時(shí) |
<5ms(3K 底庫) <25ms(1W 底庫) |
|
文件大小 |
算法庫+模型 |
<45M |
內存使用情況 |
識別加活體 |
<250M |
識別 |
<240M |
測試結果
1)活體檢測
雙目活體
拒絕率 |
通過(guò)率 |
在3516dV300上的平均耗時(shí) |
99.6 |
95.83 |
65ms |
2)人臉識別
1:n 人臉搜索
誤識率 |
通過(guò)率 |
閾值 |
0.1 |
99.7 |
0.82 |
五、硬件平臺
人臉識別SDKV1.0標準版作為線(xiàn)下場(chǎng)景的通用 SDK,將逐步增加對各類(lèi)平臺的兼 容 適 配 , 包含但不限于 : Arm Android 、 Arm Linuxx86 Linux 、 x86Windows 、Hisi3516DV300。硬件的配置、操作系統等都會(huì )影響到算法的實(shí)際使用效果:
客戶(hù)端
客戶(hù)端的性能影響整體的識別速度,一般來(lái)說(shuō)算法的性能和主頻成正比,為保證良好的用戶(hù)體驗,視覺(jué)根據不同配置的硬件平臺,推出了高、低版本的 SDK,以滿(mǎn)足不同終端設備的適配需求。如下給出了建議搭配硬件配置的列表
SDK 版本 |
硬件 |
操作系統 |
配置型號 |
識別耗時(shí) |
高配版 |
3516dV300 |
linux |
CPU:雙核 900M + 1T NPU 內存:1G RAM+4G ROM |
250ms |
低配版 |
全志A64 |
Android 6.0 及以上版本 |
CPU:4核 1.2GHZ 內存:2G RAM+4G ROM |
550ms |
六、授權模式
人臉識別 SDKV1.0 支持USB模組與MIPI模組(帶芯?)授權
USB攝像頭模組/MIPI模組(帶加密IC)
客戶(hù)從視覺(jué)指定的攝像頭模組供應商獲取USB攝像頭模組,對接到自己的主板,導入人臉識別SDK,即可實(shí)現人臉識別授權。
其他授權方式,根據客戶(hù)產(chǎn)品狀況洽談。