.NET(C#、VB)APP開發——Smobiler平臺控制元件介紹:ArcFace人臉識別
阿新 • • 發佈:2022-11-29
本文簡述如何在Smobiler中使用ArcFace(虹軟人臉識別)。
Step 1. 新建一個SmobilerForm窗體,再拖入Button,Label,TextBox和AcrFace,佈局如下
在設計器中給MediaView.Url賦值或者在窗體的Load事件中賦值
Button的事件程式碼如下
string message = ""; private void button1_Press(object sender, EventArgs e) { //註冊人臉 arcFace1.Register(textBox1.Text, (s, args) => { if (args.isError == false) message = "註冊人臉成功"; else message = ""; Toast(message + "Error:" + args.error + " isError:" + args.isError); }); } private void button2_Press(object sender, EventArgs e) { //人臉識別,執行後會觸發FacialRecognized事件 arcFace1.Recognize(); } private void button3_Press(object sender, EventArgs e) { //判斷是否存在該人臉 arcFace1.Exist(textBox1.Text, (s, args) => { if (args.Exist == true) message = "檢測到有此人臉資料"; else message = "未檢測到有此人臉資料"; Toast( message + "Exist:" + args.Exist + " Error:" + args.Error); }); } private void button4_Press(object sender, EventArgs e) { //刪除人臉 arcFace1.Delete(textBox1.Text, (s, args) => { if (args.isError == false) message = "刪除人臉資料成功"; else message = ""; Toast( message + "Error:" + args.error + " isError:" + args.isError); }); }
在設計器選中ARCFace,新增事件
private void arcFace1_FacialRecognized(object sender, Smobiler.Plugins.FacialRecognizedEventArgs e)
{
Toast("Name:" + e.Name + " Score:" + e.Score + " Error" + e.Error);
}
Step 2. 測試
執行服務端後,手機上安裝官網的除錯工具進行測試。若是使用雲平臺上自行打包的客戶端, 需要新增相應外掛後再打包客戶端。
demo 參考 https://github.com/comsmobiler/SmobilerTutorials/blob/master/Source/Plugins/demoArcFace.cs
虹軟APP_ID,SDK_KEY獲取參考 https://www.smobiler.com/SmobilerDemo/arcface.aspx
補充
ARCFacePro人臉識別增強版,在服務端程式中也是使用ARCFace外掛,但在雲平臺上需要新增ARCFacePro外掛。
demo 參考 https://github.com/comsmobiler/SmobilerTutorials/blob/master/Source/Plugins/demoArcFacePro.cs