当前位置: 首页 > Web前端 > HTML5

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

时间:2023-04-05 17:13:06 HTML5

文档中心:https://ai.baidu.com/docs#/Begin/a2bbf4b2访问流程1、根据文档获取AppID、APIKey、SecretKey,生成AccessToken(用户认证授权的凭证)constgetBaiduToken=function(){returnnewPromise((resolve,reject)=>{//自己获取APIKey和SecretKeyconstapiKey=APIKey;constsecKey=SecretKey;consttokenUrl=`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})拒绝(重新);},完成:函数(res){resolve(res);}})})}2、选择人脸识别-->人脸检测,人脸识别界面分为V2和V3版本,确认是否在百度云后台获取了V2或V3版本的界面权限。//封装识别方法constgetImgIdentify=function(tokenUrl,data){returnnewPromise((resolve,reject)=>{constdetectUrl=`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);},完成:函数(res){resolve(res);}})})}3.调用识别方法getBaiduToken().then((res)=>{lettoken=res.data.access_token;letdata={"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)=>{//返回的结果百度接口letscore=parseInt(res.data.result.face_list[0].beauty);self.setData({score:score,})})})4.结果如下:哼~根本不允许原文地址:https://github.com/liujianxi/...