C# 人臉識別庫 0.2
阿新 • • 發佈:2020-07-16
ViewFaceCore 0.2
超簡單的 C# 人臉識別庫
前言:
首先謝謝大家對這個庫的關注,前一篇博文得到了大家的 支援 和 Star,十分開心。本想盡快實現大家的期待的活體檢測功能,但是前段時間太忙了,是在抱歉!!!
⭐、GitHub & Important
- 本次更新的內容在 antispoofing 分支 上。
- 活體檢測需要 fas_first.csta 、fas_second.csta 兩個模型
- 為方便使用,這兩個模型也被包含在 Nuget 包中,0.2.x 版本在 70M+ 的大小
- 如果沒有需要活體檢測的需要,請繼續使用 0.1.x 版本
- 0.2.x 版本將繼續新增新的功能,也會繼續包含必須的模型檔案
- 0.1.x 版本將保持現有功能,並進行 bug 修復等工作
- 0.2.x 原始碼在 antispoofing 分支
- 0.1.x 原始碼在 master 分支
一、ViewFaceCore 介紹
這是基於 SeetaFace6 人臉識別開發的 .NET 平臺下的人臉識別庫
這是一個基於 .NET Standard 2.0 開發的庫
這個庫已經發布到 NuGet ,你可以一鍵整合到你的專案
更多請參見 C# 人臉識別庫 。
二、更新
本次更新內容
- 添加了 活體檢測 相關的方法
- 修復了識別結果部分未判斷的 bug
- 修改了部分結構
更新後無需修改之前的程式碼。
三、使用
1. 新增方法:
方法名 | 返回值 | 引數列表 | 備註 |
AntiSpoofing | AntiSpoofingStatus | Bitmap bitmap, FaceInfo info, FaceMarkPoint[] points, bool global | 檢測單幀圖片 |
AntiSpoofingVideo | AntiSpoofingStatus | Bitmap bitmap, FaceInfo info, FaceMarkPoint[] points, bool global | 檢測視訊幀圖片 |
- 這兩個方法也是對應到 SeetaFace6 中 活體檢測相關方法。
- 如果檢測失敗則返回 AntiSpoofingStatus.Error。
- AntiSpoofing 的返回值 可能為 AntiSpoofingStatus.Real、AntiSpoofingStatus.Spoof 或 AntiSpoofingStatus.Fuzzy。
- AntiSpoofingVideo 的返回值 可能為 AntiSpoofingStatus.Real、AntiSpoofingStatus.Spoof、AntiSpoofingStatus.Fuzzy或 AntiSpoofingStatus.Detecting。
- AntiSpoofingStatus.Detecting 說明傳入的圖片數量還不夠檢測,需要繼續呼叫此方法傳入 Bitmap。
AntiSpoofingStatus 列舉的各個值的含義註釋中都有說明
關於 global 引數:活體檢測方法預設是區域性檢測,如果要全域性檢測請使用 global 引數指定
- false: 區域性活體檢測 - 是對具體人臉的成像細節通過演算法分析,區別是一次成像和二次成像,如果是二次成像則認為是出現了攻擊。【需要 fas_first.csta 模型 】
- true: 全域性活體檢測 - 就是對圖片整體做檢測,主要是判斷是否出現了活體檢測潛在的攻擊介質,如手機、平板、照片等等。【需要 fas_first.csta 、fas_second.csta 模型 】
方法名 | 返回值 | 引數列表 | 備註 |
AntiSpoofingVideo | AntiSpoofingStatus | Bitmap[] bitmap, FaceInfo info, FaceMarkPoint[] points, bool global | 檢測圖片陣列 |
此方法可以讓你檢測視訊中的人臉,你需要讀取視訊,比提取每一幀影象,然後指定要檢測的人臉索引,即可進行檢測。
四、參與專案
你需要按照 SeetaFace6 文件 說明,並下載相關的開發包以及模型
- 可以將開發包的 lib 目錄 和 include 目錄 放至 C:\vclib\seeta 下 ,所有模型檔案放到 C:\vclib\seeta\model 目錄下
- 然後按照 github 上的編譯指引進行編譯。
- 也可以放在自定義的目錄中
- 此時需要配置 ViewFace 專案中各個路徑,確保各個依賴引用能被正確的載入。
- 修改 ViewFaceCore 專案的編譯命令,確保生成時可以將最新的檔案複製到生成目錄。
五、也許…
- 此專案還未實現 SeetaFace6 中的許多特性,也許:
想起 GitHub 密碼,持續更新…
刪除程式碼倉庫跑路…
- 如果在使用過程中遇到問題,你也許可以:
在 GitHub 報告Bug…
向我 傳送郵件
人臉跟蹤、人臉屬性、質量評估、眼睛狀態 Coming soon ...