身份证识别
接口描述
身份证识别,通过光学字符识别技术,识别身份证正面的 6 个字段(姓名,性别,年龄,地址,身份证号),以及身份证反面的两个字段(签发机关,有效期).
请求说明
HTTP 方法:
POST
请求 URL V1:
/ai-cloud-face/ocr
请求 URL V2(建议使用):
/ai-cloud-face/ocr/idcard
Header 如下:
参数名称 | 值 |
Content-Type | application/json;charset=UTF-8 |
Body 中放置请求参数,参数详情如下:
请求参数:
参数名称 | 数据类型 | 参数描述 |
appKey | String | 应用生成的appkey |
sign | String | 签名 |
nonceStr | String | 随机字符串 |
img | String | 待处理图片((base64 编码,需去掉base64的前缀),原始图片大小需要小于 3M;输入图像应保证身份证部分占照片绝大部分,且身份证短边的长度不低于 350 像素,长边的长度不低于 450 像素 |
getFace | String | 1:返回截取的人脸图片,0:不返回人脸图片(默认);正面身份证才返回结果 |
checkPrint 可选 | String | 是否需要进行身份证质检(非必填) 1:需要进行身份证质检 空或非1:不进行身份证质检 (默认值为1) |
getIdCardImg 可选 | String | 是否需要返回对齐后身份证图片(非必填) 1:需要返回对齐后的身份证图片 空或非1:不需要返回对齐后的身份证图片 |
返回说明
返回参数:
返回值名称 | 类型 | 描述 |
---|---|---|
code | int | 返回结果,0 表示成功 |
data | Object | 返回详细信息 |
type | String | 1 表示正面,0 表示反面 |
code | String | 0:正常身份证 1:黑白复印件 2:临时身份证 3:彩色复印件 4:翻拍 5:ps 6:身份证裁剪 7:曝光不足 8:过度曝光 9:图片模糊 -1:介质检测错误未知 |
address | String | 身份证所在地址 |
name | String | 身份证主人姓名 |
folk | String | 民族 |
cardno | String | 身份证号码 |
birthday | String | 出生日期 |
sex | String | 性别 |
idCardImg | String | 返回的对齐后的身份证图片(getIdCardImg为1的情况下才返回) |
face | Object | 人脸图片(base64 编码) |
left | int | 人脸在身份证中 x 坐标 |
top | int | 人脸在身份证中y 坐标 |
width | int | 人脸宽度 |
height | int | 人脸高度 |
image | String | 人脸图片(base64 编码) |
validdate1 | String | 有效期起 yyyy.mm.dd,如 2010.02.02 |
validdate2 | String | 有效期止 yyyy.mm.dd,如 2010.02.02 |
authority | String | 签发机关 |
detailes | Object | 身份证介质和质量检测详细结果(checkPrint为1的情况下才返回) |
dielectric | Object | 身份证介质 |
code | int | 0 - real, 原件 1 - black,黑白复印件 2 - color,彩色复印件 3 - fanpai,翻拍 -1 - others |
score | double[] | 置信度分数 score[0] 原件置信度 score[1] 黑白复印件置信度 score[2] 彩色复印件置信度 score[3] 翻拍置信度 |
ps | Object | Ps检测 |
code | int | 0 - real,原件 1 - ps, ps图片 -1 - others |
score | double[] | score[0] 原件置信度 score[1] ps图片件置信度 |
completeness | Object | 身份证完整性检测 |
code | int | 0 - complete, 完整的身份证图片 1 - crop, 身份证图片裁剪 2 - cover, 身份证图片遮挡 -1 - others |
score | double[] | score[0] 完整的身份证图片置信度 score[1] 身份证图片裁剪置信度 score[2] 身份证图片遮挡置信度 |
exposure | Object | 光线检测 |
code | int | 0 - properexposure, 光线正常 1 - underexposure, 光线过暗 2 - overexposure, 光线过亮 -1 - others |
score | double[] | score[0] 光线正常置信度 score[1] 光线过暗置信度 score[2] 光线过亮置信度 |
blur | Object | 清晰度检测 |
code | int | 0 - clear, 清晰 1 - blur, 模糊 -1 - others |
score | double[] | score[0] 清晰置信度 score[1] 模糊置信度 |
type | Object | 身份证类型 |
code | int | 0 - face, 身份证人像面 1 - emblem,身份证国徽面 2 - temporary, 临时身份证 -1 - others |
score | double[] | score[0] 身份证人像面置信度 score[1] 身份证国徽面置信度 score[2] 临时身份证置信度 |
success | Boolean | 是否成功 |
message | String | 返回描述 |
Head_Rect dict 交点注释定义如下:
{
"code": 0,
"data": {
"birthday": "1994年09月15日",
"address": "xx省xx县xx镇xx村49号",
"city": "xx县",
"sex": "女",
"imageLog": "2018_09_18_09_28_22_0788_1[Idcard].jpg",
"type": "1",
"version": "6.1.0.20180403",
"cardno": "44082519940xxxxxx8",
"face": {
"image": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAIBAQEBAQIBA......"
"top": 91,
"left": 238,
"width": 54,
"height": 54
},
"province": "广东省",
"localHost": "10.0.2.102",
"name": "潘盼",
"folk": "汉",
"details": {
"blur": {
"code": "0",
"score": [
0.849427,
0.150573
]
},
"completeness": {
"code": "0",
"score": [
0.991098,
0.007185,
0.001717
]
},
"dielectric": {
"code": "0",
"score": [
0.9999,
1.8E-5,
1.0E-6,
8.0E-5
]
},
"exposure": {
"code": "0",
"score": [
0.868391,
0.099581,
0.032028
]
},
"ps": {
"code": "0",
"score": [
0.848491,
0.151508
]
},
"type": {
"code": "0",
"score": [
0.999911,
1.7E-5,
7.2E-5
]
}
}
},
"success": true,
"message": "success"
}