将照片存入百度云人脸库


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{

    }
    

  }




你可能感兴趣的:(微信小程序)