1. 接口描述
接口请求域名: ocr.tencentcloudapi.com 。
本接口支持图像整体文字的检测和识别。支持中文、英文、中英文、数字和特殊字符号的识别,并返回文字框位置和文字内容。
适用于文字较多、版式复杂、对识别准召率要求较高的场景,如试卷试题、网络图片、街景店招牌、法律卷宗等场景。
产品优势:与通用印刷体识别接口相比,本接口提供更高精度的通用文字识别服务,在手写体、文字较多、长串数字、小字、模糊字、倾斜文本等困难场景下,高精度版的准确率和召回率更高。
通用文字识别不同版本的差异如下:
【荐】通用印刷体识别(高精度版) | 【荐】通用印刷体识别 | 通用印刷体识别(精简版) | |
---|---|---|---|
适用场景 | 适用于文字较多、长串数字、小字、模糊字、倾斜文本等困难场景 | 适用于所有通用场景的印刷体识别 | 适用于快速文本识别场景,准召率有一定损失,价格更优惠 |
识别准确率 | 99% | 96% | 91% |
价格 | 高 | 中 | 低 |
支持的语言 | 中文、英文、中英文 | 中文、英文、中英文、日语、韩语、西班牙语、法语、德语、葡萄牙语、越南语、马来语、俄语、意大利语、荷兰语、瑞典语、芬兰语、丹麦语、挪威语、匈牙利语、泰语 | 中文、英文、中英文 |
自动语言检测 | 支持 | 支持 | 支持 |
返回文本行坐标 | 支持 | 支持 | 支持 |
自动旋转纠正 | 支持旋转识别,返回角度信息 | 支持旋转识别,返回角度信息 | 支持旋转识别,返回角度信息 |
默认接口请求频率限制:10次/秒。
推荐使用 API Explorer
点击调试
API Explorer 提供了在线调用、签名验证、SDK 代码生成和快速检索接口等能力。您可查看每次调用的请求内容和返回结果以及自动生成 SDK 调用示例。
2. 输入参数
以下请求参数列表仅列出了接口请求参数和部分公共参数,完整公共参数列表见 公共请求参数。
参数名称 | 必选 | 类型 | 描述 |
---|---|---|---|
Action | 是 | String | 公共参数,本接口取值:GeneralAccurateOCR。 |
Version | 是 | String | 公共参数,本接口取值:2018-11-19。 |
Region | 是 | String | 公共参数,详见产品支持的 地域列表,本接口仅支持其中的: ap-bangkok, ap-beijing, ap-guangzhou, ap-hongkong, ap-shanghai 。 |
ImageBase64 | 否 | String | 图片的 Base64 值。 要求图片经Base64编码后不超过 7M,分辨率建议600*800以上,支持PNG、JPG、JPEG、BMP格式。 图片的 ImageUrl、ImageBase64 必须提供一个,如果都提供,只使用 ImageUrl。 |
ImageUrl | 否 | String | 图片的 Url 地址。 要求图片经Base64编码后不超过 7M,分辨率建议600*800以上,支持PNG、JPG、JPEG、BMP格式。 图片存储于腾讯云的 Url 可保障更高的下载速度和稳定性,建议图片存储于腾讯云。非腾讯云存储的 Url 速度和稳定性可能受一定影响。 示例值:https://xx/a.jpg |
IsWords | 否 | Boolean | 是否返回单字信息,默认关 示例值:false |
EnableDetectSplit | 否 | Boolean | 是否开启原图切图检测功能,开启后可提升“整图面积大,但单字符占比面积小”(例如:试卷)场景下的识别效果,默认关 示例值:false |
IsPdf | 否 | Boolean | 是否开启PDF识别,默认值为false,开启后可同时支持图片和PDF的识别。 示例值:false |
PdfPageNumber | 否 | Integer | 需要识别的PDF页面的对应页码,仅支持PDF单页识别,当上传文件为PDF且IsPdf参数值为true时有效,默认值为1。 示例值:1 |
EnableDetectText | 否 | Boolean | 文本检测开关,默认为true。设置为false可直接进行单行识别,适用于仅包含正向单行文本的图片场景。 |
3. 输出参数
参数名称 | 类型 | 描述 |
---|---|---|
TextDetections | Array of TextDetection | 检测到的文本信息,包括文本行内容、置信度、文本行坐标以及文本行旋转纠正后的坐标,具体内容请点击左侧链接。 |
Angle | Float | 图片旋转角度(角度制),文本的水平方向为0°;顺时针为正,逆时针为负。点击查看如何纠正倾斜文本 示例值:0 |
RequestId | String | 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 |
4. 示例
示例1 通用文字识别(高精度版)示例代码 前往调试工具
图像整体文字的检测和识别,返回文字框位置与文字内容
输入示例
POST / HTTP/1.1
Host: ocr.tencentcloudapi.com
Content-Type: application/json
X-TC-Action: GeneralAccurateOCR
<公共请求参数>
{
"ImageUrl": "https://xx/a.jpg"
}
输出示例
{
"Response": {
"Angle": 359.989990234375,
"RequestId": "05441696-96fb-48a8-a445-49df03836fba",
"TextDetections": [
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":1}}",
"Confidence": 99,
"DetectedText": "轻断食:正在横扫全球的瘦身革命",
"ItemPolygon": {
"Height": 22,
"Width": 263,
"X": 446,
"Y": 93
},
"Polygon": [
{
"X": 446,
"Y": 93
},
{
"X": 709,
"Y": 96
},
{
"X": 708,
"Y": 118
},
{
"X": 446,
"Y": 114
}
],
"WordCoordPoint": [],
"Words": []
},
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":2}}",
"Confidence": 99,
"DetectedText": "专题报道。",
"ItemPolygon": {
"Height": 25,
"Width": 100,
"X": 47,
"Y": 201
},
"Polygon": [
{
"X": 47,
"Y": 201
},
{
"X": 147,
"Y": 200
},
{
"X": 147,
"Y": 225
},
{
"X": 48,
"Y": 226
}
],
"WordCoordPoint": [],
"Words": []
},
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":3}}",
"Confidence": 99,
"DetectedText": "2009年,我写了 《减肥前要做的101件事》(101 Things to Do",
"ItemPolygon": {
"Height": 27,
"Width": 628,
"X": 88,
"Y": 244
},
"Polygon": [
{
"X": 88,
"Y": 244
},
{
"X": 716,
"Y": 247
},
{
"X": 716,
"Y": 274
},
{
"X": 88,
"Y": 271
}
],
"WordCoordPoint": [],
"Words": []
},
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":3}}",
"Confidence": 99,
"DetectedText": "Before You Diet), 归纳我尝试各种流行减肥法的气馁经验, 每种方",
"ItemPolygon": {
"Height": 27,
"Width": 675,
"X": 42,
"Y": 292
},
"Polygon": [
{
"X": 42,
"Y": 292
},
{
"X": 717,
"Y": 290
},
{
"X": 717,
"Y": 317
},
{
"X": 43,
"Y": 320
}
],
"WordCoordPoint": [],
"Words": []
},
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":3}}",
"Confidence": 99,
"DetectedText": "法似乎都注定失败。",
"ItemPolygon": {
"Height": 25,
"Width": 192,
"X": 45,
"Y": 340
},
"Polygon": [
{
"X": 45,
"Y": 340
},
{
"X": 237,
"Y": 340
},
{
"X": 237,
"Y": 365
},
{
"X": 45,
"Y": 365
}
],
"WordCoordPoint": [],
"Words": []
},
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":4}}",
"Confidence": 99,
"DetectedText": "这二十年来我接触过的减肥方法中, 只有轻断食让我在瘦下来之 ",
"ItemPolygon": {
"Height": 27,
"Width": 633,
"X": 88,
"Y": 384
},
"Polygon": [
{
"X": 88,
"Y": 384
},
{
"X": 721,
"Y": 384
},
{
"X": 721,
"Y": 411
},
{
"X": 88,
"Y": 411
}
],
"WordCoordPoint": [],
"Words": []
},
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":4}}",
"Confidence": 99,
"DetectedText": "后不反弹。",
"ItemPolygon": {
"Height": 24,
"Width": 105,
"X": 42,
"Y": 435
},
"Polygon": [
{
"X": 42,
"Y": 435
},
{
"X": 147,
"Y": 433
},
{
"X": 148,
"Y": 457
},
{
"X": 43,
"Y": 460
}
],
"WordCoordPoint": [],
"Words": []
},
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":4}}",
"Confidence": 96,
"DetectedText": "至于抗衰老的健康益处,",
"ItemPolygon": {
"Height": 24,
"Width": 250,
"X": 148,
"Y": 433
},
"Polygon": [
{
"X": 148,
"Y": 433
},
{
"X": 398,
"Y": 433
},
{
"X": 398,
"Y": 457
},
{
"X": 148,
"Y": 457
}
],
"WordCoordPoint": [],
"Words": []
},
{
"AdvancedInfo": "{\"Parag\":{\"ParagNo\":4}}",
"Confidence": 99,
"DetectedText": "更是得来全不费工夫。",
"ItemPolygon": {
"Height": 26,
"Width": 223,
"X": 398,
"Y": 431
},
"Polygon": [
{
"X": 398,
"Y": 431
},
{
"X": 621,
"Y": 431
},
{
"X": 621,
"Y": 457
},
{
"X": 398,
"Y": 457
}
],
"WordCoordPoint": [],
"Words": []
}
]
}
}
5. 开发者资源
腾讯云 API 平台
腾讯云 API 平台 是综合 API 文档、错误码、API Explorer 及 SDK 等资源的统一查询平台,方便您从同一入口查询及使用腾讯云提供的所有 API 服务。
API Inspector
用户可通过 API Inspector 查看控制台每一步操作关联的 API 调用情况,并自动生成各语言版本的 API 代码,也可前往 API Explorer 进行在线调试。
SDK
云 API 3.0 提供了配套的开发工具集(SDK),支持多种编程语言,能更方便的调用 API。
- Tencent Cloud SDK 3.0 for Python: GitHub Gitee
- Tencent Cloud SDK 3.0 for Java: GitHub Gitee
- Tencent Cloud SDK 3.0 for PHP: GitHub Gitee
- Tencent Cloud SDK 3.0 for Go: GitHub Gitee
- Tencent Cloud SDK 3.0 for Node.js: GitHub Gitee
- Tencent Cloud SDK 3.0 for .NET: GitHub Gitee
- Tencent Cloud SDK 3.0 for C++: GitHub Gitee
- Tencent Cloud SDK 3.0 for Ruby: GitHub Gitee
命令行工具
6. 错误码
以下仅列出了接口业务逻辑相关的错误码,其他错误码详见 公共错误码。
错误码 | 描述 |
---|---|
FailedOperation.DownLoadError | 文件下载失败。 |
FailedOperation.EmptyImageError | 图片内容为空。 |
FailedOperation.EngineRecognizeTimeout | 引擎识别超时。 |
FailedOperation.ImageBlur | 图片模糊。 |
FailedOperation.ImageDecodeFailed | 图片解码失败。 |
FailedOperation.ImageNoText | 图片中未检测到文本。 |
FailedOperation.ImageSizeTooLarge | 图片尺寸过大,请参考输入参数中关于图片大小限制的说明。 |
FailedOperation.OcrFailed | OCR识别失败。 |
FailedOperation.UnKnowError | 未知错误。 |
FailedOperation.UnOpenError | 服务未开通。 |
InvalidParameter.EngineImageDecodeFailed | 图片解码失败。 |
InvalidParameterValue.InvalidParameterValueLimit | 参数值错误。 |
LimitExceeded.TooLargeFileError | 文件内容太大。 |
ResourceUnavailable.InArrears | 账号已欠费。 |
ResourceUnavailable.ResourcePackageRunOut | 账号资源包耗尽。 |
ResourcesSoldOut.ChargeStatusException | 计费状态异常。 |