当前位置:主页 > 聚焦 >

小程序调用百度云接口实现人脸识别

时间:2020-12-17 13:11:06

  小程序开发教程栏目介绍不一样的实现人脸识别方法

 

  相关免费学习:小程序开发教程

  一 准备好百度云的开发者账号

  登录进入控制台人工智能------图像识别创建应用

  获取接口需要的参数

  查看官网API文档

  二 页面布局

  文件ai.wxml:

  <view class="c1"> <view class="c1-1"> </view> <button type="primary" size="mini" bindtap="chooseImage">选择图片</button> <view class="c1-2"> <image src="{{img}}" mode="widthFix"></image> <text>颜值:{{face.beauty}}</text> <text>年龄:{{face.age}}</text> <text>性别:{{face.gender.type}}</text> <text>情绪:{{face.emotion.type}}</text> </view> </view>

  编写样式文件ai.wxss

  .c1{ padding: 50rpx; } .c1-1{ height: 800rpx; margin-bottom: 20rpx; display: flex; justify-content: center; font-size: 30rpx; box-shadow: 0px 0px 10px gray; } .c1-2{ }

  页面布局如下:

  ai.js

  //获取app.js对象 var app = getApp(); Page({ data: { face: {},//检测结果 img: '', //选择的图片 showResult: false //检测是由有结果 }, onLoad: function (options) { //console.log('获取全局变量数据:' + app.globalData.access_token); }, //选择图片事件 chooseImage(){ var that = this; wx.chooseImage({ count: 1, sizeType: ['original', 'compressed'], sourceType: ['album', 'camera'], success (res) { const tempPath = res.tempFilePaths[0];//获取选择的图片的地址 //准备好了access_token和图片后,就可以开始请求百度的人脸检测接口了该接口需要的参数是access_token,图片的base64值 //图片的base64值的处理 var base64 = wx.getFileSystemManager().readFileSync(tempPath,'base64'); //提示 wx.showLoading({ title: '人脸检测中...', mask: true }); //开始请求百度的人脸检测接口 wx.request({ url: '检测结果正确 //将选择的图片回显到页面 //that.setData({img: tempPath}); that.setData(); //植物识别要传入键值对 //取出检测的结果进行页面显示 var face = res.data.result.face_list[0]; console.log(face); that.setData({face: face,showResult: true}); //隐藏加载窗口 wx.hideLoading(); }else{ wx.showToast({ title: '检测失败'+res.data.error_msg, duration: 5000 }); } } }) } }) }, /** * 用户点击右上角分享 */ onShareAppMessage: function () { } })

  app.js

  //app.js App({ onLaunch: function () { var access_token = wx.getStorageSync('access_token'); var expire_in = wx.getStorageSync('expire_in'); // var access_token = parse; var access_token_date = parseInt(wx.getStorageSync('access_token_date')); var now = new Date().getTime(); if(!access_token){ this.requestToken(); } else if(now > access_token_date + expire_in){ this.requestToken(); }else{ } // 展示本地存储能力 var logs = wx.getStorageSync('logs') [] logs.unshift(Date.now()) wx.setStorageSync('logs', logs) // 登录 wx.login({ success: res => { // 发送e 到后台换取 openId, sessionKey, unionId } }) // 获取用户信息rInfo']) { // 已经授权,可以直接调用 getUserInfo 获取头像昵称,不会弹框 wx.getUserInfo({ success: res => { // 可以将 res 发送给后台解码出 unionId this.globalData.userInfo = res.userInfo // 由于 getUserInfo 是网络请求,可能会在 Page.onLoad 之后才返回 // 所以此处加入 callback 以防止这种情况 if (this.userInfoReadyCallback) { this.userInfoReadyCallback(res) } } }) } } }) }, globalData: { userInfo: null }, requestToken() { var that = this; wx.request({ url: '那里填写自己的百度key值 client_id: 'aaa', client_secret: 'aaa' }, //header: {'content-type': 'application/json'}, header: {'content-type': 'application/x-www-form-urlencoded'}, success (res) { if(res.statusCode == 200){ wx.setStorageSync("access_token", res.data.access_token); wx.setStorageSync("expires_in", res.data.expires_in); //wx.setStorageSync("access_token_date", res.data.access_token_date); wx.setStorageSync("access_token_date", new Date().getTime()); that.globalData.access_token = res.data.access_token; } } }) } })

  识别结果如下:

热点推荐
1 韩国国税厅提议修订《刑事诉讼法》强化

韩国国税厅官员提议修订《刑事诉讼法》,以强化对个人自持虚拟资产的扣押执行规则。今年...

2 韩国股市与纳斯达克100指数相关系数升至

消息,据彭博社披露,韩国综合股价指数与纳斯达克100指数的60日相关系数升至0.46,接近过去...

3 Polymarket:美联储7月29日维持利率不变概率

消息,Polymarket交易者目前预计美联储在7月29日的决策中维持利率不变的概率为93.5%。...

4 长鑫存储巨鲸挂出832万美元卖单,挂单规

消息,长鑫存储巨鲸在HyperLiquid上挂出832万美元的卖单,挂单规模已超过CXMT单日成交额。当前...

5 BTC ETF两周吸引2.73亿美元资金

消息,BTC交易所交易基金在两周内吸引了2.73亿美元的资金流入,尽管这一数字与此前八周流出...

6 Schwab新兴市场ETF与iShares全球ETF:哪个更适

消息,Schwab新兴市场ETF与iShares全球ETF之间的对比引发了投资者的关注。Schwab ETF主要针对新兴经...

7 沉睡鲸鱼在5年后转移700枚BTC,当前价值约

一只沉睡的鲸鱼在5年后转移了700枚比特币,最初购买时花费约2234万美元,目前价值约4530万美...

8 Zhu Su:石油或许是AI的最佳类比,最终将

消息,三箭资本联合创始人Zhu Su表示,石油或许是AI的最佳类比,两者都存在多种形态并最终走...

9 币安将于7月21日停止支持MOVR和GLMR主网充

消息,币安官方公告称,将于2026年7月21日19:00停止支持moonriver 和moonbeam 主网的充值和提现业务...

10 摩根士丹利:欧洲柴油供应紧缩压力或将

消息,摩根士丹利指出,由于一系列重大供应挑战同时出现,欧洲正面临柴油供应紧缩局面,...

成都来彰科技 蜀ICP备2025134723号-1

资讯来源互联网,如有版权问题请联系管理员删除。