智慧型手機堪稱移動網際網路時代的機械義肢,與日常生活密不可分。除了手機作業系統自帶的人臉解鎖,大量App也引入了人臉識別以進一步完善產品功能,譬如政務和金融類App會通過人臉識別進行用戶身份核驗,相冊管理App通過以此進行照片分類,攝影攝像類App則通過人臉檢測進行對焦和美顏……
儘管手機上發生的人臉識別都在同一套硬體上運行,然而App並不能調用作業系統自帶的人臉識別功能,而是需要在開發中引入第三方算法。在算法類型的選擇上,大致有API和SDK兩類。考慮到如今App開發通常需要兼容多版本iOS和Android系統,所以算法最好能同時適配iOS14 與Android11 這兩個作業系統的最新版本。
【適用App的人臉識別算法選型】
API和SDK是人臉識別算法的不同應用形式,與識別準確率無關,取決於算法廠商究竟是開放可以調用人臉識別功能的接口(API),還是直接提供人臉識別軟體的安裝包(SDK)。
API本質上是「在線請求,返回結果」:算法廠商將算法布置在雲端,把接口向有需求的公司開放。本地端只上傳照片,並接收結果。整個人臉識別過程都在雲端進行,消耗雲端算力。SDK是軟體開發工具包。算法廠商將人臉識別功能封裝成SDK,分發給其他公司使用。使用時需要下載安裝軟體包,算法在本地端運行。
API由於消耗雲端算力,所以難以完全免費。通常算法提供商會根據調用量收費,目前業內知名的幾大公司均採用此類模式。但是考慮到APP用戶一般規模量較大、使用頻繁,大規模調用下的高成本,將成為中小企業不小的成本負擔。
另外,由於API的人臉識別數據需要上傳和存儲在雲端,必須要在有網絡的環境下使用,算法運行速度受網絡狀況影響較大,也存在一定的數據洩露風險。對數據安全性要求較高,或是需要在無網絡封閉環境下應用的場景,就不適合使用人臉識別API。
SDK與API恰好相反,所有運算都放在本地端進行。API的缺陷恰好成了SDK的優勢,以業內公認在人臉識別SDK領域可能最具影響力的虹軟視覺開放平臺為例,它免費提供的ArcFace SDK能夠本地運行,離線使用,不受網絡環境影響,響應速度極快;人臉數據也儲存在本地,無需與服務端進行數據交互,安全性更高;正因為算法是本地運行,使用時也就無需為雲服務和網絡流量支付成本,這也是能免費提供給開發者使用的重要原因。
圖片源自虹軟視覺開放平臺官網
在ArcFace的基礎上,虹軟視覺開放平臺還推出了增值版算法ArcFace Pro App,性能進一步提升,1:N支持萬人級人臉場景,RK3399 平臺1 萬人全流程時間400ms以內,支持包括IOS14 和Android11 在內的多平臺和多版本系統。
該算法適用於大規模量級的App應用場景,涵蓋採集、比對、活體、識別、人證等功能,實現毫秒級識別,適配市場主流鏡頭模組、晶片方案,讓App輕鬆接入人臉識別能力,實現刷臉登錄、實名認證、娛樂應用等功能,並配有專人對接提供技術支持,讓算法集成也不再成為難題。
【App端算法應用實例】
業內知名的學前教育服務平臺掌通家園就採用了ArcFace Pro App,而無需為每日高額調用量付費。為解決家長和校園之間的信息不對稱的問題,掌通家園推出了「掌通時光集」功能:通過文字、圖片、語音及視頻等多樣化載體,記錄幼兒在學校從上學到下課、從入園到畢業的精彩瞬間。
但是在該功能上線初期,全靠幼兒園老師上傳照片、視頻後,手動進行分類並添加標籤。這使得教師需要在照顧孩子們的同時,投入大量精力,且往往難以做到分類的準確和及時。引入虹軟視覺開放平臺的ArcFace Pro App後,教師們只需上傳學生照片和視頻,無需額外操作,系統即可自動識別、快速歸類屬於每位孩子的照片和視頻,並及時推送至家長手中的APP內。
圖片源自虹軟視覺開放平臺官網
離線使用則是ArcFace SDK的另一大優勢。在部分人跡罕至的極端場景中,網絡難以部署到位,但又需要人臉識別來核驗用戶身份,譬如護林員在大山深處進行林場巡邏。
為確保護林員抵達特定地點完成巡檢,管理系統會要求護林員抵達特定地點後打開軟體進行身份核驗。此時手機自帶的GPS導航系統仍然能接受到衛星發出的信號,因此能確定護林員身處位置,但由於網絡不暢,人臉識別API無法發揮作用,ArcFace SDK則能夠順利使用。打卡完成後,當巡檢員回到有網絡的區域,手機管理系統會自動上傳打卡記錄,從而實現巡檢管理的閉環。
總體而言,人臉識別API和SDK各有千秋,需要開發者根據實際場景選擇使用。目前支持iOS14 和Android11 版本系統的人臉識別SDK並不多,虹軟視覺開放平臺推出的ArcFace Pro App已經實現對該版本的支持與優化,值得開發者嘗試一下。