開箱即用的人臉識別算法大盤點

人工智能領域最近幾年的發(fā)展可以說是如火如荼,這里面既有創(chuàng)業(yè)者的磨刀霍霍,也有資本的一路執(zhí)著狂跟,還有學生和程序員群體的熱情追隨?;仡櫲斯ぶ悄茴I域從2012年的星星之火,到15年左右的瘋狂態(tài)勢,再到18年理性的聲音初現(xiàn)。有人開始對人工智能抱有懷疑的態(tài)度,認為這一波AI并沒有想象中那么強。

但是,不可否認,人工智能真的在一些領域中得到了很好的落地,其中最典型的就是人臉識別的相關應用?,F(xiàn)在我們乘車可以無票自動人證核驗通行;通過人臉驗證身份在線辦各種證件手續(xù),也不再需要跑到各個局去現(xiàn)場辦理;還有很方便的手機人臉解鎖等等。可以說,人臉識別還是一個真正實用的技術。

人臉識別的流程介紹

對于一個落地可用的人臉識別系統(tǒng),一般要包含以下幾個步驟:

1) 人臉檢測——將人臉從圖像中檢測出來;

2) 人臉關鍵點檢測——從檢測到的人臉中檢測關鍵點(landmark);

3) 人臉對齊——根據(jù)人臉關鍵點,將人臉"扭正";

4) 人臉特征提取——把"扭正"的人臉送進特征提取網(wǎng)絡,產(chǎn)生特征向量(例如128維、512維的特征向量);

5) 人臉比對——將人臉特征和底庫里面存儲的人的特征向量進行比較。

從上面的流程可以看到,一個真正work的人臉識別系統(tǒng),是包含多個流程的。在多數(shù)場合,中間還需要加一個"活體檢測"的步驟,也就是判斷人臉是真的人臉,還是別人拿照片或者視頻錄像假冒的;如果你是從視頻中檢測人臉,還需要加一個"人臉質(zhì)量分"判斷,也就是判斷一個視頻序列中哪個人臉質(zhì)量最好,然后將最好的這個人臉送入到人臉識別系統(tǒng)。

有哪些可用的人臉識別算法

在上面一節(jié),我們簡要介紹了如何做一個人臉識別系統(tǒng)。可以說,要做好這個系統(tǒng)還是需要很大工作量的。從算法層面,要解決特征提取模型、活體檢測、人臉圖像質(zhì)量檢測三塊硬骨頭。此外,還需要考慮如何優(yōu)化低功耗、高性能等工程化問題。

還好,現(xiàn)在有一些AI科技公司開放了成熟的人臉識別算法,可以讓程序員很快可以完成部署。那么當前有哪些可用的免費人臉識別算法,目前市面上主流的開箱即用的人臉識別算法又有哪些呢?下邊,小算農(nóng)為大家整理一下。

按照調(diào)用方式來看,主要分為兩種:云服務API和離線SDK。

云服務API

云服務API本質(zhì)上是"在線請求,返回結(jié)果",從功能上來說它是一個接口。多數(shù)人臉識別廠商將算法布置在云端,將API接口向有需求的公司開放。終端設備與云端連接后,人臉識別過程都在云端進行,消耗云端算力,本地端只需要上傳照片,接收結(jié)果。

云服務人臉識別API的優(yōu)勢主要有:

輕量級,集成方便,基本上任何語言都可以通過Http調(diào)用云服務API;

多為APP或一些網(wǎng)頁在使用。

當然,凡事都有兩面性,云服務API也有不少劣勢:

無法離線運行,需要網(wǎng)絡流量成本,在一些特定場景下無法使用(無網(wǎng)絡、無法訪問公網(wǎng)的企業(yè)機構(gòu));

云端API廠商只能在較少調(diào)用量下(基本是產(chǎn)品測試階段),提供免費使用。一旦規(guī)?;逃?,尤其是App端等場景下大規(guī)模調(diào)用收費高昂;

受網(wǎng)絡影響大,受網(wǎng)絡穩(wěn)定性影響較大,存在一定延遲,這樣即使算法、算力再給力,也無法彌補網(wǎng)絡的延遲。

在人臉識別API云服務里,國內(nèi)的BAT應該是最大的玩家,如果你打開阿里云、百度云、騰訊云,會發(fā)現(xiàn)他們提供了齊全的人臉識別相關的服務,另外,國內(nèi)的"CV四小龍"、圖普等眾多公司也提供云端人臉識別API。

大致價格如下表所示:

表 1 人臉比對API價格表

可以看到如果單純使用人臉比對,且調(diào)用量比較小的話,采用云服務API的價格還是可以接受的。但是,需要注意的是,表中僅是人臉比對的API價格,上文也提到了,一個完整的人臉識別系統(tǒng)至少還要包括人臉檢測+人臉活體檢測+人臉識別+人臉檢索這四個過程,需要分別購買四個模塊的API,加起來價格并不便宜。

離線人臉識別SDK

離線人臉識別SDK則是另外一種選擇,SDK也就是軟件開發(fā)工具包,算法廠商將人臉識別功能封裝成SDK,分發(fā)給其他公司使用。接收方下載安裝后使用,算法在本地端運行。

相比云服務API,離線SDK主要有以下優(yōu)點:

本地運行,可離線使用,不受網(wǎng)絡環(huán)境影響,響應速度快;

人臉數(shù)據(jù)儲存在本地,無需與服務端進行數(shù)據(jù)交互,安全性高;

部分公司提供了免費的SDK(例如知名的虹軟視覺開放平臺提供的免費人臉識別SDK,全平臺覆蓋,文檔齊全)

國內(nèi)提供人臉識別SDK的知名公司及其價格:

表 2 部分主流廠商人臉識別SDK價格

筆者經(jīng)過統(tǒng)計,發(fā)現(xiàn)提供離線人臉SDK的公司相比提供云服務API的公司要少很多。另外,商業(yè)公司的離線人臉識別SDK一般價格比較貴。不過,虹軟視覺開放平臺卻有提供免費、離線的人臉識別SDK。它不僅支持商用、擁有多個平臺版本,而且還提供了非常齊全的文檔。

知道虹軟的人臉識別SDK是因為筆者在知乎搜索,有沒有離線版的人臉識別的sdk可以使用的?看到大家在回答中都重點推薦了科創(chuàng)板上市企業(yè)虹軟科技。于是筆者也去官網(wǎng)試了一下,發(fā)現(xiàn)該公司的確提供了四大平臺的SDK,而且,最關鍵的是,它是完全免費的!

使用后發(fā)現(xiàn),虹軟提供了人臉識別、認證核驗、活體檢測三大主流應用的免費算法。

另外,對于不同平臺的人臉識別SDK,虹軟都提供了Demo代碼。例如,下面是人臉識別SDK的安卓Demo(所有代碼都在下載的安卓SDK里面,打開Android Studio加載項目即可編譯安裝)。

其中人臉識別Demo的主頁如圖所示,因為是Demo所以相對簡單。

下邊是人臉屬性識別的效果頁面,從圖片可以看出,算法檢測出了人臉、估計出了年齡、性別、人臉三個角度,是否是活體以及特征提取和相似度的計算。

另外,筆者也嘗試了Ubuntu版本的人臉識別以及Windows版本的人證合一的SDK,發(fā)現(xiàn)調(diào)用起來都非常的方便,官方寫的Demo代碼也非常的簡潔易懂。

總結(jié)

經(jīng)過小算農(nóng)的總結(jié),從性價比來看,離線SDK使用本地算力可以做到完全免費商用。而云服務API是基于云端算力,很難真正免費開放,尤其是用戶規(guī)?;径荚趲资f甚至上百萬、上千萬的APP產(chǎn)品應用中,云端調(diào)用的收費還是比較高昂的。

從應用場景來看,云端API受到網(wǎng)絡條件制約。對于追求低時延,穩(wěn)定高效、用戶體驗的閘機門禁、刷臉考勤、人臉測溫通行等產(chǎn)品應用中,也更推薦離線SDK。

因此綜合來看,虹軟視覺開放平臺的免費離線人臉SDK,是一個比較不錯的選擇。順便提一個細節(jié),筆者自己在嘗試用虹軟SDK搭建一個應用時,遇到了關于"活體檢測和人臉特征值提取多線程調(diào)用"的小疑問。于是,通過工單系統(tǒng)提交了技術支持需求,不到1天時間就得到了相關技術人員的1對1輔導,畢竟是科創(chuàng)板上市企業(yè)。

所以也推薦大家可以去他們的官網(wǎng)下載體驗一下。

(免責聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網(wǎng)站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。
任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權(quán)或存在不實內(nèi)容時,應及時向本網(wǎng)站提出書面權(quán)利通知或不實情況說明,并提供身份證明、權(quán)屬證明及詳細侵權(quán)或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關文章源頭核實,溝通刪除相關內(nèi)容或斷開相關鏈接。 )

贊助商
2020-09-01
開箱即用的人臉識別算法大盤點
人工智能領域最近幾年的發(fā)展可以說是如火如荼,這里面既有創(chuàng)業(yè)者的磨刀霍霍,也有資本的一路執(zhí)著狂跟,還有學生和程序員群體的熱情追隨。

長按掃碼 閱讀全文