人臉識別算法SDK
電話(微信):13632514967
一、產(chǎn)品概述
隨著人們對安全問題的不斷重視,生物特征識別技術(shù)以其可靠性,有效性和安全性得到了越來越多的關(guān)注。人臉識別技術(shù)作為生物特征識別技術(shù)的一種,以其獨(dú)特的友好性,近年來已成為了國際上的一個重點(diǎn)課題,視覺科技是以視覺算法為核心,專注于高精度,小型化的人臉識別技術(shù),公司所研發(fā)的人臉識別模型在刷臉支付,智慧園區(qū)、智慧校園等多領(lǐng)域應(yīng)用廣泛。
人臉識別 SDK V1.0 標(biāo)準(zhǔn)版是視覺針對各種線下識別場景封裝的“業(yè)務(wù)型”人臉識別算法SDK,主要封裝了人臉識別通用功能,如人臉檢測、活體檢測、人臉?biāo)阉鞯?,方便客戶二次開 發(fā)??蛻艏瓤梢宰杂山M合原子化接口,也可基于封裝的應(yīng)用模式做集成開發(fā)。
二、功能模塊
標(biāo)準(zhǔn)版SDK客戶端支持安卓系統(tǒng),主要用于人臉識別終端設(shè)備,例如;人臉門禁機(jī)、電子班牌、刷臉支付終端、人臉考勤機(jī)等。方便,快捷,快速精準(zhǔn)的處理和反饋給戶所識別的結(jié)果。
客戶端SDK功能
功能名稱 |
功能描述 |
輸入 |
輸出 |
人臉檢測 |
檢測人臉(跟蹤模式下實(shí)時跟蹤人臉 ),是所有人臉?biāo)惴ú僮鞯那爸貌襟E |
BGR格式的人臉照片 |
人臉數(shù)據(jù)列 表,單個人臉數(shù)據(jù)包括;人臉框的位置及大小、5個關(guān)鍵點(diǎn)等 |
質(zhì)量檢測 |
檢測人臉照片質(zhì)量,保證照片質(zhì)量,提升識別率 |
BGR格式的人臉照片、人臉關(guān)鍵點(diǎn) |
人臉的質(zhì)量維度,包含;模糊度、姿態(tài)等 |
活體檢測 |
檢測照片中的人臉是否為活體,用于判斷是否存在攻擊行為,支持單目活體檢測、雙目活體檢測 |
BGR格式的可見光人臉照片、BGR格式的紅外人臉, 照片、人臉關(guān)鍵點(diǎn) |
活體分?jǐn)?shù) |
人臉?biāo)阉?/span> |
根據(jù)識別的人臉,從人臉庫中搜索出最與之相似的N個人臉 |
人臉特征值、TopN |
N個人臉數(shù)據(jù)、人臉數(shù)據(jù)包括;人臉ID,相似度等 |
特征提取 |
提取人臉照片中的人臉特征存入底庫中,用于人臉?biāo)阉骷叭四槺葘?/span> |
BGR格式的人臉照片,人臉關(guān)鍵點(diǎn) |
人臉特征值 |
人臉對比 |
比對兩張人臉照片的相似度 |
BGR 格式的兩張人臉照片 |
相似度 |
底庫管理 |
底庫管理,包括;添加、刪除、修改、查詢?nèi)四樚卣?,用于人臉?biāo)阉?/span> |
/ |
/ |
三、核心模塊
人臉識別技術(shù)是以身份檢索或校驗(yàn)為目標(biāo),通過從給定的靜態(tài)或動態(tài)圖像中提取人臉信息等手段,與數(shù)據(jù)庫中已知身份人臉進(jìn)行匹配的過程。影響人臉識別的關(guān)鍵因素有兩個;人臉底庫、識別算法。
底庫是一個用于識別的人員數(shù)據(jù)集合,集合是由多個人員數(shù)據(jù)組成,每個人員的數(shù)據(jù)由人員編碼、 人員分組、人員信息及多張人臉特征組成,將這些人臉特征與人臉 ID 關(guān)聯(lián)在一起,搜索時,匹配到某個人臉特征,即搜到了相關(guān)聯(lián)的人員編碼及其對應(yīng)的人員信息。幾個字段解釋如下;
關(guān)鍵字段 |
解釋 |
人臉特征 |
是通過人臉特征提取算法將一張人臉照片提取為一個可用于識別算法的特征值。通常情況下一張照片即可準(zhǔn)確完成人臉識別,為了支持特殊場景,允許一個人 員添加多張人臉照片提取的特征保存到底庫中,比如;添加戴眼鏡照和不戴眼鏡照,化妝照和不化妝照。 |
人員編碼 |
由客戶應(yīng)用指定的唯一用戶 ID,客戶應(yīng)用可以通過此 ID 找到對應(yīng)人臉的相關(guān)信息。 |
人員分組 |
用于客戶應(yīng)用根據(jù)人臉分組做特定業(yè)務(wù)邏輯處理。 |
人臉信息 |
由客戶應(yīng)用定義內(nèi)容,比如,人員名稱或其他數(shù)據(jù)。 |
底庫是通過人臉注冊建立的,人臉注冊流程如下
1)獲取人臉照片,可從服務(wù)端下載或本地拍照獲取。
2)檢測人臉質(zhì)量,底庫的人臉質(zhì)量是影響識別準(zhǔn)確率的關(guān)鍵因素之一??梢愿鶕?jù)場景選擇不同的質(zhì)量分?jǐn)?shù)作為入庫標(biāo)準(zhǔn),低于標(biāo)準(zhǔn)的照片將不能入庫。
3)提取人臉特征,用特征提取模型提取照片中的人臉特征。
4)人臉特征入庫,將從人臉照片中提取到的人臉特征及人臉 ID、人臉分組、人臉信息添加到底庫中。人臉 ID要確保和人臉照片關(guān)聯(lián)一致,以免出現(xiàn)人臉照片與人臉信息不匹配。
人臉識別
典型的人臉識別流程如下圖:
基于攝像頭的人臉識別是按幀處理的,每幀處理的第一步是將攝像頭的視頻流格式轉(zhuǎn)換成算法支持的格式,再送到算法中檢測并識別人臉。
人臉檢測時,檢測到的每個人臉會有一個跟蹤的ID,該ID用于在視頻流的連續(xù)幀中關(guān)聯(lián)同一個人臉,后續(xù)的識別過程都是基于該ID進(jìn)行的。
識別過程包括人臉質(zhì)量檢測、特征提取、人臉?biāo)阉鳌⒒铙w檢測等,前一個步驟通過,才能執(zhí)行后一個步驟。所有步驟都執(zhí)行通過,人臉識別才完成。
人臉識別過程中每幀人臉跟蹤信息都會以事件的形式通知到應(yīng)用層,人臉跟蹤信息包括:人臉框大小、位置、識別到的人員信息等,應(yīng)用層可以根據(jù)這些信息畫人臉框或做其他處理。
四、算法性能
檢測最小人臉尺寸 |
30*30 像素 |
識別最小人臉尺寸 |
60*60 像素(識別不帶活體)/80*80 像素(識別帶活體) |
人臉姿態(tài) |
正常姿態(tài) 小角度姿態(tài) 大角度姿態(tài) |
召回率 |
標(biāo)準(zhǔn)環(huán)境下, 10000 人底庫 |
誤識率 |
0.5% |
活體檢出率 |
99 %@0.5 拒真率 |
注:識別模型會持續(xù)更新,每次更新識別模型需要重新抽取特征 |
相關(guān)精度指標(biāo)
場景 |
指標(biāo) |
名稱介紹 |
識別
|
召回率 |
視頻中目標(biāo)人出現(xiàn) 100 人次,正確識別 99 人次,召回率是 99% |
準(zhǔn)確率 |
識別次數(shù)是 100 次,其中 99 次為正確識別,準(zhǔn)確率是 99% |
|
誤識率 |
1@10 萬底庫,即 10 萬底庫情況下,100 張圖像產(chǎn)生了 1 次誤識別,誤識率 1% |
|
漏識率 |
1-召回率 |
活體檢測及人臉識別測試
活體檢測
正樣本:真人的人臉
負(fù)樣本:非真人的照片(照片、手機(jī)、面具等)
通過率:設(shè)定一個閾值,給定 M 個正樣本,其中模型輸出的分?jǐn)?shù)高于閾值的樣本
(即檢測為真人的正樣本)數(shù)量為m個,通過率=m/M
拒絕率:設(shè)定一個閾值,給定N個負(fù)樣本,其中模型輸出的分?jǐn)?shù)低于閾值的樣本(檢測為攻擊的負(fù)樣本)數(shù)量為n個,通過率=n/N
活體的效果依賴因素也非常多,包括圖片質(zhì)量、現(xiàn)場環(huán)境、活體閾值等。尤其需要指出的是,活體識別對于不同材質(zhì)的攻擊手段的防范能力是有差別的,下表給出了常見情況的檢測標(biāo)。
人臉識別
正樣本集:本人比對本人負(fù)樣本集:本人比對他人
通過率=比對通過的正樣本數(shù)(比對相似度高于閾值的數(shù)量)/正樣本集總數(shù)誤識率=比對通過的負(fù)樣本數(shù)(比對相似度高于閾值的數(shù)量)/負(fù)樣本集總數(shù)
測試平臺 |
3516dV300 |
|
測試圖像分辨率 |
480*640 (注:測試分辨率和實(shí)際面板機(jī)原始輸入不一樣,實(shí)際面板機(jī)原始輸入最大沒有限制) |
|
人臉尺寸 |
60*60(識別不帶活體) 80*80(識別帶活體) |
|
多人支持 |
可支持多人,算法不做人臉個數(shù)限制 |
|
耗時定義 |
從數(shù)據(jù)輸入模型到輸出結(jié)果花費(fèi)的時間 |
|
SDK 產(chǎn)品規(guī)格 |
||
最大底庫 |
10 萬 |
|
推薦底庫 |
1萬 |
|
人臉檢測 |
人臉檢測耗時 |
<35ms |
人臉檢測跟蹤耗時 |
<18ms |
|
活體 |
雙目CPU 模型耗時 |
<65ms |
1:N人臉識別 |
特征提取耗時 |
<45ms |
人臉 search 耗時 |
<5ms(3K 底庫) <25ms(1W 底庫) |
|
文件大小 |
算法庫+模型 |
<45M |
內(nèi)存使用情況 |
識別加活體 |
<250M |
識別 |
<240M |
測試結(jié)果
1)活體檢測
雙目活體
拒絕率 |
通過率 |
在3516dV300上的平均耗時 |
99.6 |
95.83 |
65ms |
2)人臉識別
1:n 人臉?biāo)阉?/b>
誤識率 |
通過率 |
閾值 |
0.1 |
99.7 |
0.82 |
五、硬件平臺
人臉識別SDKV1.0標(biāo)準(zhǔn)版作為線下場景的通用 SDK,將逐步增加對各類平臺的兼 容 適 配 , 包含但不限于 : Arm Android 、 Arm Linuxx86 Linux 、 x86Windows 、Hisi3516DV300。硬件的配置、操作系統(tǒng)等都會影響到算法的實(shí)際使用效果:
客戶端
客戶端的性能影響整體的識別速度,一般來說算法的性能和主頻成正比,為保證良好的用戶體驗(yàn),視覺根據(jù)不同配置的硬件平臺,推出了高、低版本的 SDK,以滿足不同終端設(shè)備的適配需求。如下給出了建議搭配硬件配置的列表
SDK 版本 |
硬件 |
操作系統(tǒng) |
配置型號 |
識別耗時 |
高配版 |
3516dV300 |
linux |
CPU:雙核 900M + 1T NPU 內(nèi)存:1G RAM+4G ROM |
250ms |
低配版 |
全志A64 |
Android 6.0 及以上版本 |
CPU:4核 1.2GHZ 內(nèi)存:2G RAM+4G ROM |
550ms |
六、授權(quán)模式
人臉識別 SDKV1.0 支持USB模組與MIPI模組(帶芯?)授權(quán)
USB攝像頭模組/MIPI模組(帶加密IC)
客戶從視覺指定的攝像頭模組供應(yīng)商獲取USB攝像頭模組,對接到自己的主板,導(dǎo)入人臉識別SDK,即可實(shí)現(xiàn)人臉識別授權(quán)。
其他授權(quán)方式,根據(jù)客戶產(chǎn)品狀況洽談。