文档首页> 文字识别 OCR> API参考> API> 柬文身份证识别
更新时间:2023-11-07 GMT+08:00

柬文身份证识别

功能介绍

识别柬文身份证图片中的文字内容,并将识别的结构化结果返回给用户。该接口的使用限制请参见约束与限制,详细使用指导请参见OCR服务使用简介章节。

约束与限制

  • 目前只支持单张柬文身份证正面识别。
  • 只支持识别PNG、JPG、BMP、TIFF格式的图片。
  • 图像各边的像素大小在15到8192px之间。
  • 支持图像中柬文身份证任意角度的水平旋转。
  • 能处理反光、暗光等干扰的图片但影响识别精度。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

API Explorer可调用区域为亚太-新加坡。

前提条件

在使用柬文身份证识别之前,需要您完成服务申请和认证鉴权,具体操作流程请参见开通服务认证鉴权章节。

用户首次使用需要先申请开通。服务只需要开通一次即可,后面使用时无需再次申请。如未开通服务,调用服务时会提示ModelArts.4204报错,请在调用服务前先进入控制台开通服务,并注意开通服务区域与调用服务的区域保持一致。

URI

POST /v2/{project_id}/ocr/cambodian-idcard

表1 路径参数

参数

是否必选

说明

endpoint

终端节点,即调用API的请求地址。

不同服务不同区域的endpoint不同,您可以从终端节点中获取。

project_id

项目ID,您可以从获取项目ID中获取。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。

用于获取操作API的权限。获取Token接口响应消息头中X-Subject-Token的值即为Token。

Content-Type

String

发送的实体的MIME类型,参数值为“application/json”。

Enterprise-Project-Id

String

企业项目ID。OCR支持通过企业项目管理(EPS)对不同用户组和用户的资源使用,进行分账。

获取方法:进入“企业项目管理”页面,单击企业项目名称,在企业项目详情页获取Enterprise-Project-Id(企业项目ID)。

企业项目创建步骤请参见用户指南。

说明:

创建企业项目后,在传参时,有以下三类场景。

  • 携带正确的ID,正常使用OCR服务,账单归到企业ID对应的企业项目中。
  • 携带错误的ID,正常使用OCR服务,账单的企业项目会被分类为“未归集”。
  • 不携带ID,正常使用OCR服务,账单的企业项目会被分类为“未归集”。
表3 请求Body参数

参数

是否必选

参数类型

说明

image

String

与url二选一。

图片的Base64编码。图片尺寸不小于15像素,最长边不超过8192像素,支持JPG/PNG/BMP/TIF格式。

图片Base64编码示例如/9j/4AAQSkZJRgABAg...,带有多余前缀会产生The image format is not supported报错。

url

String

与image二选一。

图片的URL路径,目前仅支持华为云上OBS提供的匿名公开授权访问的URL以及公网URL。

return_portrait_image

Boolean

是否返回身份证头像照片的 Base64 编码,可选值如下:

  • true: 返回身份证头像照片的 Base64 编码
  • false: 不返回身份证头像照片的 Base64 编码

未传入该参数时默认为“false”,即不返回身份证头像照片的 Base64 编码。

return_portrait_location

Boolean

是否返回头身份证头像的位置坐标,可选值如下:

  • true: 返回身份证头像的位置坐标
  • false: 不返回身份证头像的位置坐标

未传入该参数时默认为“false”,即不返回身份证的头像坐标。

return_idcard_type

Boolean

是否返回身份证类型,可选值如下:

  • true:返回身份证类型,类型包括身份证原件和身份证复印件
  • false:不返回身份证的类型

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

result

CambodianIdCardResult object

识别结果。

调用失败时此字段为空。

表5 CambodianIdCardResult

参数

参数类型

描述

id_number

String

身份证号码。

name_kh

String

高棉语版姓名。

name_en

String

英文姓名。

birth_date

String

出生日期。

sex

String

性别。

height

String

身高。

birth_place

String

出生地。

address

String

地址,以空格分隔。

issue_date

String

签发起始日期。

expiry_date

String

签发结束日期。

description

String

图片中的个人特征。

machine_code1

String

机器码第一行。

machine_code2

String

机器码第二行。

machine_code3

String

机器码第三行。

portrait_image

String

头像的base64编码。 当输入参数“return_portrait_image”为“true”时,才返回该参数。

portrait_location

Array<Array<Integer>>

头像在原图上的位置。 当输入参数“return_portrait_location”为“true”时,才返回该参数。以列表形式显示,包含头像区域四个顶点的二维坐标(x,y),坐标原点为图片左上角,x轴沿水平方向,y轴沿竖直方向。

idcard_type

String

身份证的类型。当输入参数“ idcard_type ”为“true”时,才返回该参数。取值如下所示:

  • normal:身份证原件
  • copy:复印的身份证

confidence

Object

字段的置信度,取值范围0~1。

置信度越大,本次识别的字段的可靠性越高,在统计意义上,置信度越大,准确率越高。

置信度由算法给出,不直接等价于字段的准确率。

状态码: 400

表6 响应Body参数

参数

参数类型

描述

error_code

String

调用失败时的错误码,具体请参见错误码

当出现错误码“ModelArts.4204”时,请参考为什么调用API时提示“ModelArts.4204”?章节。

调用成功时不返回此字段。

error_msg

String

调用失败时返回的错误信息。

调用成功时不返回此字段。

请求示例

  • 请求示例(方式一:使用图片的Base64编码)
    POST https://{endpoint}/v2/{project_id}/ocr/cambodian-idcard
    Request Header:
    Content-Type: application/json
    X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...
    Request Body:
    { 
        "image":"/9j/4AAQSkZJRgABAgEASABIAAD/4RFZRXhpZgAATU0AKgAAAA..."
     }
  • 请求示例(方式二:使用图片url)
    POST https://{endpoint}/v2/{project_id}/ocr/cambodian-idcard
    Request Header:
    Content-Type: application/json
    X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...
    Request Body:
    { 
        "url":"https://BucketName.obs.myhwclouds.com/ObjectName"
     }

响应示例

状态码:200

成功响应示例

{
"result": {
        "id_number": "XXXXX",
        "name_kh": "យឹXXXXX",
        "name_en": "YOENG THXXXXX",
        "birth_date": "១០.០៧.១៩៩៩",
        "sex": "ស្រី",
        "height": "១៥៨ ស.ម",
        "birth_place": "XXXXX",
        "address": " XXXXX",
        "issue_date": "១៥.១២.២០១៥",
        "expiry_date": "១៤.១២.២០២៥",
        "description": "XXXXXX",
        "machine_code1": "IDKHM040XXXXXXX<<<<<<<<<<<<<<<",
        "machine_code2": "990XXX2F25XXXXXXX<<<<<<<<<<<2",
        "machine_code3": "YOENG<<THXXXXX<<<<<<<<<<<<<<<",
         "idcard_type": "normal",
        "confidence": {
            "id_number": 0.8345,
            "name_kh": 0.8721,
            "name_en": 0.7191,
            "birth_date": 0.7749,
            "sex": 0.8216,
            "height": 0.6493,
            "birth_place": 0.8282,
            "address": 0.91185,
            "issue_date": 0.7509,
            "expiry_date": 0.7983,
            "description": 0.9091,
            "machine_code1": 0.9047,
            "machine_code2": 0.9292,
            "machine_code3": 0.898,
            "idcard_type": 0.998
        },
        "portrait_image": "/9j/4AA…. ",
        "portrait_location": [
            [
                53,
                341
            ],
            [
                185,
                340
            ],
            [
                179,
                504
            ],
            [
                42,
                505
            ]
        ]
    }
    }

状态码:400

失败响应示例

{
    "error_code": "AIS.0103", 
    "error_msg": "The image size does not meet the requirements." 
}

状态码

状态码

描述

200

成功响应样例

400

失败响应样例

状态码请参见状态码

错误码

错误码请参见错误码