可对美国、法国、英国、日本、韩国等世界多个主要国家和地区护照提供识别服务,支持字段包括国籍、护照号码、出生日期、姓名等。
接口说明
本接口适用场景
- 阿里云国际护照识别,是阿里云官方自研 OCR 文字识别产品,适用于出入境审查、国内外身份核验等各种需要提取护照信息的场景。
- 阿里云 OCR 产品基于阿里巴巴达摩院强大的 AI 技术及海量数据,历经多年沉淀打磨,具有服务稳定、操作简易、实时性高、能力全面等几大优势。
- 本接口图片示例
本接口核心能力
分类 | 概述 |
---|
分类 | 概述 |
---|---|
多国护照 | 对美国、法国、英国、日本、韩国等多国和地区护照提供识别服务。 |
图像增强 | 默认支持图像增强,包括图像自动旋转、畸变自动矫正、模糊图片自动增强等能力。 |
多类型覆盖 | 支持模糊、光照不均、透视畸变、任意背景等低质量图像识别。 |
高精度识别 | 总体识别准确率可达 98%。 |
如何使用本接口
步骤 | 概述 |
---|
步骤 | 概述 |
---|---|
1 | 开通 个人证照识别 服务。开通服务前后,您可以通过体验馆免费体验本功能识别效果。 |
2 | 购买国际护照识别资源包。本 API 会赠送免费额度,可使用免费额度测试。您也可以不购买资源包,系统会通过“按量付费”方式按实际调用量自动扣款。 |
3 | 可以参照调试页面提供的代码示例完成 API 接入开发。接入完成后,调用 API 获取识别结果。如果使用子账号调用接口,需要阿里云账号(主账号)对 RAM 账号进行授权。创建 RAM 用户的具体操作,请参考:创建 RAM 用户。文字识别服务提供一种系统授权策略,即 AliyunOCRFullAccess。具体授权操作,请参见在用户页面为 RAM 用户授权。 |
重要提示
类型 | 概述 |
---|
类型 | 概述 |
---|---|
图片格式 |
|
图片尺寸 |
|
图片大小 |
|
相关能力 |
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用前面加 * 表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
ocr:RecognizePassport | *全部资源 * |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
Url | string | 否 |
| https://img.alicdn.com/tfs/TB1uHglUgHqK1RjSZFEXXcGMXXa-800-502.png |
body | byte | 否 |
| 图片二进制文件 |
返回参数
返回参数说明
字段 | 类型 | 说明 |
---|
字段 | 类型 | 说明 |
---|---|---|
data | object | 结构化信息。 |
sliceRect | list | 检测出的子图坐标信息。 |
prism_keyValueInfo | list | 结构化信息的坐标信息。 |
ftype | int | 是否为复印件(1:是,0:否)。 |
height | int | 算法矫正图片后的高度。 |
width | int | 算法矫正图片后的宽度。 |
orgHeight | int | 原图的高度。 |
orgWidth | int | 原图的宽度。 |
结构化信息(data 字段)
字段 | 类型 | 说明 |
---|
字段 | 类型 | 说明 |
---|---|---|
passportType | string | 证件类型。 |
surname | string | 姓。 |
givenName | string | 名。 |
passportNumber | string | 护照号码。 |
nationality | string | 国家码。 |
nameEn | string | 英文姓名。 |
name | string | 非英文姓名。 |
sex | string | 性别。 |
birthPlaceEn | string | 出生地。 |
birthPlace | string | 非英文出生地。 |
country | string | 国籍。 |
validToDate | string | 有效期至。 |
birthDate | string | 出生日期。 |
birthDateYmd | string | 出生日期-年月日。 |
issueDateYmd | string | 签发日期。 |
issuePlaceEn | string | 签发地。 |
issuePlace | string | 非英文签发地。 |
issueAuthorityEn | string | 签发机关。 |
issueAuthority | string | 非英文签发机关。 |
idNumber | string | 身份号。 |
mrzLine1 | string | 机读码一。 |
mrzLine2 | string | 机读码二。 |
结构化坐标信息(prism_keyValueInfo 字段)
字段 | 类型 | 说明 |
---|
字段 | 类型 | 说明 |
---|---|---|
key | string | 识别出的字段名称。 |
keyProb | int | 字段名称置信度。 |
value | string | 识别出的字段名称对应的值。 |
valueProb | int | 字段名称对应值的置信度。 |
valuePos | list | 字段在原图中的四个点坐标(左上、右上、右下、左下)。 |
示例
正常返回示例
JSON
格式
{
"RequestId": "43A29C77-405E-4CC0-BC55-EE694AD00655",
"Data": {
"algo_version": "d119fe9b3f92b23eed8e6e0d7c65e303d5e890f5;d119fe9b3f92b23eed8e6e0d7c65e303d5e890f5",
"angle": 0,
"data": {
"passportType": "P/T",
"nationality": "ISR",
"passportNumber": 31526354,
"nameEn": "TOLEDANO, RIVKA",
"name": "",
"sex": "Female",
"birthPlaceEn": "F/]JERUSALEM",
"birthPlace": "",
"country": "ISRAELI",
"validToDate": "2022年08月06日",
"birthDate": 880404,
"birthDateYmd": "1988年04月04日",
"issueDateYmd": "2017年08月07日",
"issuePlaceEn": "",
"issuePlace": "",
"issueAuthorityEn": "JERUSALEM D7un",
"issueAuthority": "",
"idNumber": "n17N7U",
"mrzLine1": "P<ISRTOLEDANO<<RIVKA<<<<<<<<<<<<<<<<<<<<<<<<",
"mrzLine2": "31526354<1ISR8804042F22080623<0473432<1<<<50",
"surname": "TOLEDANO",
"givenName": "RIVKA"
},
"ftype": 0,
"height": 502,
"orgHeight": 502,
"orgWidth": 800,
"prism_keyValueInfo": [
{
"key": "passportType",
"keyProb": 93,
"value": "P/T",
"valuePos": [
{
"x": 261,
"y": 71
},
{
"x": 314,
"y": 71
},
{
"x": 314,
"y": 89
},
{
"x": 261,
"y": 89
}
],
"valueProb": 93
},
{
"key": "nationality",
"keyProb": 100,
"value": "ISR",
"valuePos": [
{
"x": 75,
"y": 391
},
{
"x": 721,
"y": 388
},
{
"x": 722,
"y": 408
},
{
"x": 75,
"y": 412
}
],
"valueProb": 100
},
{
"key": "passportNumber",
"keyProb": 100,
"value": 31526354,
"valuePos": [
{
"x": 77,
"y": 426
},
{
"x": 722,
"y": 421
},
{
"x": 722,
"y": 444
},
{
"x": 77,
"y": 448
}
],
"valueProb": 99
},
{
"key": "nameEn",
"keyProb": 100,
"value": "TOLEDANO, RIVKA",
"valuePos": [
{
"x": 261,
"y": 110
},
{
"x": 358,
"y": 110
},
{
"x": 358,
"y": 165
},
{
"x": 261,
"y": 165
}
],
"valueProb": 100
},
{
"key": "name",
"keyProb": 100,
"value": "",
"valueProb": 100
},
{
"key": "sex",
"keyProb": 100,
"value": "Female",
"valuePos": [
{
"x": 77,
"y": 426
},
{
"x": 722,
"y": 421
},
{
"x": 722,
"y": 444
},
{
"x": 77,
"y": 448
}
],
"valueProb": 99
},
{
"key": "birthPlaceEn",
"keyProb": 99,
"value": "F/]JERUSALEM",
"valuePos": [
{
"x": 258,
"y": 260
},
{
"x": 434,
"y": 259
},
{
"x": 435,
"y": 278
},
{
"x": 258,
"y": 280
}
],
"valueProb": 99
},
{
"key": "birthPlace",
"keyProb": 100,
"value": "",
"valueProb": 100
},
{
"key": "country",
"keyProb": 100,
"value": "ISRAELI",
"valuePos": [
{
"x": 260,
"y": 184
},
{
"x": 329,
"y": 182
},
{
"x": 330,
"y": 201
},
{
"x": 260,
"y": 202
}
],
"valueProb": 100
},
{
"key": "validToDate",
"keyProb": 100,
"value": "2022年08月06日",
"valuePos": [
{
"x": 77,
"y": 426
},
{
"x": 722,
"y": 421
},
{
"x": 722,
"y": 444
},
{
"x": 77,
"y": 448
}
],
"valueProb": 99
},
{
"key": "birthDate",
"keyProb": 100,
"value": 880404,
"valuePos": [
{
"x": 77,
"y": 426
},
{
"x": 722,
"y": 421
},
{
"x": 722,
"y": 444
},
{
"x": 77,
"y": 448
}
],
"valueProb": 99
},
{
"key": "birthDateYmd",
"keyProb": 100,
"value": "1988年04月04日",
"valuePos": [
{
"x": 77,
"y": 426
},
{
"x": 722,
"y": 421
},
{
"x": 722,
"y": 444
},
{
"x": 77,
"y": 448
}
],
"valueProb": 99
},
{
"key": "issueDateYmd",
"keyProb": 100,
"value": "2017年08月07日",
"valuePos": [
{
"x": 263,
"y": 300
},
{
"x": 371,
"y": 300
},
{
"x": 371,
"y": 322
},
{
"x": 263,
"y": 322
}
],
"valueProb": 100
},
{
"key": "issuePlaceEn",
"keyProb": 100,
"value": "",
"valueProb": 100
},
{
"key": "issuePlace",
"keyProb": 100,
"value": "",
"valueProb": 100
},
{
"key": "issueAuthorityEn",
"keyProb": 100,
"value": "JERUSALEM D7un",
"valuePos": [
{
"x": 262,
"y": 341
},
{
"x": 712,
"y": 341
},
{
"x": 712,
"y": 360
},
{
"x": 262,
"y": 360
}
],
"valueProb": 99
},
{
"key": "issueAuthority",
"keyProb": 100,
"value": "",
"valueProb": 100
},
{
"key": "idNumber",
"keyProb": 80,
"value": "n17N7U",
"valuePos": [
{
"x": 636,
"y": 184
},
{
"x": 709,
"y": 184
},
{
"x": 709,
"y": 201
},
{
"x": 636,
"y": 201
}
],
"valueProb": 80
},
{
"key": "mrzLine1",
"keyProb": 100,
"value": "P<ISRTOLEDANO<<RIVKA<<<<<<<<<<<<<<<<<<<<<<<<",
"valuePos": [
{
"x": 75,
"y": 391
},
{
"x": 721,
"y": 388
},
{
"x": 722,
"y": 408
},
{
"x": 75,
"y": 412
}
],
"valueProb": 100
},
{
"key": "mrzLine2",
"keyProb": 99,
"value": "31526354<1ISR8804042F22080623<0473432<1<<<50",
"valuePos": [
{
"x": 77,
"y": 426
},
{
"x": 722,
"y": 421
},
{
"x": 722,
"y": 444
},
{
"x": 77,
"y": 448
}
],
"valueProb": 99
},
{
"key": "surname",
"keyProb": 100,
"value": "TOLEDANO",
"valuePos": [
{
"x": 75,
"y": 391
},
{
"x": 721,
"y": 388
},
{
"x": 722,
"y": 408
},
{
"x": 75,
"y": 412
}
],
"valueProb": 100
},
{
"key": "givenName",
"keyProb": 100,
"value": "RIVKA",
"valuePos": [
{
"x": 75,
"y": 391
},
{
"x": 721,
"y": 388
},
{
"x": 722,
"y": 408
},
{
"x": 75,
"y": 412
}
],
"valueProb": 100
}
],
"sliceRect": {
"x0": 42,
"y0": 2,
"x1": 760,
"y1": 0,
"x2": 760,
"y2": 495,
"x3": 42,
"y3": 495
},
"width": 800
},
"Code": "noPermission",
"Message": "You are not authorized to perform this operation."
}
错误码
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2021-08-17 | OpenAPI 入参发生变更 | 查看变更详情 |