证件照环境检测

基本信息

请求类型: HTTP/HTTPS

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

请求方式: POST

数据类型: JSON

响应类型: JSON

接口状态: 启用

接口描述

证件照环境检测,此接口多用于调用制作照片的接口之前,用于预检测

调用此接口不会增加已调用次数

对应的app_key应用类型必须为证件照环境检测

本接口环境检测采用设定阈值的方式,通过参数传过来的阈值,与算法检测出来的各项对应值比较,得到通过与否的结果(共7个检测项)。设定的阈值越大检测越不严格,越容易通过;阈值越小检测越严格,越不容易通过。

比如facepose检测项用户传过来阈值为 20,检测结果为 30,则该检测项不通过,如果想要放宽facepose此检测项的要求,可以调整阈值,将上传的阈值改为 40,则此检测项即为通过(用户看不到算法检测出来的各项对应值)。

用户可以根据自己需求不断调整传送的阈值,默认阈值依次顺序为40,40,35,20,50,50,60。

请求参数

参数名称 是否必须 类型 描述
file str 图片的base64数据(注意不包含base64的头部数据)
app_key str 已申请的app_key
facepose int 人脸是正对镜头(姿态)
eyegaze int 视线是否正常
eyeskew int 眼睛是否歪斜(双眼连线不水平)
shoulderskew int 肩膀是否水平正对镜头
darkillum int 照片光照是否昏暗
unbalanceillum int 人脸是否为阴阳脸
bfsimilarity int 衣服和背景颜色是否相似

响应参数

参数名称 类型 示例 描述
code int 200 状态码
msg str SUCCESS 接口调用信息
total_result int 1 检测结果汇总,各检测项中有一项未通过则为0,全部通过则为1
result object 各个参数的检查结果:1代表通过,0代表未通过
facepose int 1 人脸是正对镜头(姿态)
eyegaze int 1 视线是否正常
eyeskew int 1 眼睛是否歪斜(双眼连线不水平)
shoulderskew int 1 肩膀是否水平正对镜头
darkillum int 1 照片光照是否昏暗
unbalanceillum int 1 人脸是否为阴阳脸
bfsimilarity int 1 衣服和背景颜色是否相似

python请求示例

import requests, json, base64
​
url = "http://apicall.id-photo-verify.com/api/env_pic"
​
with open('test.png', 'rb') as f:
	pic = f.read()
​
headers = {"Content-Type": "application/json"}
data = {
	"app_key": "13c1815dbca2413c2db75b5ac50349f4e1dd9786",
	"file": base64.b64encode(pic).decode(),
	# 下列项可以改为需要的阈值
	'facepose': "40",  # 人脸是正对镜头(姿态)
	'eyegaze': "40",  # 视线是否正常
	'eyeskew': "35",  # 眼睛是否歪斜(双眼连线不水平)
	'shoulderskew': "20",  # 肩膀是否水平正对镜头
	'darkillum': "50",  # 照片光照是否昏暗
	'unbalanceillum': "50",  # 人脸是否为阴阳脸
	'bfsimilarity': "60",  # 衣服和背景颜色是否相似
}
data_json = json.dumps(data)
response = requests.post(url, headers=headers, data=data_json)
print(response.text)
									

响应示例

{
  "code": 200, 
  "msg": "SUCCESS", 
  "result": {
	"bfsimilarity": 0, 
	"darkillum": 1, 
	"eyegaze": 1, 
	"eyeskew": 1, 
	"facepose": 1, 
	"shoulderskew": 1, 
	"unbalanceillum": 1
  }, 
  "total_result": 0
}