通用型OCR
更新时间 2026-06-01 09:32:08
最近更新时间: 2026-06-01 09:32:08
介绍如何调用通用OCR能力。
接口描述
针对图片中的文字,进行OCR检测,返回检测到的文字内容及坐标信息。
不适用表格识别,不适用文档的识别,不支持手写体文字的识别,不支持数学公式等符号识别。
请求方法
POST
接口要求
图片格式限制:图片格式支持 png、jpg、jpeg、bmp格式
图片大小限制:单张图片大小不超过 10MB, 批量请求建议单次不超过5张,接口请求体不能超过100MB
图片尺寸限制:图片像素尺寸应大于 32x32 ,小于 5000x5000
URI
/v1/aiop/api/2f3p1pnxpqm8/ocrdetect/ocr/v1/image.json
请求参数
1.请求头header参数(详细说明可参考API参考>如何调用API章节)
| 参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
|---|---|---|---|---|---|
| Content-Type | 是 | String | json格式 | application/json | |
| Authorization | 是 | String | 平台应用APIkey | Bearer $API_KEY |
2.请求体body参数
| 参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
|---|---|---|---|---|---|
| data | 是 | List | 一张或多张图像Base64编码数据构成的list。注意:图片需要使用常规base64编码方式 | _9j_4AAQSkZJRg... |
请求代码示例
Curl -X POST "https://${host}/${api}/v1/aiop/api/2f3p1pnxpqm8/ocrdetect/ocr/v1/image.json"
-H "Content-Type: application/json"
-H "Authorization: Bearer $API_KEY"
--data '{"data":["AAAAAAAAA...."]}'返回值说明
1.请求成功返回响应参数
| 参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
|---|---|---|---|---|---|
| statusCode | 是 | Int | 请求响应状态码 | 0 | |
| message | 是 | Object | 请求信息结构体,message["success"]代表请求list中的成功数量。若请求中有不合法请求,会直接返回报错信息。 | success | |
| returnObj | 是 | Object | 识别的结果,按照列表形式排列,每个元素为图片对应的鉴定结果键值对,元素排序按照传入顺序排列,元素中包括识别到的文本行数目,位置以及文本行内容 | returnObj |
表message
| 参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
|---|---|---|---|---|---|
| success | 否 | Int | 成功标识 | 1 | |
| fail | 否 | Int | 错误标识 | 0 |
表returnObj
| 参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
|---|---|---|---|---|---|
| text_line | 否 | Int | 图片识别到的文字行数 | - | |
| detail | 否 | Object | 按照列表形式排列,每个元素为图片中每一个识别到的文本行的具体信息,包含位置以及文本行内容 | - | detail |
表detail
| 参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
|---|---|---|---|---|---|
| name | 否 | String | 序号 | - | |
| text | 否 | String | 识别到的文字 | - | |
| box | 否 | List | 文字所在的坐标为8个浮点数构成的数组,8个浮点数依次分别表示左上、右上、右下、左下四个点的x坐标,y坐标 | - |
2.请求失败返回响应参数
| 参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
|---|---|---|---|---|---|
| statusCode | 是 | Int | 请求响应状态码,请求失败时状态码非0 | 400012 | |
| message | 是 | String/Object | 返回对应的可读消息 | 文件格式不合法 | message |
| details | 是 | String | 返回对应的错误信息 | 仅支持jpeg/png/jpg/bmp格式 | |
| error | 是 | String | 错误码 | AI_OP_400012 |
返回值示例
1.请求成功返回值示例
{
'statusCode': 0,
'message': {'success' : 1, 'fail' : 0},
'returnObj': [
{
'text_line': 2,
'detail': [
{
'name': '0',
'text': '社会主义核心价值观',
'box': [
43.3963039677,
157.3534469991,
610.5843128949,
169.5419591656,
609.1529514034,
236.1498488994,
41.9649424762,
223.9613367328
]
},
{
'name': '1',
'text': '富强、民主、文明、和谐',
'box': [
84.6885821036,
244.0079416001,
573.8530589198,
248.174096093,
573.4117596933,
299.9887625014,
84.2472828771,
295.8226080086
]
}
]
}
]
}2.请求失败返回值示例
{
"statusCode": 400012,
"message": "文件格式不合法",
"details": "仅支持jpeg/png/jpg/bmp格式",
"error":"AI_OP_400012"
}请求体大小超出限制时返回报错如下
<head><title>413 Request Entity Too Large</title></head>
<body>
<center><h1>413 Request Entity Too Large</h1></center>
<hr><center>nginx</center>
</body>
</html>状态码
| http状态码 | 描述 |
|---|---|
| 200 | 表示请求成功 |
错误码说明
6位错误码。4 开头为业务错误码,5 开头为服务错误码。
| 错误码 | 错误信息 | 错误描述 |
|---|---|---|
| AI_OP_400005 | 请求体类型错误 | 请求体需为字典,不能为其他类型 |
| AI_OP_400006 | 必传的参数未传 | 必须的参数(data)未传 |
| AI_OP_400008 | 请求体的参数字段类型错误 | data 字段应该是 list 类型 |
| AI_OP_400009 | 请求体的参数字段值为空 | data 列表为空 |
| AI_OP_400011 | base64 数据处理异常 | data 字段的 base64 字符串转换字节码异常 |
| AI_OP_400012 | 文件格式不合法 | 仅支持 jpeg/png/jpg/bmp 格式 |
| AI_OP_400013 | 文件大小不符合要求 | 该文件大小不符合要求,图片要求小于 10M |
| AI_OP_400018 | 超过个数限制 | data 超过个数限制,最多传 50 张图片 |
| AI_OP_410001 | 图片解码错误 | 字节码解码为图片错误 |
| AI_OP_410002 | 图片尺寸不符合要求 | 分辨率长宽尺寸应不高于 5000 不低于 32 |
| AI_OP_500001 | OCR服务接口异常,请联系管理员 | 需要联系管理员处理 |
base64 编码规则:使用常规的 safe base64 编码方式
python 中推荐使用
base64.urlsafe_b64encode()函数进行编码。java 中推荐使用
BASE64.getUrlEncoder().encodeToString()函数进行编码