教你用PHP实现微信小程序人脸识别刷脸登录功能,首先我们先确认我们的百度云人脸库里已经上传了我们的个人信息照片;
然后我们在后台写刷脸登陆的接口login我们要把拍照获取的照片存储到服务器;
publicfunctionlogin(){//上传文件路径$dir="./Uploads/temp/";if(!file_exists($dir)){mkdir($dir,0777,true);}$upload=new\\Think\\Upload();$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=base64_encode(file_get_contents($file));$client=$this->init_face();$options['liveness_control']='NORMAL';$options['max_user_num']='1';$ret=$client->search($image,'BASE64','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__title">开关</view><viewclass="weui-cellsweui-cells_after-title"><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({title:"提示",content:res.data,showCancel:false,confirmText:"确定"})}})}})},
刷脸登录就成功了。
产品猿社区致力收录更多优质的商业产品,给服务商以及软件采购客户提供更多优质的软件产品,帮助开发者变现来实现多方共赢;
日常运营的过程中我们难免会遇到各种版权纠纷等问题,如果您在社区内发现有您的产品未经您授权而被用户提供下载或使用,您可按照我们投诉流程处理,点我投诉;
本文来自用户发布投稿,不代表产品猿立场 ;若对此文有疑问或内容有严重错误,可联系平台客服反馈;
部分产品是用户投稿,可能本文没有提供官方下下载地址或教程,若您看到的内容没有下载入口,您可以在我们产品园商城搜索看开发者是否有发布商品;若您是开发者,也诚邀您入驻商城平台发布的产品,地址:点我进入;
如若转载,请注明出处:https://www.chanpinyuan.cn/41124.html;