身份证识别

最近更新时间:2020-09-24 08:05:14

1. 接口描述

接口请求域名: ocr.tencentcloudapi.com 。

本接口支持中国大陆居民二代身份证正反面所有字段的识别,包括姓名、性别、民族、出生日期、住址、公民身份证号、签发机关、有效期限,识别准确度达到99%以上。

另外,本接口还支持多种增值能力,满足不同场景的需求。如身份证照片、人像照片的裁剪功能,同时具备9种告警功能,如下表所示。

增值能力 能力项
裁剪功能 身份证照片裁剪(去掉证件外多余的边缘、自动矫正拍摄角度)
人像照片裁剪(自动抠取身份证头像区域)
告警功能 身份证有效日期不合法告警
身份证边框不完整告警
身份证复印件告警
身份证翻拍告警
身份证框内遮挡告警
临时身份证告警
身份证 PS 告警
图片模糊告警(可根据图片质量分数判断)

默认接口请求频率限制:20次/秒。

推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。

2. 输入参数

以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数

参数名称 必选 类型 描述
Action String 公共参数,本接口取值:IDCardOCR。
Version String 公共参数,本接口取值:2018-11-19。
Region String 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-beijing, ap-guangzhou, ap-hongkong, ap-shanghai, na-toronto
ImageBase64 String 图片的 Base64 值。要求图片经Base64编码后不超过 7M,分辨率建议500*800以上,支持PNG、JPG、JPEG、BMP格式。建议卡片部分占据图片2/3以上。
图片的 ImageUrl、ImageBase64 必须提供一个,如果都提供,只使用 ImageUrl。
ImageUrl String 图片的 Url 地址。要求图片经Base64编码后不超过 7M,分辨率建议500*800以上,支持PNG、JPG、JPEG、BMP格式。建议卡片部分占据图片2/3以上。
建议图片存储于腾讯云,可保障更高的下载速度和稳定性。
CardSide String FRONT:身份证有照片的一面(人像面),
BACK:身份证有国徽的一面(国徽面),
该参数如果不填,将为您自动判断身份证正反面。
Config String 以下可选字段均为bool 类型,默认false:
CropIdCard,身份证照片裁剪(去掉证件外多余的边缘、自动矫正拍摄角度)
CropPortrait,人像照片裁剪(自动抠取身份证头像区域)
CopyWarn,复印件告警
BorderCheckWarn,边框和框内遮挡告警
ReshootWarn,翻拍告警
DetectPsWarn,PS检测告警
TempIdWarn,临时身份证告警
InvalidDateWarn,身份证有效日期不合法告警
Quality,图片质量分数(评价图片的模糊程度)
MultiCardDetect,是否开启多卡证检测
ReflectWarn,是否开启反光检测

SDK 设置方式参考:
Config = Json.stringify({"CropIdCard":true,"CropPortrait":true})
API 3.0 Explorer 设置方式参考:
Config = {"CropIdCard":true,"CropPortrait":true}

3. 输出参数

参数名称 类型 描述
Name String 姓名(人像面)
Sex String 性别(人像面)
Nation String 民族(人像面)
Birth String 出生日期(人像面)
Address String 地址(人像面)
IdNum String 身份证号(人像面)
Authority String 发证机关(国徽面)
ValidDate String 证件有效期(国徽面)
AdvancedInfo String 扩展信息,不请求则不返回,具体输入参考示例3和示例4。
IdCard,裁剪后身份证照片的base64编码,请求 Config.CropIdCard 时返回;
Portrait,身份证头像照片的base64编码,请求 Config.CropPortrait 时返回;

Quality,图片质量分数,请求 Config.Quality 时返回(取值范围:0~100,分数越低越模糊,建议阈值≥50);
BorderCodeValue,身份证边框不完整告警阈值分数,请求 Config.BorderCheckWarn时返回(取值范围:0~100,分数越低边框遮挡可能性越低,建议阈值≥50);

WarnInfos,告警信息,Code 告警码列表和释义:
-9100 身份证有效日期不合法告警,
-9101 身份证边框不完整告警,
-9102 身份证复印件告警,
-9103 身份证翻拍告警,
-9105 身份证框内遮挡告警,
-9104 临时身份证告警,
-9106 身份证 PS 告警,
-9107 身份证反光告警。
RequestId String 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。

4. 示例

示例1 身份证识别(人像面)示例代码 前往调试工具

输入示例

https://ocr.tencentcloudapi.com/?Action=IDCardOCR
&ImageUrl=https://xx/a.jpg
&CardSide=FRONT
&<公共请求参数>

输出示例

{
  "Response": {
    "Name": "李明",
    "Sex": "男",
    "Nation": "汉",
    "Birth": "1987/1/1",
    "Address": "北京市石景山区高新技术园腾讯大楼",
    "IdNum": "440524198701010014",
    "Authority": "",
    "ValidDate": "",
    "AdvancedInfo": "{}",
    "RequestId": "ab2c132e-9e1c-43d3-b0ef-9b4d80f00330"
  }
}

示例2 身份证识别(国徽面)示例代码 前往调试工具

输入示例

https://ocr.tencentcloudapi.com/?Action=IDCardOCR
&ImageUrl=https://xx/a.jpg
&CardSide=BACK
&<公共请求参数>

输出示例

{
  "Response": {
    "Name": "",
    "Sex": "",
    "Nation": "",
    "Birth": "",
    "Address": "",
    "IdNum": "",
    "Authority": "赵县公安局",
    "ValidDate": "2010.07.21-2020.07.21",
    "AdvancedInfo": "{}",
    "RequestId": "0d394478-6d4d-48fc-8b19-552415bf46de"
  }
}

示例3 身份证照片裁剪和人像照片裁剪示例代码 前往调试工具

输入示例

https://ocr.tencentcloudapi.com/?Action=IDCardOCR
&ImageUrl=https://xx/a.jpg
&CardSide=FRONT
&Config={"CropIdCard":true,"CropPortrait":true}
&<公共请求参数>

输出示例

{
  "Response": {
    "Name": "李明",
    "Sex": "男",
    "Nation": "汉",
    "Birth": "1987/1/1",
    "Address": "北京市石景山区高新技术园腾讯大楼",
    "IdNum": "440524198701010014",
    "Authority": "",
    "ValidDate": "",
    "AdvancedInfo": "{\"IdCard\":\"/9j/4AAA.........\",\"Portrait\":\"/9j/4AAQSkZJRBA=...........\"}",
    "RequestId": "97c323da-5fd3-4fe6-b0b3-1cf10b04422c"
  }
}

示例4 临时身份证告警示例代码 前往调试工具

输入示例

https://ocr.tencentcloudapi.com/?Action=IDCardOCR
&ImageUrl=https://xx/a.jpg
&CardSide=FRONT
&Config={"TempIdWarn":true}
&<公共请求参数>

输出示例

{
  "Response": {
    "Name": "",
    "Sex": "",
    "Nation": "",
    "Birth": "",
    "Address": "",
    "IdNum": "",
    "Authority": "",
    "ValidDate": "",
    "AdvancedInfo": "{\"WarnInfos\":[-9104]}",
    "RequestId": "sd33222eqd1dqq948487"
  }
}

5. 开发者资源

API Explorer

该工具提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力,能显著降低使用云 API 的难度,推荐使用。

SDK

云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。

命令行工具

6. 错误码

以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码

错误码 描述
FailedOperation.DownLoadError 文件下载失败。
FailedOperation.EmptyImageError 图片内容为空。
FailedOperation.IdCardInfoIllegal 身份证信息不合法(身份证号、姓名字段校验非法等)。
FailedOperation.ImageBlur 图片模糊。
FailedOperation.ImageDecodeFailed 图片解码失败。
FailedOperation.ImageNoIdCard 图片中未检测到身份证。
FailedOperation.ImageSizeTooLarge 图片尺寸过大,请参考输出参数中关于图片大小限制的说明。
FailedOperation.MultiCardError 照片中存在多张卡。
FailedOperation.OcrFailed OCR识别失败。
FailedOperation.UnKnowError 未知错误。
FailedOperation.UnOpenError 服务未开通。
InvalidParameter.ConfigFormatError Config不是有效的JSON格式。
InvalidParameterValue.InvalidParameterValueLimit 参数值错误。
LimitExceeded.TooLargeFileError 文件内容太大。
ResourcesSoldOut.ChargeStatusException 计费状态异常。
目录