人臉搜索項目開源了:人臉識別(M:N)-Java版


一、人臉檢測相關概念

人臉檢測(Face Detection)是檢測出圖像中人臉所在位置的一項技術,是人臉智能分析應用的核心組成部分,也是最基礎的部分。人臉檢測方法現在多種多樣,常用的技術或工具大多有insightface、pcn、libfacedetection、Ultra-Light-Fast-Generic-Face-Detector-1MB、CenterFace、RetinaFace MobileNet0.25等等。目前具有廣泛的學術研究價值和業務應用價值,比如人臉識別、人臉屬性分析(年齡估計、性別識別、顏值打分和表情識別)、人臉Avatar、智能視頻監控、人臉圖像過濾、智能圖像裁切、人臉AR游戲等等。

二、人臉識別的相關概念

人臉識別(Facial Recognition),即通過視頻采集設備獲取用戶的面部圖像,再利用核心的算法對其臉部的五官位置、臉型和角度進行計算分析,進而和自身數據庫里已有的范本進行比對,從而判斷出用戶的真實身份.人臉識別算法,在檢測到人臉並定位面部關鍵特征點之后,主要的人臉區域就可以被裁剪出來,經過預處理之后,饋入后端的識別算法。識別算法要完成人臉特征的提取,並與庫存的已知人臉進行比對,完成最終的分類。服務架構圖如下:

三、人臉比對的相關概念

人臉比對算法的輸入是兩張人臉圖片(人臉特征),輸出是兩個特征之間的相似度。人臉驗證、人臉識別、人臉檢索都是在人臉比對的基礎上加一些策略來實現。相對人臉提特征過程,單次的人臉比對耗時相對較短。另外值得一提的是人臉相似度計算一般使用的是cos距離,可以將相似度控制在[-1,1]中。

四、人臉識別的M:N模式

M:N 是通過計算機對場景內所有人進行面部識別並與人像數據庫進行比對的過程。M:N作為一種動態人臉比對,其使用率非常高,能充分應用於多種場景,例如公共安防,迎賓,機器人應用等。但是M:N模式仍存在很大的弊端,因為其必須依靠海量的人臉數據庫才能運行,並且由於識別基數過大,設備分辨率不足等因素,使M:N模式會產生很高的錯誤率從而影響識別結果。

五、開源人臉識別、人臉搜索服務

該項目是阿里雲視覺智能開放平台的人臉1:N的開源替代,項目中使用的模型均為開源模型,項目支持milvus和proxima向量存儲庫,並具有較高的自定義能力。其次項目使用純Java開發,免去使用Python帶來的服務不穩定性,支持docker一鍵部署、支持Java客戶端,restful接口等。

項目開源地址:https://gitee.com/open-visual/face-search

項目識別效果:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM