最近项目要用到人脸与身份证对比功能,先拿百度云的人脸识别测试一下,于是先登录百度智能云:https://login.bce.baidu.com/?account=&redirect=http%3A%2F%2Fconsole.bce.baidu.com%2F%3Ffromai%3D1#/aip/overview
使用百度账号就能登录,下载对应的SDK,因为我用的是C#开发,所以下载C#版SDK。参考官网上示例代码,先获取Access Token:

但是引用System.Net.Http包时发现错误,找不到对应的包。网上查了一下,System.Net.Http包是从.NET framework 4.5版本才开始包含的,只得下载个.NET framework 4.5安装。然后在项目属性中修改“目标框架”:

可是没有发现刚安装的4.5版本啊,重启电脑试一下,还是木有。原来VS2010最高支持到.NET framework 4.0,想换版本,但是以前程序发布的都是用4.0的,换高版本就比较麻烦。
有个管理.NET包的神器名叫NuGet,下载它进行包管理吧,去到官网https://www.nuget.org/进入Downloads页面:

找了半天只有x86版本的没有x64的啊,真是坑爹。想到新版本的VS是集成NuGet的,那么对于VS2010应该也有插件吧,赶紧搜索下,在工具–>扩展管理器中:

联机搜索NuGet,搜到几个插件,但安装完都不是:

继续往下找,有个“NuGet Package Manager”:

点击下载进行安装:

安装后需要重启VS2010,重启后在引用处右键就会出现“管理NuGet程序包”:

在里面搜索System.Net.Http包:

终于找到对应包了,赶紧点击安装吧:

安装失败,白高兴了。提示NuGet版本太低了,升级NuGet也不现实了,VS2010只支持到2.8.6版本。哎,VS2010看来已经过时了,难道只能安装新的VS了吗?山重水尽尽疑无路,柳暗花明又一村,无意间发现了“Microsoft HTTP Client Libraries”库,这个应该是System.Net.Http的前身,适用于低版本的VS,赶紧用NuGet搜一下它吧:

安装之后会自动为我们添加相应的引用的:

并且在项目的目录下会生成一个packages目录,里面有新安装的库文件:

这样的话,即使再换一个没安装NuGet的电脑,这个项目也正常可以编译的。编译没问题了,赶紧测试一下吧,访问百度接口:

https://aip.baidubce.com/oauth/2.0/token
结果返回:
{"error_description": "unknown client id", "error": "invalid_client"}

未知的client id,再仔细看看官方说明文档,之前也不知哪位大神告诉我的访问参数用安全认证里面的“Access Key”:

实际上人家是创建人脸识别的应用好不:

使用应用里面的API Key和Secret Key:

把程序中clientId和clientSecret参数改成应用里面对应的值,再次请求,这次获得到正确的access_token:

只要把这个access_token保存好了就可以,一般有效期是一个月。下面就能正常使用百度人脸识别的API了,我要用人脸对比接口,按照百度文档使用前进入应用管理里面查看一下API的版本:

看一下我这里的权限版本:

不错,是v3版本的,访问接口时要注意带上token值(就是上面获取的access_token):

"https://aip.baidubce.com/rest/2.0/face/v3/match?access_token=" + token;

注意百度API要求图片参数是Base64编码的格式,需要把图片文件转换为Base64编码,这里给出我的C#代码:
public static string ImageToBase64(string fileFullName)
{
try
{
Bitmap bmp = new Bitmap(fileFullName);
MemoryStream ms = new MemoryStream();
bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);

 byte[] arr = new byte[ms.Length]; ms.Position = 0;ms.Read(arr, 0, (int)ms.Length); ms.Close();return Convert.ToBase64String(arr);
}
catch (Exception ex)
{return null;
}

}
这样就能正常调用百度API进行人脸对比了,注意成功时返回error为0,而对比结果在result字段下面了,这点和官方文档上有点出入。把这些都记录下面,以便大家调用的时候少走弯路。

使用百度云API进行人脸对比相关推荐

  1. SpringBoot+百度云API 实现人脸识别功能

    Java项目分享 缺项目经验的请看过来 2篇原创内容 公众号 前言 去年在公司参与了一个某某机场建设智能机场的一个项目,人脸登机是其中的一个功能模块,当时只是写了后台的接口,调用人脸识别设备的api, ...

  2. Python调用百度API进行人脸对比

    目录 1. 作者介绍 2. 关于Base64知识介绍 2.1 Bsae64是什么 2.1 Bsae64编码原理 3. 实验过程 3.1 实验过程 3.2 实验代码 3.3 运行结果 3.4 问题分析 ...

  3. Qt+百度API实现人脸对比寻找明星脸

    一.要求 1.使用百度人脸识别库 2.识别对比图片,获取图片相似度 3.显示最相似的明星照片.显示本人照片 4.调用摄像头拍照.比对查找最相似的明星脸 5.录入明星照片.查看照片列表.修改.删除照片 ...

  4. JavaWeb使用百度人工智能API实现人脸识别登录,人脸注册

    1.JavaWeb使用百度API实现人脸识别 本篇博客使用的环境是SSM+Maven+JSP实现人脸识别登录,适合于JavaWeb的开发(其他语言也可以作为参考),我会从注册百度云账号,前台如何调用摄 ...

  5. python 人脸比对,python 使用百度AI接口进行人脸对比的步骤

    1. 注册百度云账号 注册百度智能云,提交申请. 创建应用获取AppID,API Key,Secret Key. 2. 安装baidu python api 人脸对比 API 文档 pip insta ...

  6. tensorflow调用百度云API实现颜值打分简单实例

    tensorflow调用百度云API实现颜值打分简单实例 首先还是在百度智能云官网注册/登陆账号,再申请一个人脸识别的API,记好API和密码,也要放到代码里面. 详细申请操作请详看tensorflo ...

  7. 智能门禁(7)----调用face++api实现人脸对比

    人脸识别(二)调用face++api实现人脸对比 首先来看一看调用的人脸对比的api需要的东西:  face++调用人脸对比api的网址: https://api-cn.faceplusplus.co ...

  8. python使用百度云API接口图片卡通化

    python使用百度云API接口图片卡通化: import requests import base64class AnimeDemo:def __init__(self,AK,SK):self.AK ...

  9. 调用百度人脸识别API进行人脸对比 C语言

    百度人脸识别api使用是免费的,有人脸对比.人脸搜索.人脸检测与属性分析三个功能,本文写的是人脸对比.这里给出百度人脸对比api的技术文档,请点击网址https://cloud.baidu.com/d ...

  10. 通过百度人脸对比API进行人脸对比

    百度人脸对比API的使用 今天突然有兴趣想做个人脸识别的小demo,项目代码地址:https://github.com/lxixi01/Face_Recognition 效果如下: 步骤: 第一步,需 ...

最新文章

  1. MySQL数据库自连接查询inner join ... on
  2. duilib 子窗口位置_Duilib学习笔记《02》— 界面布局
  3. 黑电平校正、FPN校正、平场校正、白平衡校正
  4. 创建mysql代码实例_MySQL筹建系列之多实例_mysql
  5. Source does not fit in dest
  6. php 7 xhprof,php7中使用xhprof解析
  7. Solr(一) Solr 简介及搜索原理
  8. 计算机一级wps题库及答案,全国计算机一级《WPS》选择题题库及答案2016
  9. IXDC2018国际体验设计大会精华汇总,微软、阿里巴巴、小米、Adobe等大咖都说了啥?...
  10. 用matlab做仿真实验难不难,SIMULINK仿真实验心得体会
  11. Linux内核网络UDP数据包发送(四)——Linux netdevice 子系统
  12. 帝国 loginjs.php,帝国CMS的安装方法
  13. 倾斜摄影超大场景的三维模型的顶层合并,提升模型在WEB三维展示效果
  14. 艺赛旗(RPA) 新手课堂 - 键盘与输入
  15. Windows10系统如何安装git
  16. c语言程序标准输入和输出语句,C语言程序设计--输入与输出
  17. 使用OpenDaylight界面下发流表
  18. springboot版本的微信授权
  19. 大数据Hadoop底层技术和原理
  20. html页面设置平滑字体,HTML5之CSS-网页文本美化-字体样式

热门文章

  1. 基于单片机的红绿黄灯设计(单片机实验交通灯设计)
  2. Oracle基础--PL/SQL编程基本语法
  3. 谷歌生物医学专用翻译_翻译软件的六大测评,请专家来支招
  4. 1.1、信息化和信息系统
  5. 16-20信息安全工程师上午题总结
  6. w ndows10怎么关闭启动项,Windows10系统移除启动项无用项目的三种方法
  7. 微信小程序获取用户手机号异常的问题解决
  8. 安装Powerdesigner16.5
  9. java layoutinflater_LayoutInflater详解
  10. linux虚拟主机的三种方法