當前位置: 妍妍網 > 碼農

4.9k star! 推薦一款領先的自由和開放原始碼面孔辨識系統,技術超強!

2024-06-29碼農

一、計畫介紹

本計畫是一個免費的開放原始碼面孔辨識計畫。實際上,它是一個基於碼頭的應用程式,可以作為獨立的伺服器或部署在雲中。你不需要事先的機器學習技能來建立和使用序言。

該系統提供了用於面部辨識、面部驗證、面部檢測、標誌性檢測、面具檢測、頭部姿態檢測、年齡和性別辨識的RESTAPI。解決方案還提供了一個角色管理系統,使您能夠輕松地控制誰可以存取您的面部辨識服務。

序言是作為一個碼頭組合配置提供的,並支持不同的模型,工作在CPU和GPU。我們的解決方案是基於最先進的方法和圖書館,如法涅特和視覺。

二、特點

這個系統可以精確地辨識人們,即使它只"看到"他們的照片一次。從技術上講,與類似的自由面部辨識解決方案相比,復合材料有幾個優點。序言:

  • 同時支持CPU和GPU,易於擴充套件

  • 是開放原始碼和自主機,這為數據安全提供了額外的保證

  • 既可以部署在雲中也可以部署在現場

  • 不需要機器專業知識就可以建立和使用

  • 使用了最先進的面部辨識方法,包括平面和視覺圖書館

  • 只有一個碼頭工人的命令就能快速啟動

  • 三、系統功能

    面部檢測

    面檢測服務用於檢測影像中的所有面.它認不出臉,只在影像上找到。面部檢測技術,如同一位敏銳的觀察者,能在任何影像的紛繁細節中精準捕捉每一張面孔的蹤跡。它不涉及辨認個體身份,而是專註於在畫面中巧妙定位每個人臉的存在。這項技術成為解鎖眾多有趣洞察的鑰匙:比如,它能助力商家智慧分析,揭示店鋪對各年齡層與性別的獨特吸重力;透過捕捉顧客視線的焦點,描繪出一幅幅熱力圖,洞悉店內哪些區域最吸睛;還能默默統計客流量,在高峰期為你精確計數;甚至,在這個特別時期,它還能成為公共健康的守護者,確保進入場所的每位顧客都妥善佩戴了口罩,為安心購物環境保駕護航。

    使用案例

    最有用的例子包括用於面部份析的面部外掛程式:

  • 收集關於你的商店在不同性別中的流行程度的統計數據

  • 收集關於你的活動受歡迎年齡的統計數據

  • 獲取具有裏程碑意義的資訊,以了解客戶的視野

  • 收集商店裏有多少顧客的統計數據

  • 辨識所有顧客是否正確地戴上面具

  • 如何測試

    1. 在序言應用程式頁面上,在框架的底部,單擊"建立"按鈕.

    2. 在"建立服務"對話方塊中,從"型別下拉選單"中選擇"檢測"。

    3. 輸入您將要建立的服務的名稱。

    4. 從服務框架中的服務列表中選擇您建立的服務;您可以使用搜尋欄位來過濾服務。

    5. 單擊要啟動的服務行中的測試按鈕.

    6. 在服務頁面上,開啟或拖放圖片進行分析。

    7. 該服務將顯示原始圖片,並在每一張臉上打上標記。

    面部辨識

    面部辨識服務平台運用先進演算法實作面容辨識,需首步將已知個體面部影像輸入至面容資料庫,構建基礎面容集。後續接獲未標記面容圖片時,平台即啟動面容匹配機制,分析並返回庫中最相似面容記錄。平台另配備驗證介面,針對面容集內特定個體實施精確辨識稽核,強化身份驗證準確度。技術上融合深度學習、影像處理及大數據管理,確保辨識高效且可靠。

    使用案例

    可能的案例包括:

  • 當你有員工的照片想認出辦公室裏的陌生人

  • 當你有會議與會者的照片,並想追蹤誰對哪個主題感興趣。

  • 當你有貴賓的照片,你想很快在人群中找到他們。

  • 如何測試

    1. 在序言應用程式頁面上,在框架的底部,單擊"建立"按鈕.

    2. 在"建立服務"對話方塊中,從型別下拉選單中選擇辨識。

    3. 輸入您將要建立的服務的名稱。

    4. 從服務框架中的服務列表中選擇您建立的服務;您可以使用搜尋欄位來過濾服務。

    5. 單擊要啟動的服務行中的測試按鈕.

    6. 在服務頁面上,開啟或拖放圖片進行分析。

    7. 該服務將顯示原始圖片,並在每一張臉上打上標記。


    表面驗證

    面部驗證服務是用來檢查這個人是否是正確的。該服務比較您發送到其余端點的兩個面並返回它們的相似性。

    使用案例

    可能的案例包括:

  • 當客戶給你提供身份證或駕駛執照時,你需要核實這是否是他。

  • 當一個使用者將他的社群網路帳戶連線到你的應用程式時,你想驗證這是不是他

  • 如何測試

    1. 在序言應用程式頁面上,在框架的底部,單擊"建立"按鈕.

    2. 在"建立服務"對話方塊中,從"型別下拉選單"中選擇"驗證"。

    3. 輸入您將要建立的服務的名稱。

    4. 從服務框架中的服務列表中選擇您建立的服務;您可以使用搜尋欄位來過濾服務。

    5. 單擊要啟動的服務行中的測試按鈕.

    6. 在服務頁面上,開啟或拖放兩張圖片以比較其內容。

    7. 該服務將顯示原始圖片,並在每一張臉上打上標記。

    四、面部辨識體系結構 整合 演算法

    1. 體系結構

    讓我們更仔細地看一下臉辨識體系結構。序言有幾個伺服器。當你開始使用序言時,你有一個方便使用者的使用者介面。在一開始,您在那裏設定環境,建立面孔辨識服務,並獲得API鍵。UI部署在平衡器伺服器上,它使用UI管理伺服器作為後端。所有的數據都保存在我們的資料庫中,當您準備好後,您可以開始使用API鍵進行面部辨識。為了提供面部辨識,該系統擁有API伺服器和深度學習伺服器。深度學習伺服器使用神經網路計算嵌入,API伺服器用於分類。API伺服器和深度學習伺服器都是可伸縮的,因此您可以執行幾個例項來提高效能。最重要的是平衡器,它可以傳遞所有的請求。在我們的預設配置中,我們使用NGINX作為平衡器。使用任何平衡器伺服器都是可能的,如果您使用庫伯內特斯,它可能特別有用。

    ‍2. 整合

    序言是你面部辨識計畫的一部份。要開始你的面部辨識開發,你需要一些視訊或照片捕捉硬體。如果你有一個視訊,你將需要把它分成框架,並行送到合成。所有的整合都是透過使用順序的API完成的。當然,在辨識面部時,請記住,您需要在面部辨識過程中執行業務邏輯。但簡而言之,該公司的面部辨識工作是使用RESTAPI與該系統整合。

    3. 技術支持

    如上所述,我們擁有不同的伺服器,並使用不同的技術來執行它們。我們在後端伺服器上使用了比達頓和Java,並且使用了各種各樣的機器學習庫,如MXNET和張力流。對於使用者介面,我們使用角和ngrx。我們將所有的東西都儲存在後格列克,並在碼頭執行解決方案。

    為了補充這些技術的面部辨識,我們使用了幾個演算法.當我們開始創作序言時,我們開始了 法努內, 這是一個用於面部辨識和集群的統一嵌入。它是一個非常流行的演算法和一個開源庫。我們使用與Fasenet後面相同的思想;我們計算嵌入物,對它們進行分類,並找出嵌入物之間的距離。一開始,我們用了 多工級聯摺積神經網路 用於聯合面部檢測和校準。但是我們決定找到更多的最先進的技術。我們發現一個面部辨識庫( 單階段密集面部在野外的定位 )用於面部檢測及次中心弧形( 大規模吵鬧的網路面孔對增強的面孔辨識 )用於面部辨識。

    原始碼下載地址:

    https://github.com/exadel-inc/CompreFace.git

    看到最後,如果這個計畫對你有用,一定要給我點個「 在看和贊 」。