又到了交完项目暂时么有事情的时候啦~ 然后自己无聊,突然想研究研究人脸识别 =- = 于是就开始了

零. 先在网上查Unity 人脸识别 ,你会发现网上的大部分都是 OpenCV 和 BaiduAI 的SDK ~ 于是我就选择了先看 Baidu的把~

(忘了一件事情: 百度的人脸识别SDK 更新了V3 版本,但是V2 也是能正常服务的,所以要注意)

一: 下载SDK

因为Unity 是C#语言的所以你懂的~

下载以后解压你会发现有好几个~ 因为我用的版本是5.6.1 ,查了查网上的资料,我选择了第一个 net35 (为啥查资料呢?因为unity 支持的 .NET 版本不高啊,太高的用不了,毕竟SDK 是针对C#  不是针对Unity啊)

然后打开文件夹 你会发现 有几个 .dll 的文件

然后把他们 放在 文件夹下就行了

二. 注册个百度账号,去创建你的库

创建好以后你会看到

AppID ,API Key 和 Secret Key 很重要哦~

三 . 接下来就是代码了 话不多说直接粘代码


// **********************************************************************
// Copyright (C) 2017 The company name
//
// 文件名(File Name):
// 作者(Author):                  Future.YS
// 创建时间(CreateTime):           2018/7/18 15:34:45
// 修改者列表(modifier):
// 模块描述(Module description):   百度人脸识别
// **********************************************************************
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Baidu.Aip.Face;
using System.IO;
using System;public class HelloFace : MonoBehaviour {// 设置private string app_ID = "";private string app_KEY = "";private string secret_KEY = "";private Face client;// 连接void Awake(){System.Net.ServicePointManager.ServerCertificateValidationCallback +=delegate (object sender, System.Security.Cryptography.X509Certificates.X509Certificate certificate,System.Security.Cryptography.X509Certificates.X509Chain chain,System.Net.Security.SslPolicyErrors sslPolicyErrors){return true; // **** Always accept};}void Start(){client = new Baidu.Aip.Face.Face (app_KEY,secret_KEY);StartCoroutine(IEGetStringBase64());}//    /// <summary>
//  /// 人脸注册(官网给的)
//  /// </summary>
//  public void UserAddDemo() {
//      string image = "取决于image_type参数,传入BASE64字符串或URL字符串或FACE_TOKEN字符串";
//
//      string imageType = "BASE64";
//
//      string groupId = "Friend";
//
//      string userId = "user1";
//
//      // 调用人脸注册,可能会抛出网络等异常,请使用try/catch捕获
//      var result = client.UserAdd(image, imageType, groupId, userId);
//      print(result);
//      // 如果有可选参数
//      var options = new Dictionary<string, object>{
//          {"user_info", "liuyizhong"},
//          {"quality_control", "NORMAL"},
//          {"liveness_control", "LOW"}
//      };
//      // 带参数调用人脸注册
//      result = client.UserAdd(image, imageType, groupId, userId, options);
//      print(result);
//  }public void SignUpFace(string image, string imageType, string groupId, string userId){    var options = new Dictionary<string, object>{{"user_info", "liuyizhong"},{"quality_control", "NORMAL"},{"liveness_control", "LOW"}};// 带参数调用人脸注册var result = client.UserAdd(image, imageType, groupId, userId, options);}IEnumerator IEGetStringBase64()  {  //获取到每一张图片的路径  string[] picsPathArr = Directory.GetFiles(Application.streamingAssetsPath + "/FaceDetect/");  //循环获取每张图片的base64字符串  for (int i = 0; i < picsPathArr.Length; i++)  {  //unity会自动生成.meta文件,过滤掉  if (picsPathArr[i].Contains("meta")) continue;  //读取  FileInfo file = new FileInfo(picsPathArr[i]);  var stream = file.OpenRead();  byte[] buffer = new byte[file.Length];  //读取图片字节流  stream.Read(buffer, 0, Convert.ToInt32(file.Length));  //base64字符串  string imageBase64 = Convert.ToBase64String(buffer);  //采用base64字符串方式上传  string imageType = "BASE64";  //用户组  string groupId = "Friend";  //用户id,一般同一个人的图片放在同一个id下  string userId = "liuyizhong";  //开始注册  SignUpFace(imageBase64, imageType, groupId, userId);  yield return new WaitForSeconds(0.6f);  }  }//人脸对比public void FaceSearch(){FileInfo file = new FileInfo(Application.streamingAssetsPath + "/FaceDetect/1_1.jpg");var stream = file.OpenRead();byte[] buffer = new byte[file.Length];//读取图片字节流stream.Read(buffer, 0, Convert.ToInt32(file.Length));var image = Convert.ToBase64String(buffer);var imageType = "BASE64";//之前注册的组var groupIdList = "Friend";var result = client.Search(image, imageType, groupIdList);Debug.Log(result);}}

好了- - 之后 开始工程 你就会发现他上传到了你自己账号里~

score 就是人脸对比度  0 - 100 ~

————————————————
版权声明:本文为CSDN博主「灰了个灰」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yaojiawudi/article/details/81095428

Unity —— 百度人脸识别SDK使用相关推荐

  1. Unity 百度人脸识别SDK之人脸检测

    前期准备 不管在调用什么SDK,都得先查看相应的SDK文档,本人比较懒,就直接贴出百度人脸检测的文档内容.之后跟着文档一步一步的去实现. 可以看到SDK的功能有人脸检测.人脸对比和查找人脸.本篇主要实 ...

  2. 百度人脸识别SDK的坑

    百度人脸识别SDK jar包冲突: 首先是百度人脸识别的SDK的Maven依赖: com.baidu.aip java-sdk 4.11.3 <dependency><groupId ...

  3. android Camera2 API适配百度人脸识别SDK

    Camera2 API替换Camera API之后的问题 camera和camera2的最主要区别之一就是camera2不再支持nv21的输出,通常我们为了使视频预览更加的流畅,会采用YUV_420_ ...

  4. SpringBoot整合百度人脸识别SDK离线版操作步骤,Windows发布打包SpringBoot百度人脸识别SDK项目,以及解决百度人脸识别SDK离线版遇到的问题

    前言 1.下载百度人脸识别SDK离线版. 2.开发工具:IntelliJ IDEA 百度人脸识别官网:https://cloud.baidu.com/doc/FACE/s/Ol0rre5u5 步骤 一 ...

  5. 百度云android人脸识别sdk,android 集成百度人脸识别sdk 实现考勤

    主要sdk 离线人脸采集sdk 具体实现官网已经写的很详细,这边就说一下移动端集成sdk 所碰到的坑. 第一坑 sdk下载 要下载sdk必须要认证,不过现在有了个人认证,可以先认证一下 下载下来sdk ...

  6. 安卓java百度人脸识别SDK简单使用

    首先在百度智能云注册之后创建自己的应用.当前SDK版本4.11.1.具体注册和导入jar包可以参考其他教程. 由于涉及网络访问,请先申请网络访问权限. public class MainActivit ...

  7. 百度人脸识别sdk图片转码的问题

    使用base64格式需要先将图片转码 先在python2.7中使用了人脸搜索功能,代码如下: f = open('image/test.jpg','rb') img = base64.b64encod ...

  8. 百度人脸识别sdk中人脸搜索功能需要注意的问题

    ①人脸搜索功能中,只要图片能识别出人脸,返回结果中就会['error_msg'] = 'SUCCESS' 所以最好使用这个作为判断条件 ②我之前以为user_list是返回的匹配成功的用户列表,但是如 ...

  9. 调用百度的人脸识别SDK实现人脸检测

    在百度控制台创建APP具体操作过程看上一篇文章https://blog.csdn.net/qq_34613314/article/details/117290951?spm=1001.2014.300 ...

最新文章

  1. 从BERT、XLNet到MPNet,细看NLP预训练模型发展变迁史
  2. BZOJ3209(n的二进制表示中1的个数的乘积)
  3. Docker 精通之入门
  4. python按位翻转_Python成为专业人士笔记-位操作符
  5. oracle的local,11G R2 Oracle Local Registry(OLR)
  6. tql触发器修改记录时同步更新_运维日记|MySQL数据单向同步方案对比
  7. linux xxx is not in the sudoers file.This incident will be reported.的解决方法
  8. 视频md5修改器苹果手机
  9. 自动化运维工具ansible安装及使用
  10. Myeclipse10破解版安装包
  11. 康佳电视维修记 LED55M5580AF
  12. onenote 无法正常使用的解决办法
  13. weak_auth 小宁写了一个登陆验证页面,随手就设了一个密码。
  14. Kindeditor图片粘贴上传(chrome)
  15. java实现爬取文本中的手机号、邮箱以及电话号码
  16. 百度之星Valley Numer
  17. 独立同分布(Independently and Identically Distributed, iid)
  18. JAVA:实现BloomFilter二进制向量数据结构算法(附完整源码)
  19. 慕课网——MySQL优化
  20. 周鸿祎刘强东等互联网大佬最失败的创业项目

热门文章

  1. stm32 MPU6050 6轴姿态传感器的介绍与DMP的应用
  2. Incorporating visual features into word embeddings:A bimodal autoencoder-based approach
  3. 计算机类核心期刊审稿与发表周期,一般核心期刊的发刊周期有多长
  4. 嵌入式linux内核 浮点运算,ARM处理器Linux下浮点运算单元运用
  5. python删除指定字符串之间所有行_python:删除包含字符串的pandas数据帧中的所有行...
  6. git设置master权限_Gitlab权限管理
  7. 2019年9月15日记
  8. 分布式AKF拆分原则
  9. 海康摄像机web3.0控件
  10. 基于51单片机的酒精浓度检测仪设计