文档简介:
接口描述
对图片中的表格文字内容进行提取和识别,结构化输出表头、表尾及每个单元格的文字内容。支持识别常规表格及含合并单元格表格,并可选择以JSON或Excel形式进行返回。 本接口为异步接口,分为两个API:提交请求接口、获取结果接口。下面分别描述两个接口的使用方法。
视频教程请参见 表格文字识别(异步接口)使用教程
提交请求接口
在线调试
您可以在 示例代码中心 中调试该接口,可进行签名验证、查看在线调用的请求内容和返回结果、示例代码的自动生成。
请求说明
请求示例
HTTP 方法:POST
请求URL: https://aip.baidubce.com/rest/2.0/solution/v1/form_ocr/request
URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
Header如下:
参数 | 值 |
---|---|
Content-Type | application/x-www-form-urlencoded |
Body中放置请求参数,参数详情如下:
请求参数
参数 | 是否必选 | 类型 | 可选值范围 | 说明 |
---|---|---|---|---|
image | 是 | string | - | 图像数据,base64编码后进行urlencode,要求base64编码和urlencode后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/jpeg/png/bmp格式 |
is_sync | 否 | string | true/false | 是否同步返回识别结果。取值为“false”,需通过获取结果接口获取识别结果;取值为“true”,同步返回识别结果,无需调用获取结果接口。默认取值为“false” |
request_type | 否 | string | json/excel | 当 is_sync=true 时,需在提交请求时即传入此参数指定获取结果的类型,取值为“excel”时返回xls文件的地址,取值为“json”时返回json格式的字符串。当 is_sync=false 时,需在获取结果时指定此参数。 |
请求代码示例
提示一:使用示例代码前,请记得替换其中的示例Token、图片地址或Base64信息。
提示二:部分语言依赖的类或库,请在代码注释中查看下载地址。
curl -i -k 'https://aip.baidubce.com/rest/2.0/solution/v1/form_ocr/request?access_token=
调用鉴权接口获取的token】' --data 'image=【图片Base64编码,需UrlEncode】'
-H 'Content-Type:application/x-www-form-urlencoded'
返回说明
返回参数
字段 | 是否必选 | 类型 | 说明 |
---|---|---|---|
log_id | 是 | long | 唯一的log id,用于问题定位 |
result | 是 | list | 返回的结果列表 |
+ request_id | 是 | string | 该请求生成的request_id,后续使用该request_id获取识别结果 |
返回示例
成功返回示例:
{ "result" : [ { "request_id" : "1234_6789" } ], "log_id":149689853984104 }
失败返回示例(详细的错误码说明见本文档底部):
{ "log_id": 149319909347709, "error_code": 282000 "error_msg":"internal error" }
获取结果接口
在线调试
您可以在 示例代码中心 中调试该接口,可进行签名验证、查看在线调用的请求内容和返回结果、示例代码的自动生成。
请求说明
请求示例
HTTP 方法:POST
请求URL: https://aip.baidubce.com/rest/2.0/solution/v1/form_ocr/get_request_result
URL参数:
参数 | 值 |
---|---|
access_token | 通过API Key和Secret Key获取的access_token,参考“Access Token获取” |
Header如下:
参数 | 值 |
---|---|
Content-Type | application/x-www-form-urlencoded |
Body中放置请求参数,参数详情如下:
请求参数
参数 | 是否必选 | 类型 | 可选值范围 | 说明 |
---|---|---|---|---|
request_id | 是 | string | - | 发送表格文字识别请求时返回的request id |
result_type | 否 | string | json/excel | 期望获取结果的类型,取值为“excel”时返回xls文件的地址,取值为“json”时返回json格式的字符串,默认为”excel” |
返回说明
返回参数
字段 | 是否必选 | 类型 | 说明 |
---|---|---|---|
log_id | 是 | long | 唯一的log id,用于问题定位 |
result | 是 | object{} | 返回的结果 |
+ result_data | 是 | string | 识别结果字符串,如果request_type是excel,则返回excel的文件下载地址,如果request_type是json,则返回json格式的字符串 |
+ percent | 是 | int | 表格识别进度(百分比) |
+ request_id | 是 | string | 该图片对应请求的request_id |
+ ret_code | 是 | int | 识别状态,1:任务未开始,2:进行中,3:已完成 |
+ ret_msg | 是 | string | 识别状态信息,任务未开始,进行中,已完成 |
返回示例
成功返回示例:
{ "result" : { "result_data" : "", "percent":100, "request_id": "149691317905102",
"ret_code": 3 "ret_msg": "已完成", }, "log_id":149689853984104 }
当request_type为excel时,result_data格式样例为:
{ "file_url":"https://ai.baidu.com/file/xxxfffddd" }
当request_type为json时,result_data格式样例为:
{ "result": { "result_data":"{ "form_num": 1, "forms": [ { "footer": [], "header":
[ { "column": [ 1, 2 ], "probability":0.925165, "rect":{"left":1138.0,"top":127.0},
"row": [ 1 ], "word": "表头信息1", } ], "body": [ { "column": [ 1, 2 ], "probability":0.999275,
"rect":{"left":171.0,"top":26.0}, "row": [ 1 ], "word": "单元格文字", } ], } ] } }
其中各个参数的说明(json方式返回结果时):
字段 | 是否必选 | 类型 | 说明 |
---|---|---|---|
form_num | 是 | int | 表格数量(可能一张图片中包含多个表格) |
forms | 是 | list | 表格内容信息的列表 |
+ header | 是 | list | 每个表格中,表头数据的相关信息 |
+ footer | 是 | list | 表尾的相关信息 |
+ body | 是 | list | 表格主体部分的数据 |
++ row | 是 | list | 该单元格占据的行号 |
++ column | 是 | list | 该单元格占据的列号 |
++ word | 是 | string | 该单元格中的文字信息 |
失败返回示例(详细的错误码说明见本文档底部):
{ "log_id": 149319909347709, "error_code": 282000 "error_msg":"internal error" }