C# 調用百度AI 人臉識別

一、設置

登錄百度雲控制檯,添加應用-添加人臉識別,查找,對比等。

C# 調用百度AI 人臉識別

設置人臉識別應用

記住API Key和Secret Key

二、創建Demo程序

1、使用Nuget安裝 Baidu.AI 和 Newtonsoft.Json

C# 調用百度AI 人臉識別

Nuget

2、直接下載SDK https://ai.baidu.com/file/7D961BC013AB4AA7905001FAF89EE327

3、案例代碼

<code>private void simpleButton1_Click(object sender, EventArgs e)
{

//Devepxress 控件
Bitmap bitMap = cameraControl1.TakeSnapshot();
// 設置APPID/AK/SK
var API_KEY = "你的ApiKey";
var SECRET_KEY = "你的Secret_Key";
var client = new Baidu.Aip.Face.Face(API_KEY, SECRET_KEY);
client.Timeout = 60000; // 修改超時時間
client.AppId = APP_ID;
string guidName = Guid.NewGuid() + ".Jpeg";
bitMap.Save(guidName, ImageFormat.Jpeg);
var image = ReadImg(guidName);
var imageType = "BASE64";
var groupIdList = "bim";

// 如果有可選參數
var options = new Dictionary<string>{
{"max_face_num", 1},
{"match_threshold", 90},
{"quality_control", "NORMAL"},
{"liveness_control", "LOW"},
{"max_user_num", 1}};

// 調用人臉搜索 M:N 識別,可能會拋出網絡等異常,請使用try/catch捕獲
// 帶參數調用人臉搜索 M:N 識別
try
{
var result = client.MultiSearch(image, imageType, groupIdList, options);
//判斷是否成功
if (result["error_msg"].ToString() == "SUCCESS")
{
var list = JsonConvert.DeserializeObject<rootobject>(result.ToString());
if (list.result.face_list != null)
{
//獲取用戶標識
string userId = list.result.face_list[0].user_list[0].user_id;
memoEdit1.Text += $"{userId}:{DateTime.Now}\\r\\n";
}
}
else
{
memoEdit1.Text += $"認證失敗{guidName}:{DateTime.Now}\\r\\n";
}
}
catch(Exception ex)
{
XtraMessageBox.Show("驗證失敗!");
Console.WriteLine(ex);
}

}
public string ReadImg(string img)
{
return Convert.ToBase64String(File.ReadAllBytes(img));
}/<rootobject>/<string>/<code>

4、最終界面

C# 調用百度AI 人臉識別


分享到:


相關文章: