教你用PHP实现微信小程序人脸识别刷脸登录功能

简介教你用PHP实现微信小程序人脸识别刷脸登录功能,首先我们先确认我们的百度云人脸库里已经上传了我们的个人信息照片;然后我们在后台写刷脸登陆的接口login我们要把拍照获取的照片存储到服务器;publicfunctionlogin(){//上传文件路径$dir=”./Uploads/temp/”;if(!file_exists($dir)){mkdir($dir,0777,true);}$upload

  

教你用PHP实现微信小程序人脸识别刷脸登录功能,首先我们先确认我们的百度云人脸库里已经上传了我们的个人信息照片;

然后我们在后台写刷脸登陆的接口login我们要把拍照获取的照片存储到服务器;

publicfunctionlogin(){//上传文件路径$dir="./Uploads/temp/";if(!file_exists($dir)){mkdir($dir,0777,true);}$upload=newThinkUpload();$upload->maxSize=2048000;//设置附件上传大小$upload->exts=array('jpg','gif','png','jpeg');//设置附件上传类型$upload->savepath='';$upload->autoSub=false;$upload->rootPath=$dir;//设置附件上传根目录//上传单个文件$info=$upload->uploadOne($_FILES['file']);if(!$info){//上传错误提示错误信息echojson_encode(array('error'=>true,'msg'=>$upload->getError()),JSON_UNESCAPED_UNICODE);}else{//上传成功获取上传文件信息$file=$dir.$info['savepath'].$info['savename'];$image= 64_encode(file_get_contents($file));$client=$this->init_face();$options['liveness_control']='NORMAL';$options['max_user_num']='1';$ret=$client->search($image,' 64','student',$options);//echojson_encode($ret,JSON_UNESCAPED_UNICODE);//exit;if($ret['error_code']==0){$user=$ret['result']['user_list'][0];$no=$user['user_id'];$score=$user['score'];if($score>=95){$data=M('student')->where("no='{$no}'")->find();$data['score']=$score;//$data['name']=json_decode($data['name'],true);//$data['sex']=json_decode($data['sex'],true);echo'识别成功'.json_encode($data,JSON_UNESCAPED_UNICODE);}else{echo'识别失败'.$data['score'];}}}}

然后进行前台设计;

<cameradevice-position="{{device?'back':'front'}}"flash="off"binderror="error"style="width:100%;height:300px;"></camera><viewclass="weui-cells__ ">开关</view><viewclass="weui-cellsweui-cells_after- "><viewclass="weui-cellweui-cell_switch"><viewclass="weui-cell__bd">切换摄像头</view><viewclass="weui-cell__ft"><switchbindtap="devicePosition"/></view></view></view><buttontype="primary"bindtap="takePhoto">刷脸登录</button>

我们还可以控制相机的前后镜头;

devicePosition(){this.setData({device:!this.data.device,})console.log("当前相机摄像头为:",this.data.device?"后置":"前置");camera(){let{ctx,type,startRecord}=this.data;},data:{src:null,},

在js里面调用接口;

takePhoto(){constctx=wx.createCameraContext()ctx.takePhoto({quality:'high',success:(res)=>{this.setData({src:res.tempImagePath})console.log(res)wx.uploadFile({url:'',//仅为示例,非真实的接口地址filePath:this.data.src,name:'file',formData:{},success:function(res){//vardata=res.data//varjson=JSON.parse(data)console.log(res)wx.showModal({ :"提示",content:res.data,showCancel:false,confirmText:"确定"})}})}})},

刷脸登录就成功了。

下载链接:网站源码/小程序源码/网站模板下载

版权声明

   站内部分内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供网络资源分享服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请 联系我们 一经核实,立即删除。并对发布账号进行永久封禁处理。在为用户提供最好的产品同时,保证优秀的服务质量。


本站仅提供信息存储空间,不拥有所有权,不承担相关法律责任。

给TA打赏
共{{data.count}}人
人已打赏
网站技巧

帝国cms模型数据表常用的二次开发的需要的函数

2024-9-19 19:43:29

网站技巧

MySQL 和 SQL Server 的区别?

2024-9-19 19:43:32

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索