c# 调用百度人脸对比

项目需要 ,要进行人脸对比 具体代码如下

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以上才能认为是同一个人

 

posted @ 2018-08-14 16:07  一头笨熊  阅读(717)  评论(0编辑  收藏  举报