智能手機堪稱移動互聯網時代的機械義肢,與日常生活密不可分。除了手機操作系統自帶的人臉解鎖,大量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已經實現對該版本的支持與優化,值得開發者嘗試一下。