百度AI-人臉識別對接(在線活體檢測和身份驗證)


參考地址:
身份驗證: ai.baidu.com/ai-doc/FACE…
在線活體檢測: ai.baidu.com/ai-doc/FACE…

demo:

<?php namespace app\common\logic; use think\Cache; class Baidu extends Base { private $secret = '';//秘鑰 private $appkey = ''; private $appid = ''; private $go_url = '';//訪問地址 /** * 刷新token * @return \think\response\Json */ protected function refreshToken() { $param = [ 'grant_type' => 'client_credentials', 'client_id' => $this->appkey, 'client_secret' => $this->secret, ]; $url = $this->go_url . '/oauth/2.0/token?' . http_build_query($param); $result = httpRequest($url, 1); return $result; } /** * 獲取token * @return bool|mixed */ protected function getToken() { $token = Cache::get('baidu_token');//讀取緩存token 之前獲取的 if ($token) { return $token; } else { $res = $this->refreshToken(); if (isset($res['access_token'])) { Cache::set('baidu_token', $res['access_token'], 864000);//新獲取的token 再次保存 return $res['access_token']; } return false; } } /** * 百度 實名認證 * @param $image 身份證圖片 * @param $id_card 身份證號 * @param $name 姓名 * @return bool|mixed */ public function realname($image, $id_card, $name) { $token = $this->getToken(); $param = [ 'image' => $image, 'image_type' => 'URL', 'id_card_number' => $id_card, 'name' => $name, ]; $url = $this->go_url . '/rest/2.0/face/v3/person/verify?access_token=' . $token; $result = $this->request_post($url, json_encode($param)); return $result; } /** * 百度 活體檢測 * @param $image 檢測的照片 * @return bool|mixed */ public function imgcheck($image) { $token = $this->getToken(); $param = [[ 'image' => $image, 'image_type' => 'URL', ]]; $url = $this->go_url . '/rest/2.0/face/v3/faceverify?access_token=' . $token; $result = $this->request_post($url, json_encode($param)); return $result; } function jcHttpDataPost($url, $data, $json_transfer = 1) { if ($json_transfer == 1) { $data = json_encode($data, JSON_UNESCAPED_UNICODE); } else if ($json_transfer == 2) { $data = urldecode(json_encode($data, JSON_UNESCAPED_UNICODE)); } $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST"); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)'); curl_setopt($ch, CURLOPT_AUTOREFERER, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $status = curl_exec($ch); curl_close($ch); $res = json_decode($status, true); return $res; } function request_post($url = '', $param = '') { if (empty($url) || empty($param)) { return false; } $postUrl = $url; $curlPost = $param; // 初始化curl $curl = curl_init(); curl_setopt($curl, CURLOPT_URL, $postUrl); curl_setopt($curl, CURLOPT_HEADER, 0); // 要求結果為字符串且輸出到屏幕上 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // post提交方式 curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $curlPost); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); // 運行curl $data = curl_exec($curl); curl_close($curl); $res = json_decode($data, true); return $res; } }

 

文章轉載自https://www.juchengvi.com/looknews/74


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM