乐趣区

关于阿里云:使用阿里云接口实现证件照制作

之前制作证件照应用 face++ 的人像抠图和本人实现向 face++ 抠出来的透明图加上本人设置的背景实现证件照的制作,前面发现如果拍的照片不是很正规的话,应用抠图再减少背景色后制作成的证件照感觉不是很好,起初发现阿里云有一个主动证件照制作的接口

证件照制作地址:https://market.aliyun.com/products/57124001/cmapi030523.html

一:证件照制作接口后期筹备

1:购买证件照制作接口包

在应用证件照制作接口之前须要购买接口包,购买之后咱们会在治理控制台看到接口包对应的一些接口所需信息

阿里云治理控制台地址:https://market.console.aliyun.com/imageconsole/index.htm

2:证件照制作接口调用地址

http(s)://alidphoto.aisegment.com/idphoto/make

3:证件照制作接口所需 header

'Content-Type'=>'application/json; charset=UTF-8',
'Authorization' => 'APPCODE XXXXXX(治理控制台看到的 AppCode)'

4:post 传参

{
    "type": "jpg", # 图片类型,目前反对 "jpg" 和 "png" 两种类型
    "photo": '图片数据 BASE64 编码',
    "spec": "证件照规格 ID",  // 见证件照规格列表
    "bk": "背景色彩" // 见证件照色彩列表
}

证件照规格和背景色彩查看 pdf 下载:开发接口参考文档 - 证件照规格列表.pdf
5:证件照制作简略实例:

$img = '证件照图片地址';
$data = [
    'type' => 'jpg',
    'photo' => $this->fileToBase64($img),
    'spec' => 115,// 证件照规格
    'bk' => '#338FB2'// 证件照背景色彩
];
$url = 'https://alidphoto.aisegment.com/idphoto/make';
$client = new Client();
$response = $client->createRequest()
    ->setMethod('POST') // 申请形式
    ->setUrl($url)      // 申请地址
    ->setData($data)    // 数据传数组
    ->setFormat(Client::FORMAT_JSON)
    ->setHeaders([
        'Content-Type'=>'application/json; charset=UTF-8',
        'Authorization' => 'APPCODE XXX'
    ]) //header
    ->send();
$result = $response->data;
if ($response->isOk) {$data = $result['data'];
    if ($result['status'] == 0) {$img = $data['result'];
        $saveFile = '证件照保留地址';
        $content = file_get_contents($img);
        $saveImg = file_put_contents($saveFile, $content);
    }
} else {echo $response->data['errmsg'];
}

依据如上就能够实现证件照制作性能

退出移动版