项目需要 ,要进行人脸对比 具体代码如下
1:首先注册一个百度账号,接着登陆百度的api 创建一个应用 获取到apikey和secretkey
2:首先在nuget里面 搜索baidu.AI 然后安装就行了
3:安装之后 接着就是代码了 在使用说明里面有源码 这里我就贴上来就行了
class Program
{
static void Main(string[] args)
{
demo(@"D:\图片\3.jpg", @"D:\图片\4.jpg");
}
public static string ReadImg(string img)
{
return Convert.ToBase64String(File.ReadAllBytes(img));
}
public static void demo(string Url1,string Url2)
{
var API_KEY = "xxxxxx"; //百度注册账号的apikey
var SECRET_KEY = "xxxxxxxxxxxx"; //百度注册账号的secretkey
var client = new Baidu.Aip.Face.Face(API_KEY, SECRET_KEY);
var faces = new JArray
{
new JObject
{
{"image", ReadImg(Url1)},
{"image_type", "BASE64"},
{"face_type", "LIVE"},
{"quality_control", "LOW"},
{"liveness_control", "NONE"},
},
new JObject
{
{"image", ReadImg(Url2)},
{"image_type", "BASE64"},
{"face_type", "LIVE"},
{"quality_control", "LOW"},
{"liveness_control", "NONE"},
}
};
var result = client.Match(faces);
Console.Write(result);
Console.ReadKey();
}
}
result 返回的是对比后的结果,json格式的 需要对其进行反序列化才能获取到里面的数据,其中 socre这个是对比的分数,个人认为这个达到90以上才能认为是同一个人