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

缅文驾驶证识别

功能介绍

识别缅甸驾驶证中的文字信息,并以JSON格式返回识别的结构化结果。该接口的使用限制请参见约束与限制,详细使用指导请参见OCR服务使用简介章节。

图1 缅文驾驶证示例图

约束与限制

  • 只支持识别PNG、JPG、JPEG、BMP、TIFF格式的图片。
  • 图像各边的像素大小在15到4096px之间。
  • 目前只支持单张缅文驾驶证正面识别。
  • 支持图像中缅文驾驶证任意角度的水平旋转。
  • 支持少量扭曲,扭曲后图像中的驾驶证长宽比与实际驾驶证相差不超过10%。
  • 能处理反光、暗光等干扰的图片但影响识别精度。

调试

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

API Explorer可调用区域为中国-香港。

前提条件

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

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

URI

POST /v2/{project_id}/ocr/myanmar-driver-license

表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编码,要求Base64编码后大小不超过10MB。

图片最短边不小于15px,最长边不超过4096px,支持JPEG、JPG、PNG、BMP、TIFF格式。

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

url

String

与image二选一。

图片的url路径,目前支持:

  • 公网http/https url
  • OBS提供的url,使用OBS数据需要进行授权。包括对服务授权、临时授权、匿名公开授权,详情参见配置OBS访问权限
说明:
  • 接口响应时间依赖于图片的下载时间,如果图片下载时间过长,会返回接口调用失败。
  • 请保证被检测图片所在的存储服务稳定可靠,推荐使用OBS服务存储图片数据。

convert_unicode

Boolean

输出格式。可选值如下:

  • true:输出为unicode格式。
  • false:输出为zawgyi格式。

如果参数值为空或无该参数,默认输出为zawgyi格式。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

result

MyanmarDriverLicenseResult object

调用结果。

调用失败时不返回此字段。

表5 MyanmarDriverLicenseResult

参数

参数类型

描述

card_number

String

缅文驾驶证号。

card_number_en

String

英文驾驶证号。

name

String

缅文名字。

name_en

String

英文名字。

nrc_id

String

缅文nrc号码。

nrc_id_en

String

英文nrc号码。

birth

String

缅文出生日期。

birth_en

String

英文出生日期。

blood_group

String

缅文血型。

blood_group_en

String

英文血型。

expiried_date

String

缅文有效期。

expiried_date_en

String

英文有效期。

confidence

MyanmarDriverLicenseConfidence object

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

置信度越大,本次识别的字段的可靠性越高,在统计意义上,置信度越大,准确率越高。 置信度由算法给出,不直接等价于字段的准确率。

表6 MyanmarDriverLicenseConfidence

参数

参数类型

描述

card_number

Float

缅文驾驶证号置信度。

card_number_en

Float

英文驾驶证号置信度。

name

Float

缅文名字置信度。

name_en

Float

英文名字置信度。

nrc_id

Float

缅文nrc号码置信度。

nrc_id_en

Float

英文nrc号码置信度。

birth

Float

缅文出生日期置信度。

birth_en

Float

英文出生日期置信度。

blood_group

Float

缅文血型置信度。

blood_group_en

Float

英文血型置信度。

expiried_date

Float

缅文有效期置信度。

expiried_date_en

Float

英文有效期置信度。

状态码: 400

表7 响应Body参数

参数

参数类型

描述

error_code

String

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

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

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

error_msg

String

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

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

请求示例

  • “endpoint”即调用API的请求地址,不同服务不同区域的“endpoint”不同,具体请参见终端节点

    例如,缅文驾驶证识别服务部署在“中国-香港”区域的“endpoint”“ocr.ap-southeast-1.myhuaweicloud.com”“ocr.ap-southeast-1.myhuaweicloud.cn”,请求URL为“https://ocr.ap-southeast-1.myhuaweicloud.com/v2/{project_id}/ocr/myanmar-driver-license”“project_id”为项目ID,获取方法请参见获取项目ID

  • 如何获取Token请参见构造请求
  • 请求样例(方式一:使用图片的Base64编码)
    POST https://{endpoint}/v2/{project_id}/ocr/myanmar-driver-license
    
    Request Header:
    Content-Type: application/json
    X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...
    Request Body: 
    {
       "image":"/9j/4AAQSkZJRgABAgEASABIAAD/4RFZRXhpZgAATU0AKgAAAA...",
       "convert_unicode": true
    }
  • 请求样例(方式二:使用图片URL)
    POST https://{endpoint}/v2/{project_id}/ocr/myanmar-driver-license
    
    Request Header:
    Content-Type: application/json
    X-Auth-Token: MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...
    Request Body: 
    {
       "url":"https://BucketName.obs.xxxx.com/ObjectName",
       "convert_unicode": true
    }
  • Python3语言请求代码示例(其他语言参照下列示例编写或使用OCR SDK)
    # encoding:utf-8
    
    import requests
    import base64
    
    url = "https://{endpoint}/v2/{project_id}/ocr/myanmar-driver-license"
    token = "用户获取得到的实际token值"
    headers = {'Content-Type': 'application/json', 'X-Auth-Token': token}
    
    imagepath = r'./data/myanmar-driver-license-demo.png' # 读取本地图片
    with open(imagepath, "rb") as bin_data:
        image_data = bin_data.read()
    image_base64 = base64.b64encode(image_data).decode("utf-8")  # 使用图片的Base64编码
    payload = {"image": image_base64}
    response = requests.post(url, headers=headers, json=payload)
    print(response.text)

响应示例

状态码:200

成功响应示例

{
  "result" : {
    "card_number" : "XXXX",
    "card_number_en" : "XXXX",
    "name" : "XXXX",
    "name_en" : "XXXX",
    "nrc_id" : "XXX",
    "nrc_id_en" : "XXX",
    "birth" : "၅-၅-၁၉၉၂",
    "birth_en" : "5-5-1992",
    "blood_group" : "ဘီ",
    "blood_group_en" : "2",
    "expiration_date" : "၁၃-၁-၂၀၂၀",
    "expiration_date_en" : "13-1-2020",
    "confidence" : {
      "card_number" : 0.8252,
      "card_number_en" : 0.8971,
      "name" : 0.985,
      "name_en" : 0.9528,
      "nrc_id" : 0.9972,
      "nrc_id_en" : 0.9993,
      "birth" : 0.9998,
      "birth_en" : 0.8973,
      "blood_group" : 0.6772,
      "blood_group_en" : 0.6721,
      "expiration_date" : 0.9994,
      "expiration_date_en" : 0.758
    }
  }
}

状态码:400

失败响应示例

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

状态码

状态码

描述

200

成功响应样例

400

失败响应样例

状态码请参见状态码

错误码

错误码请参见错误码