支持多格式版面、复杂文档背景和光照环境的精准识别。
接口说明
本接口适用场景
- 阿里云全文识别高精版,是阿里云官方自研 OCR 文字识别产品,智能识别图片所包含的全部字段,集表格识别、旋转识别、生僻字识别等多功能为一体,提供高性价比的多场景文字识别体验。
- 阿里云 OCR 产品基于阿里巴巴达摩院强大的 AI 技术及海量数据,历经多年沉淀打磨,具有服务稳定、操作简易、实时性高、能力全面等几大优势。
- 本接口图片示例
本接口核心能力
分类 | 概述 |
---|---|
多功能集结 | 集表格识别、旋转识别、生僻字识别等多功能为一体。 |
抗干扰 | 支持多格式版面、复杂文档背景和光照环境的精准识别。 |
自动排异 | 对有印章、手印的文档,可实现印章查处后识别。 |
高阶能力 | 支持覆盖文字编辑、低置信度过滤、图案检测。 |
如何使用本接口
步骤 | 概述 |
---|---|
1 | 开通 通用文字识别 服务。开通服务前后,您可以通过体验馆免费体验本功能识别效果。 |
2 | 购买全文识别高精版资源包。本 API 会赠送免费额度,可使用免费额度测试。 |
3 | 可以参照调试页面提供的代码示例完成 API 接入开发。接入完成后,调用 API 获取识别结果。如果使用子账号调用接口,需要阿里云账号(主账号)对 RAM 账号进行授权。创建 RAM 用户的具体操作,请参考:创建 RAM 用户。文字识别服务提供一种系统授权策略,即 AliyunOCRFullAccess。具体授权操作,请参见在用户页面为 RAM 用户授权。 |
重要提示
类型 | 概述 |
---|---|
图片格式 |
|
图片尺寸 |
|
图片大小 |
|
其他提示 |
|
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
授权信息
下表是API对应的授权信息,可以在RAM权限策略语句的Action
元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:
- 操作:是指具体的权限点。
- 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
- 资源类型:是指操作中支持授权的资源类型。具体说明如下:
- 对于必选的资源类型,用背景高亮的方式表示。
- 对于不支持资源级授权的操作,用
全部资源
表示。
- 条件关键字:是指云产品自身定义的条件关键字。
- 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作 | 访问级别 | 资源类型 | 条件关键字 | 关联操作 |
---|---|---|---|---|
ocr:RecognizeAdvanced | update | *全部资源 * |
| 无 |
请求参数
名称 | 类型 | 必填 | 描述 | 示例值 |
---|---|---|---|---|
Url | string | 否 |
| https://example.png |
body | byte | 否 |
| 图片二进制文件 |
OutputCharInfo | boolean | 否 |
| false |
NeedRotate | boolean | 否 |
| false |
OutputTable | boolean | 否 |
| false |
NeedSortPage | boolean | 否 |
| false |
OutputFigure | boolean | 否 |
| false |
NoStamp | boolean | 否 |
| false |
Paragraph | boolean | 否 |
| false |
Row | boolean | 否 |
| false |
返回参数
返回参数说明
字段 | 类型 | 说明 |
---|---|---|
angle | int | 图片的角度(当 NeedRotate=true 时,返回此字段)。0 表示正向,90 表示图片朝右,180 朝下,270 朝左。 |
content | string | 识别出图片的文字块汇总。 |
figure | list | 图片中的图案信息(当 OutputFigure=true 时,返回此字段)。 |
prism_wordsInfo | list | 文字块信息。 |
prism_tablesInfo | list | 表格信息(当 OutputTable=true 时,返回此字段)。 |
prism_paragraphsInfo | list | 段落信息(当 Paragraph=true 时,返回此字段)。 |
prism_rowsInfo | list | 行信息(当 Row=true 时,返回此字段)。 |
prism_wnum | int | 识别的文字块的数量,prism_wordsInfo 数组的大小。 |
height | int | 算法矫正图片后的高度。 |
width | int | 算法矫正图片后的宽度。 |
orgHeight | int | 原图的高度。 |
orgWidth | int | 原图的宽度。 |
文字块信息(prism_wordsInfo 字段)
字段 | 类型 | 说明 |
---|---|---|
angle | int | 文字块的角度。 |
height | int | 文字块的高度(需考虑文字块的角度) |
width | int | 文字块的宽度(需考虑文字块的角度) |
pos | list | 文字块的外矩形四个点的坐标按顺时针排列(左上、右上、右下、左下)。当 NeedRotate=true 时,如果最外层的 angle 不为 0,需要按照 angle 矫正图片后,坐标才准确。 |
word | string | 文字块的文字内容。 |
tableId | int | 表格的 id(当 OutputTable=true 时,返回此字段)。 |
tableCellId | int | 表格中单元格的 id(当 OutputTable=true 时,返回此字段)。 |
charInfo | list | 单字信息。 |
单字信息(charInfo 字段)
字段 | 类型 | 说明 |
---|---|---|
word | string | 单字文字。 |
prob | int | 置信度。 |
x | int | 单字左上角横坐标。 |
y | int | 单字左上角纵坐标。 |
w | int | 单字宽度。 |
h | int | 单字高度。 |
表格信息(prism_tablesInfo 字段。当 OutputTable=true 时,返回此字段。)
字段 | 类型 | 说明 |
---|---|---|
tableId | int | 表格 id,和 prism_wordsInfo 信息中的 tableId 对应。 |
xCellSize | int | 表格中横坐标单元格的数量。 |
yCellSize | int | 表格中纵坐标单元格的数量。 |
cellInfos | list | 单元格信息。 |
单元格信息(cellInfos 字段)
字段 | 类型 | 说明 |
---|---|---|
tableCellId | int | 表格中单元格 id,和 prism_wordsInfo 信息中的 tableCellId 对应。 |
word | string | 单元格中的文字。 |
xsc | int | xStartCell 缩写,表示横轴方向该单元格起始在第几个单元格,第一个单元格值为 0。 |
xec | int | xEndCell 缩写,表示横轴方向该单元格结束在第几个单元格,第一个单元格值为 0,如果 xsc 和 xec 都为 0 说明该文字在横轴方向占据了一个单元格并且在第一个单元格内。 |
ysc | int | yStartCell 缩写,表示纵轴方向该单元格起始在第几个单元格,第一个单元格值为 0。 |
yec | int | yEndCell 缩写,表示纵轴方向该单元格结束在第几个单元格,第一个单元格值为 0。 |
pos | list | 单元格位置,按照单元格四个角的坐标顺时针排列,分别为左上 XY 坐标、右上 XY 坐标、右下 XY 坐标、左下 XY 坐标。 |
段落信息(prism_paragraphsInfo 字段。当 Paragraph=true 时,返回此字段。)
字段 | 类型 | 说明 |
---|---|---|
paragraphId | int | 段落 id,和 prism_wordsInfo 信息中的 paragraphId 对应。 |
word | string | 段落文字。 |
行信息(prism_rowsInfo 字段。当 Row=true 时,返回此字段。)
字段 | 类型 | 说明 |
---|---|---|
rowId | int | 行 id,和 prism_wordsInfo 信息中的 rowId 对应。 |
word | string | 行文字。 |
图案位置信息(figure 字段。当 OutputFigure=true 时,返回此字段。)
字段 | 类型 | 说明 |
---|---|---|
type | string | 图案类型。blicense_title 营业执照标题,national_emblem 中国国徽,barcode 条形码,qrcode 二维码,face 人脸,finger_print 指纹,signature 签名,round_stamp 圆形印章,oval_stamp 椭圆印章,rectangular_stamp 矩形印章,square_stamp 方形印章,rhombus_stamp 菱形印章 |
x | int | 图案左上角横坐标。 |
y | int | 图案左上角纵坐标。 |
w | int | 图案宽度。 |
h | int | 图案高度。 |
box | object | 图案坐标信息:中心横纵坐标,长宽,顺时针旋转角度。定义同 OpenCV 中 RotatedRect,请参见 OpenCV 文档。 |
points | list | 图案四个点坐标(左上、右上、右下、左下)。 |
示例
正常返回示例
JSON
格式
{
"RequestId": "43A29C77-405E-4CC0-BC55-EE694AD00655",
"Data": "{ \t\"content\": \"2017年河北区实验小学\", \t\"height\": 3509, \t\"orgHeight\": 3509, \t\"orgWidth\": 2512, \t\"prism_version\": \"1.0.9\", \t\"prism_wnum\": 126, \t\"prism_wordsInfo\": [{ \t\t\"angle\": -89, \t\t\"direction\": 0, \t\t\"height\": 541, \t\t\"pos\": [{ \t\t\t\"x\": 982, \t\t\t\"y\": 223 \t\t}, { \t\t\t\"x\": 1522, \t\t\t\"y\": 223 \t\t}, { \t\t\t\"x\": 1522, \t\t\t\"y\": 266 \t\t}, { \t\t\t\"x\": 982, \t\t\t\"y\": 266 \t\t}], \t\t\"prob\": 99, \t\t\"width\": 43, \t\t\"word\": \"2017年河北区实验小学\", \t\t\"x\": 1230, \t\t\"y\": -26 \t}], \t\"width\": 2512 }",
"Code": "200",
"Message": "message"
}
错误码
访问错误中心查看更多错误码。
变更历史
变更时间 | 变更内容概要 | 操作 |
---|---|---|
2022-11-15 | API 内部配置变更,不影响调用 | 查看变更详情 |
2021-08-17 | OpenAPI 入参发生变更 | 查看变更详情 |
SDK 调用 通过 SDK 调用此接口的示例请参考开发者中心