1.首先在官网下载v3版本服务端sdk,放到tp中(我用的是thinkphp框架)
2.调用v3版本里里的detect方法对照片进行人脸检测
3.符合条件,则调用addUser方法添加进人脸库
//初始化人脸识别
private function init_face(){
$APP_ID='xxxxxxxxxxxxxx';
$API_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$SECRET_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$dir = APP_PATH.'/face-sdk/';
require_once $dir . 'AipFace.php';//此文件为在官网下载的服务端sdk
return new \AipFace($APP_ID,$API_KEY,$SECRET_KEY);
}
public function facevalid(){
$file = './Uploads/5.jpg';
if(!file_exists($file)){
die('文件不存在');
}
$image = base64_encode(file_get_contents($file));
//如果有可选参数
$options = array();
// $options['face_field'] = "age";
// $options['face_field'] = "beauty";
$options['max_face_num'] = 4;//人脸数最多有几个
// $options['face_type'] = "LIVE";
$client = $this->init_face();//调用初始化人脸识别
$ret = $client->detect($img,'BASE64',$options);
print_r($ret);
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();
$group = $this->face_group();
echo $group;
$res = $client->addUser($image,'BASE64',$group,$guid);
print_r($res);
if($res['error_code']==0){
echo "人脸检测完成,已入库";
}
}else{
die('可靠性为'.$face_probability);
}
}else{
die('人脸数量大于1');
}
}else{
}
}