请求类型: HTTP/HTTPS
接口地址: http://apicall.id-photo-verify.com/api/cut_wedding
请求方式: POST
请求数据类型:JSON
响应类型: JSON
接口状态: 启用
此方法是对双人照片进行换底裁剪,其中裁剪结果图为一张宽高比为3:2的图片,图片的大小会影响响应的时间
调用此接口不会增加调用次数 结果返回带水印图片,无水印图片和无水印已排版图片名字(均为多种颜色) 带水印图片存储时间为 1 天,无水印图片存储时间为 7 天 通过名字获取带水印图片不会增加已调用次数 (通过获取图片的api获取无水印图片或无水印已排版图片会增加 2 次调用次数) 同一个图片名称(包括单张和排版),如果需要再次获取,不会增加已调用次数
对应的app_key应用类型必须为结婚照制作 为保证图片质量,请上传的图片尽量遵循“男右女左”的顺序、且不戴首饰 考虑到算法响应速度,图片最好不超过6Mb
参数名称 | 参数类型 | 是否可空 | 参数示例 | 参数说明 |
---|---|---|---|---|
file | string | 否 | app/123.jpg | 图片的base64格式(注意不包含base64的头部数据),或者图片在oss的key(见第十三个接口) |
app_key | string | 否 | 已申请的app_key | |
process | string | 是 | image/resize,mxxx | 缩放规则 |
img_size | list | 是 | [926,617] | 制作结果宽高,宽高比例必须为3:2,若为空,则返回宽高比为3:2的未缩放图 |
fair_level_right | dict | 是 | None | 右人像美颜级别,详细见下方说明 |
fair_level_left | dict | 是 | None | 左人像美颜级别,详细见下方说明 |
need_beauty_buffer | bool | 是 | True | 是否需要美颜中间参数,默认为False,在客户端本地美颜时,需要此参数为True,且img_size字段将失效 |
use_cache | bool | 是 | True | 是否需要使用缓存,默认为True |
bg_type | string | 是 | RGB | 背景色类型,默认为暗红色图片背景,选择RGB则为(200, 37, 40)背景色 |
out_endpoint | string | 是 | https://oss-accelerate.aliyuncs.com | 控制返回链接的域名,见参数说明7 |
fair_level说明(以下各项默认为0):
{ "leyelarge": 1, # 左眼放大程度(0~5) "reyelarge": 1, # 右眼放大程度(0~5) "mouthlarge": 1, # 嘴巴缩小程度(0~5) "skinwhite": 1, # 皮肤美白程度(0~5) "skinsoft": 1, # 皮肤美肤程度(去皱纹、祛斑等)(0~5) "coseye": 1, # 美瞳程度(0~5) "facelift": 1 # 瘦脸程度(0~5) }
参数名称 | 类型 | 参数说明 |
---|---|---|
code | int | 状态码(200为正常请求,401为传入的规格id不存在) |
result | object | |
file_name | str | 无水印图片名称 |
file_name_wm | str | 带水印图片名称 |
img_wm_url | str | 带水印图片URL |
source_file | str | 原图的云端存储路径(使用此路径作为此接口请求中的file将大大提高效率) |
size | list | 图片尺寸(只有传递img_size才会有) |
beauty_buffer | object | |
left | str | base64编码后的左脸的美颜中间结果 |
right | str | base64编码后的左脸的美颜中间结果 |
# 同步请求 import requests, json, base64 url = "http://apicall.id-photo-verify.com/api/cut_wedding" with open("90.jpg", 'rb') as f: pic = f.read() headers = {"Content-Type": "application/json"} data = { "app_key": "your cut_wedding app_key", "file": base64.b64encode(pic).decode(), } data_json = json.dumps(data) res = requests.post(url,headers=headers, data=data_json) print(res.text) # 异步请求 import asyncio, requests, json, io, base64 from aiohttp import ClientSession async def cut_wedding(): url = "http://apicall.id-photo-verify.com/api/cut_wedding" with open("63.jpg", 'rb') as f: pic = f.read() headers = {"Content-Type": "application/json"} data = { "app_key": "your cut_wedding app_key", "file": base64.b64encode(pic).decode(), } data_json = json.dumps(data) async with ClientSession() as session: async with session.post(url, headers=headers, data=data_json) as res: result = await res.read() print(json.loads(result)) if __name__ == '__main__': loop = asyncio.get_event_loop() loop.run_until_complete(cut_wedding())
{ 'code': 200, 'result': { 'beauty_buffer': {'left': '', 'right': ''}, 'file_name': '0141b4129bf111ea97cf00163e0aee0131125red2', 'file_name_wm': '0141b4129bf111ea97cf00163e0aee01red_wm', 'img_wm_url': 'https://leqi-imgcall.oss-cn -shanghai.aliyuncs.com/result_wm%2F0141b41 29bf111ea97cf00163e0aee01red_wm.jpg?OSSAcce ssKeyId=LTAIQ8Lif1HHVkXd&Expires=1590213432& Signature=k9gEFMtfVB8ACcUK27bggQLRiGY%3D', 'print_file': '0141b4129bf111ea97cf00163e0aee0131125red2_print', 'print_wm_url': 'https://leqi-imgcall.oss-cn-shan ghai.aliyuncs.com/result%2F0141b4129bf111ea97cf00 163e0aee01red_print_wm.jpg?OSSAccessKeyId=LTAIQ8Lif 1HHVkXd&Expires=1590213432&Signature=Z%2BQOxxc9Jdd 1qdtE5XyoEjTsQYg%3D', 'size': [] } }