1.首先到百度AI处申请到相应识别的接口权限
创建应用并选择管理应用获得ID SK AK
点击此处的SDK下载
选择下载PHP SDK
在tp5中的app下创建一个文件夹extend,并把下载的文件夹导入,重命名为baidu,便于寻找,如我使用植物识别就需要导入下面的
在lib/。。和下面的AipImageClassify中添加命名空间,记住这几个文件都需要修改噢
至此,所有的准备工作已经搞定了。接下来只需要在相应的php中使用就行了
给一个我使用的案例
//植物识别接口调用
public function Aiplant(){
$file = request()->file('image');
$type = 'plant';
if($file){
$imgUrl= '../public/uploads'.'/'. $type.'/' . date("Y/m/d");
$info = $file->validate(['size'=>1048576,'ext'=>'jpg,png,gif'])->rule('uniqid')->move($imgUrl);
if($info){
$APP_ID = 'xxxxxxx'; //填写你的百度APP_ID
$API_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; //填写你的百度API_KEY
$SECRET_KEY = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx'; //填写你的百度SECRET_KEY
$client = new AipImageClassify($APP_ID, $API_KEY, $SECRET_KEY);
//获取图片的名字
$imgName = $info->getSaveName();
$file = $imgUrl."/".$imgName;
// 如果有可选参数
$options = array();
$options["baike_num"] = 5;
$image = file_get_contents($file);
$res = $client->plantDetect($image,$options);
//同时向数据库插入识别记录,只插入识别率最高的
if(!isset($res['result'][0]['baike_info']['image_url'])||!isset($res['result'][0]['baike_info']['description'])){
$image_url = "";
$description = "";
}
else{
$image_url = $res['result'][0]['baike_info']['image_url'];
$description = $res['result'][0]['baike_info']['description'];
}
$return_data['list'] = $res;
$return_data['img'] = $file;
return_msg(200, '识别成功!', $return_data);
}else{
return_msg(400, '识别失败!', $file->getError());
}
}
}