身份证OCR识别

一、接口描述

1. 功能描述

该API用于对二代居民身份证所有8个字段的结构化识别,支持少数民族身份证识别。扫描识别身份证准确率高达99%以上

2. 接口数据要求:

  1. 编码格式:UTF-8

3. 接口使用:

平台为每个API提供试用体验服务,您在AI市场选择“免费试用”规格下单后,即可开始体验业内领先的人工智能API服务。 免费试用服务具有调用量、QPS限制,如需更高性能的API服务,可以提交咨询工单,联系京东AI扩容购买。

在获得使用权限后,您可使用已经封装好的SDK/参照接口鉴权规则进行相应开发,整体流程详见 接入流程
用户需要使用图片base64编码去做请求,使用其他图片的base64编码请求成功时也会加入计费。

二、请求说明

1. 接口地址 :

https://aiapi.jd.com/deepfinch/ocr_idcard

2. 请求方式:

 post

3. 请求参数

(1)query请求参数

公共请求参数

名称 类型 必填 示例值 描述
appkey String 80d2b762ecb86593f9668526920f46c 您的appkey,可在买家中心控制台中获取
timestamp long 1541491668060 请求的时间戳,精确到毫秒,timestamp有效期5分钟
sign String 2e148773a0337a8f2200ba90d445f083 签名,根据规则MD5(sectetkey+timestamp)

(2)header请求参数

业务请求参数

名称 类型 必填 示例值 描述
Content-Type String application/json 标准编码格式

(3)body请求参数

业务请求参数

名称 类型 必填 描述
image_base64 String 图片的base64格式数据,去掉头data:image/bmp;base64,
body输入示例:
{
   "image_base64": "xxxxxx"
}

三、返回说明

1.返回参数

(1)公共返回参数

名称 类型 示例值 描述
code string 1000 参见下方错误码-系统级错误码
charge boolean false 或 true false:不扣费, true:扣费
remainTimes long 1305 剩余调用次数;免费api:每天剩余调用次数;收费api:剩余次数;无限制时为-1
remainSeconds long 1223456 剩余调用时间(s);免费api:-1;收费api:剩余调用时间;无限制时为-1
msg string 查询成功 参见下方错误码-系统级错误码
result object {...} 查询结果

(2)业务返回参数

result参数信息

字段 类型 说明
request_id string 本次请求的id
status string 状态,正常为 OK
image_id string 图片上传云端后的id 。使用file、url方式提交图片会返回此参数
exif_orientation integer exif 信息。若图片含有exif信息返回此参数,返回值范围为 1~8 。返回值的具体含义请参考 http://jpegclub.org/exif_orientation.html
side string 身份证方向信息。front 代表身份证正面,back 代表身份证反面
rotate string 旋转角度。开启自动旋转功,返回旋转的角度值,可能的值为 cw90,cw180,cw270,表明顺时针旋转的角度。如果没有发生旋转,则不返回此字段
info object 身份证文字信息
validity object 各项信息有效性

info 的结构为:

字段 类型 说明
name string 姓名
sex string 性别
nation string 民族
year string 出生年
month string 出生月
day string 出生日
address string 地址
number string 身份证号
authority string 签发机关
timelimit string 身份证有效期

validity 的结构如下:

字段 类型 说明
name boolean 如果小于两个字符,或者包含数字,为 false,反之为 true
sex boolean 当检测出的性别与身份证号所表示的性别匹配,则为 true,反之为 false
birthday boolean 当检测出的出生日期与身份证号中的生日字段匹配,则值为 true,反之为 false
address boolean 身份证号码前6位为地区码,当其在预设的码表内,则值为 true,否则为 false
number boolean 当身份证号码符合校验规则,则值为 true,反之,为 false
authority boolean 检测出签发机构后两字是“分局”或“安局”,则为 true,否则为 false
timelimit boolean 身份证有效期长度为 17 位,第八位为 -,年份大于等于 2000 年且小于等于 2050 年时,该值为 true,否则为 false

infovalidity 结构中 authoritytimelimit 字段为身份证反面内容, 其余为身份证正面内容。

当上传的图片是非身份证图片时,系统不会报错,但这种情况下 validity 中所有字段都会为 false,请参考 validity 字段进行判断。

2.返回示例

  • 身份证正面
{
  "request_id": "TID8bf47ab6eda64476973cc5f5b6ebf57e",
  "status": "OK",
  "exif_orientation": 1,
  "side": "front",
  "rotate": "cw270",
  "image_id":"xxxxx",
  "info": {
    "name": "小红",
    "sex": "女",
    "nation": "汉",
    "year": "1990",
    "month": "2",
    "day": "14",
    "address": "北京市海淀区xx路xx号",
    "number": "360722199002148230"
  },
  "validity": {
    "name": true,
    "sex": true,
    "birthday": true,
    "address": true,
    "number": true
  }
}
  • 身份证反面
{
  "request_id": "TID8bf47ab6eda64476973cc5f5b6ebf57e",
  "status": "OK",
  "side": "back",
  "image_id":"xxxxx",
  "info": {
    "authority": "宜昌市公安局西陵分局",
    "timelimit": "20060529-20260529"
  },
  "validity": {
    "authority": true,
    "timelimit": true
  }
}

四、错误码信息

1.系统级错误码

详见返回码

2.业务错误码

状态码 status 字段 说明
400 ENCODING_ERROR 参数非UTF-8编码
400 DOWNLOAD_TIMEOUT 网络地址图片获取超时
400 IMAGE_ID_NOT_EXIST 图片不存在
400 CORRUPT_IMAGE 文件不是图片文件或已经损坏
400 DOWNLOAD_ERROR 网络地址图片获取失败
400 DOWNLOAD_TIMEOUT 图片下载超时
400 IMAGE_FILE_SIZE_TOO_BIG 图片体积过大
400 INVALID_IMAGE_FORMAT_OR_SIZE 图片大小或格式不符合要求
400 INVALID_ARGUMENT 请求参数错误,具体原因见 reason 字段内容
401 UNAUTHORIZED 账号或密钥错误
401 KEY_EXPIRED 账号过期,具体情况见 reason 字段内容
403 RATE_LIMIT_EXCEEDED 调用频率超出限额
403 NO_PERMISSION 无调用权限
404 NOT_FOUND 请求路径错误
500 INTERNAL_ERROR 服务器内部错误

以下请求参数列表仅列出了接口请求参数,其它参数见公共请求参数页面。

Copyright © JD AI Platform all right reserved,powered by GitbookFile Modify: 2021-05-21 22:10:38

results matching ""

    No results matching ""