获取accesstoken
function access_token(){
$file = __DIR__ .'\access_token';
if (file_exists($file)) {
$str = file_get_contents($file);
try{
$arr = json_decode($str,true);
if (is_array($arr)) {
$totime = $arr['totime'];
if ($totime>time()) {
return $arr['access_token'];
exit;
}
}
}catch(Exception $e){
}
}
$apikey = "bPUy30FBc5hmkY3sb1KP8IFn";
$secretkey = "dGv6SIahr51wrsyGmU8qjyIvn4nQmPV5";
$url = 'https://aip.baidubce.com/oauth/2.0/token';
$post_data['grant_type'] = 'client_credentials';
$post_data['client_id'] = $apikey;
$post_data['client_secret'] = $secretkey;
$o = "";
foreach ( $post_data as $k => $v )
{
$o.= "$k=" . urlencode( $v ). "&" ;
}
$post_data = substr($o,0,-1);
$res = https_post($url, $post_data);
$arr = json_decode($res,true);
if (isset($arr['access_token']) && isset($arr['expires_in'])) {
$data['access_token'] = $arr['access_token'];
$data['totime'] = time() + $arr['expires_in'] - 3600;
file_put_contents($file, json_encode($data));
return $arr['access_token'];
}else{
return false;
}
}
人脸检测并入库
public function facevalid(){
//获取access_token
$token = access_token();
// echo $token;
$file = './Uploads/8.jpeg';
if (!file_exists($file)) {
die('文件不存在');
}
//$url = "https://aip.baidubce.com/rest/2.0/face/v2/detect?access_token=" . $token;
//$img = file_get_contents($file);
$image = base64_encode(file_get_contents($file));
//如果有可选参数
$options = array();
$options["max_face_num"] = 2;
$client = $this->init_face();
$ret = $client->detect($image,'BASE64',$options);
if ($ret['error_code']==0) {//有人脸
$result = $ret['result'];
$face_num = $result['face_num'];
if (1 == $face_num) {//人脸数量为1
$face_probability = $result['face_list'][0]['face_probability'];
if (1 == $face_probability) {//可靠性为1
$guid = myguid();
$groupId='face_get';
$client->addUser($image,'BASE64',$groupId,$guid);
echo '人脸检测完毕并已入库';
}else{
die('可靠性为:'. $face_probability);
}
}else{
die('人脸数量大于1');
}
}else{
die('没有人脸');
}
}