• 沒有找到結果。

功能介绍

识别表格图片中的文字内容,并将识别的结果以json格式返回给用户。返回结果将图 片区域(words_region)划分为两类:纯文本区(text)和表格区(table),并返回 表格结构(row, column)和文本信息。该接口的使用限制请参见约束与限制,详细使 用指导请参见OCR服务使用简介章节。

对于相同板式的图片,可以使用ModelArts Pro服务提供的文字识别套件,零代码搭建 出专属的API,详细操作请参见视频指导。

4-1 通用表格识别示例图

调试

您可以在API Explorer中调试该接口。

前提条件

在使用通用表格识别之前,需要您完成服务申请和认证鉴权,具体操作流程请参见开

通服务和认证鉴权章节。

说明

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

URI

POST https://{endpoint}/v2/{project_id}/ocr/general-table 表4-1 路径参数

参数 是否必选 说明

endpoint 是 指定承载REST服务端点的服务器域名或IP,不同 服务不同区域的endpoint不同,您可以从终端节

点中获取。

例如,OCR服务在“华北-北京四”区域的

“endpoint”为“ocr.cn-north-4.myhuaweicloud.com”。

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

请求参数

4-2 请求 Header 参数

参数 是否必选 参数类型 描述

X-Auth-Token 是 String 用户Token。

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

Content-Type 是 String 发送的实体的MIME类型,参数 值为“application/json”。

4-3 请求 Body 参数

参数 是否必选 类型 说明

image 否 String 该参数与url二选一。图像数据,base64编 码,要求base64编码后大小不超过10MB。

图片最小边不小于15px,最长边不超过 8192px,支持JPEG、JPG、PNG、BMP、

TIFF格式。

url 否 String 该参数与image二选一。图片的url路径,目 前支持:

● 公网http/https url

● OBS提供的url,使用OBS数据需要进行授

t_location 否 Boolean 返回文本块坐标及单元格坐标信息,可选值 如下所示。

idence 否 Boolean 是否返回置信度的开关,可选值如下所示。

● true:返回置信度

● false:不返回置信度

如果未传入该参数,系统默认为“false”,

即不返回置信度。

return_exc

el 否 Boolean 是否返回表格转换Microsoft Excel的base64 编码字段。可选值包括:

● true: 返回'excel'字段,表示xlsx格式的表 格识别结果的base64编码

● false: 不返回。默认为false

对返回的Excel编码,可用Python函数

状态码: 200

4-4 响应 Body 参数

参数 参数类型 描述

result GeneralTa bleResult object

调用成功时表示调用结果。

调用失败时无此字段。

4-5 GeneralTableResult

参数 参数类型 描述

words_region_co

unt Integer 文字区域数目。

words_region_list Array of WordsRegi onList objects

文字区域识别结果列表,输出顺序从左到右,先 上后下。

excel String 表格图像转换为excel的base64编码,图像中的 文字和表格按位置写入excel。对返回的excel编 码可用base64.b64decode解码并保存为.xlsx文 件。

4-6 WordsRegionList

参数 参数类型 描述

type String 文字识别区域类型。

● text:文本识别区域;

● table:表格识别区域。

words_block_cou

nt Integer 子区域识别文字块数目。

words_block_list Array of GeneralTa bleWordsB lockList objects

子区域识别文字块列表,输出顺序从左到右,先 上后下。

4-7 GeneralTableWordsBlockList

参数 参数类型 描述

words String 文字块识别结果。当入参

"return_text_location"为false时,每个单元格返 回一个文本值,不同行文本由换行符 "\n" 拼 接。

confidence Float 字段的平均置信度,置信度越大,表示本次识别 的对应字段的可靠性越高,在统计意义上,置信

words_list Array of WordsListI em objects

单元格内文字段列表。输出顺序从左到右,从上 到下。仅当入参"return_text_location"为true时 存在。

rows Array of

integers 文字块占用的行信息,编号从0开始,列表形

columns Array of

integers 文字块占用的列信息,编号从0开始,列表形

4-8 WordsListIem

参数 参数类型 描述

words String 文字块识别结果。

confidence Float 字段的平均置信度,置信度越大,表示本次识别 的对应字段的可靠性越高,在统计意义上,置信

状态码: 400

4-9 响应 Body 参数

参数 参数类型 描述

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

当出现错误码“ModelArts.4204”时,请参考为

什么调用API时提示“ModelArts.4204”?章

节。

调用成功时无此字段。

error_msg String 调用失败时的错误信息。

调用成功时无此字段。

Content-Type: application/json X-Auth-Token:

MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...

Request Body:

{

"image":"/9j/4AAQSkZJRgABAgEASABIAAD/4RFZRXhpZgAATU0AKgAAAAg...", "return_text_location": true,

"return_excel": true, "return_confidence":true }

● 请求示例(方式二:使用图片URL)

POST https://{endpoint}/v2/{project_id}/ocr/general-table Request Header:

Content-Type: application/json X-Auth-Token:

MIINRwYJKoZIhvcNAQcCoIINODCCDTQCAQExDTALBglghkgBZQMEAgEwgguVBgkqhkiG...

Request Body:

{ "url":"https://BucketName.obs.xxxx.com/ObjectName", "return_confidence":false

}

● Python3语言请求代码示例(其他语言参照下列示例编写或使用OCR SDK)

# encoding:utf-8 import requests import base64

url = "https://{endpoint}/v2/{project_id}/ocr/general-table"

token = "用户获取得到的实际token值"

headers = {'Content-Type': 'application/json', 'X-Auth-Token': token}

imagepath = r'./data/general-table-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} # url与image参数二选一

response = requests.post(url, headers=headers, json=payload) print(response.text)

"excel": "/1a/AEASABIAAD/4RFZRXhpZgAATU0AKgAAAAg..."

}

[91, 560],

"excel": "/1a/AEASABIAAD/4RFZRXhpZgAATU0AKgAAAAg..."

} }

状态码:400 失败响应示例

{ "error_code": "AIS.0103",

"error_msg": "The image size does not meet the requirements."

}

错误码

错误码请参见错误码。