全身(半身)换装

基本信息

请求类型: HTTP/HTTPS

接口地址: http://apicall.id-photo-verify.com/api/whole_body_change

请求方式:POST

数据类型:JSON

响应类型: JSON

接口状态: 启用

接口描述:

此接口传入一张单人照(人物头部完整就行,不需要传全身照!!!不需要传全身照!!!不需要传全身照!!!),选择服装模板后返回对应的透明底换装图片,可参考剪裁并换装接口。目前主要用于毕业照的换装。

若需要定制服装或添加服装请联系销售人员。

调用此接口不会增加调用次数 结果返回透明底色带水印的图片URL及其名称,存储时间为 1 天 通过名字获取带水印图片不会增加已调用次数 (通过获取图片的api获取无水印图片或无水印已排版图片会增加 1 次调用次数) 同一个图片名称(包括单张和排版),如果需要再次获取,不会增加已调用次数

对应的app_key应用类型必须为全身(半身)换装

考虑到响应速度,图片请用上方获取OSS直传凭证上传文件后使用图片的云端路径访问

效果展示:

请求参数

参数名称 参数类型 是否可空 参数示例 参数说明
file string app/123.jpg 图片文件oss存储的key,见第十三个接口
clothes_id string 1 已有的服装ID
app_key string   已申请的app_key
process string image/resize,mxxx 缩放规则(非特殊要求可无视)
img_size list [926,617] 制作结果宽高(非特殊要求可无视)
need_resize bool False 是否需要缩放,img_size只是确定比例,但是不会缩放(默认不缩放)
ratios list [1,2,3,4,5] 自定义证件照制作比率,详见第四个接口的“参数说明5”
fair_level dict None 人像美颜级别,详细见下方说明
hat_id string 1 已有帽子ID,若不需要帽子可不传
hat_params dict None 帽子的参数,为字典格式,详见下方说明(非必要情况无需传递此参数)

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)
}
				

帽子hat_params参数说明:

hat_params字段为字典格式,当非空时,其有必须要有如下四个点的坐标

{    
	'left_top': [0, 181],    
	'right_top': [493, 181],    
	'left_brim': [61, 298],    
	'right_brim': [429, 298]
}
				

全身服装模板:

clothes_id 效果图 备注
1 img 毕业照模板1

帽子模板:

hat_id 效果图 备注
1 img 学士帽1

响应参数

参数名称 类型 参数说明
code int 状态码(200为正常请求,401为传入的规格id不存在)
result object  
size list 图片大小(像素宽高比)
source_file str 原图的云端存储路径(使用此路径作为此接口请求中的file将大大提高效率)
img_wm_url str 带水印图片URL
file_name list 无水印图片名称

python请求示例:

# 同步请求
import requests, json, base64
​
def whole_body_change():
    url = "http://apicall.id-photo-verify.com/api/whole_body_change"
​
    headers = {"Content-Type": "application/json"}
​
    data = {
        "clothes_id": 1,
        "hat_id": 1,
        "need_resize": True,
        "app_key": "your app_key",
        "file": "图片云端路径",
    }
​
    data_json = json.dumps(data)
​
    res = requests.post(url, headers=headers, data=data_json)
​
    print(res.status_code)
    print(res.text)
				

返回示例

{
  "code": 200, 
  "result": {
    "file_name": "change_plus637e927fa3324a52312552b5c3e1d3.png", 
    "img_wm_url": "https://...", 
    "size": [
      316, 
      806
    ], 
    "source_file": "app/637e927fa3324a52312552b5c3e1d3.jpg"
  }
}