小程序实现人脸识别功能(百度ai)


Posted in Javascript onDecember 23, 2018

本文介绍了小程序实现人脸识别功能,分享给大家,具体如下:

文档中心:https://ai.baidu.com/docs#/Begin/a2bbf4b2

接入流程

1. 按照文档获取AppID、API Key、Secret Key,进行Access Token(用户身份验证和授权的凭证)的生成

const getBaiduToken = function () {
 return new Promise((resolve, reject) => {
  //自行获取APIKey、SecretKey
  const apiKey = APIKey;
  const secKey = SecretKey;
  const tokenUrl = `https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=${apiKey}&client_secret=${secKey}`;
  wx.request({
   url: tokenUrl,
   method: 'POST',
   dataType: "json",
   header: {
    'content-type': 'application/json; charset=UTF-8'
   },
   success: function (res) {
    resolve(res);
   },
   fail: function (res) {
    wx.hideLoading();
    wx.showToast({
     title: '网络错误,请重试!',
     icon: 'none',
     duration: 2000
    })
    reject(res);
   },
   complete: function (res) {
    resolve(res);
   }
  })
 })
}

2. 选择人脸识别-->人脸检测,人脸识别接口分为V2和V3两个版本,确认在百度云后台获得的是V2还是v3版本接口权限。

//封装识别方法
const getImgIdentify = function(tokenUrl, data){
 return new Promise((resolve, reject) => {
  const detectUrl = `https://aip.baidubce.com/rest/2.0/face/v3/detect?access_token=${tokenUrl}`;
  wx.request({
   url: detectUrl,
   data: data,
   method: 'POST',
   dataType: "json",
   header: {
    'content-type': 'Content-Type:application/json; charset=UTF-8'
   },
   success: function (res) {
    resolve(res);
   },
   fail: function (res) {
    wx.hideLoading();
    wx.showToast({
     title: '网络错误,请重试!',
     icon: 'none',
     duration: 2000
    })
    reject(res);
   },
   complete: function (res) {
    resolve(res);
   }
  })
 })
}

3. 调用识别方法

getBaiduToken().then((res) => {
 let token = res.data.access_token;
 let data = {
  "image": self.data.img,
  "image_type":"URL",
  "face_field":"ge,beauty,expression,face_shape,gender,glasses,landmark,race,quality,eye_status,emotion,face_type"
 }
 util.getImgIdentify(token, data).then((res)=>{
  //百度接口返回的结果
  let score = parseInt(res.data.result.face_list[0].beauty);
  self.setData({
   score: score,
  })
 })
})

4. 结果如下:

小程序实现人脸识别功能(百度ai)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
window.addeventjs事件驱动函数集合addEvent等
Feb 19 Javascript
JavaScript判断DOM何时加载完毕的技巧
Nov 11 Javascript
javascript日期对象格式化为字符串的实现方法
Jan 14 Javascript
jquery 中的each()跳出循环的语句
May 23 Javascript
JavaScript实现点击按钮就复制当前网址
Dec 14 Javascript
js与jQuery实现checkbox复选框全选/全不选的方法
Jan 05 Javascript
深入理解JQuery中的事件与动画
May 18 Javascript
如何获取元素的最终background-color
Feb 06 Javascript
js Canvas绘制圆形时钟效果
Feb 17 Javascript
Angular实现下拉框模糊查询功能示例
Jan 03 Javascript
vue实现微信二次分享以及自定义分享的示例
Mar 20 Javascript
实例分析Array.from(arr)与[...arr]到底有何不同
Apr 09 Javascript
优雅的elementUI table单元格可编辑实现方法详解
Dec 23 #Javascript
基于webpack4.X从零搭建React脚手架的方法步骤
Dec 23 #Javascript
JavaScript基于数组实现的栈与队列操作示例
Dec 22 #Javascript
jQuery实现侧边栏隐藏与显示的方法详解
Dec 22 #jQuery
JavaScript时间日期操作实例小结【5个示例】
Dec 22 #Javascript
JavaScript文本特效实例小结【3个示例】
Dec 22 #Javascript
JavaScript实现的鼠标跟随特效示例【2则实例】
Dec 22 #Javascript
You might like
一个ORACLE分页程序,挺实用的.
2006/10/09 PHP
基于mysql的论坛(4)
2006/10/09 PHP
php模板之Phpbean的目录结构
2008/01/10 PHP
让PHP开发者事半功倍的十大技巧小结
2010/04/20 PHP
PHP 线程安全与非线程安全版本的区别深入解析
2013/08/06 PHP
2个自定义的PHP in_array 函数,解决大量数据判断in_array的效率问题
2014/04/08 PHP
php实现登录tplink WR882N获取IP和重启的方法
2016/07/20 PHP
Laravel中9个不经常用的小技巧汇总
2019/04/16 PHP
ExtJS 2.0实用简明教程之应用ExtJS
2009/04/29 Javascript
JQuery获取当前屏幕的高度宽度的实现代码
2011/07/12 Javascript
JQuery实现用户名无刷新验证的小例子
2013/03/22 Javascript
jQuery操作cookie方法实例教程
2014/11/25 Javascript
JQuery插件jcarousellite的参数中文说明
2015/05/11 Javascript
javascript生成大小写字母
2015/07/03 Javascript
jQuery EasyUI Pagination实现分页的常用方法
2016/05/21 Javascript
Javascript 闭包详解及实例代码
2016/11/30 Javascript
基于vue的下拉刷新指令和滚动刷新指令
2016/12/23 Javascript
vue实现tab切换外加样式切换方法
2018/03/16 Javascript
详解JavaScript 的变量
2019/03/08 Javascript
详解Vue前端对axios的封装和使用
2019/04/01 Javascript
JS中的变量作用域(console版)
2020/07/18 Javascript
浅谈vue中$bus的使用和涉及到的问题
2020/07/28 Javascript
如何利用node转发请求详解
2020/09/17 Javascript
[02:20]DOTA2亚洲邀请赛 EHOME战队出场宣传片
2015/02/07 DOTA
Python探索之Metaclass初步了解
2017/10/28 Python
python reduce 函数使用详解
2017/12/05 Python
Python干货:分享Python绘制六种可视化图表
2018/08/27 Python
提升Python效率之使用循环机制代替递归函数
2019/07/23 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
Python全局变量与global关键字常见错误解决方案
2020/10/05 Python
python模拟点击在ios中实现的实例讲解
2020/11/26 Python
自愿解除劳动合同协议书
2014/09/11 职场文书
小学母亲节活动总结
2015/02/10 职场文书
建党伟业观后感
2015/06/01 职场文书
python3使用diagrams绘制架构图的步骤
2021/04/08 Python
Win11开始菜单添加休眠选项
2022/04/19 数码科技