face++文档地址:https://console.faceplusplus.com.cn/documents/4887579api
face++人像抠图接口地址数组
https://api-cn.faceplusplus.c...yii2
参数说明:框架
是否必选yii
参数名post
类型编码
参数说明url
必选code
api_keyorm
string
调用此 API 的 API Key
必选
api_secret
string
调用此 API 的 API Secret
必选
image_base64
string
base64 编码的二进制图片数据
可选
return_grayscale
int
抠像后的返回值,默认为1标识返回灰度图及人像图,0标识仅返回人像图,2只返回灰度图
返回的参数body_image标识人像抠图的base64图片,简单实现以下,这里我是用的时Yii框架的yiisoft/yii2-httpclient拓展实现
$url = 'https://api-cn.faceplusplus.com/humanbodypp/v2/segment'; //post传参 $img = file\_get\_contents(XXX);//人像图片 $img = base64\_encode($img); $data = \[ 'api\_key' => 'XXX',//api\_key 'api\_secret' => 'XXX',//api\_secret 'image\_base64' => $img, \]; $client = new Client(); $response = $client->createRequest() ->setMethod('POST') // 请求方式 ->setUrl($url) // 请求地址 ->setData($data) //数据传数组 ->setHeaders(\['Content-Type'=>'multipart/form-data'\]) //header ->send(); if ($response->isOk) { //接口返回信息 $fileName = time() . '.png'; //保存人像抠图后图片 file\_put\_contents($fileName, base64\_decode($response->data\['body\_image'\])); //使用intervention/image拓展给抠图的人像加上背景色 $img = ImageManagerStatic::make($fileName); $img->fill('#64C5FF', 0, 0); $img->save('test.jpg'); } else { echo $response->data\['error\_message'\];//错误信息 }