您的位置:

百度OCR文字识别接口详解

一、概述

百度OCR文字识别接口是一种基于深度学习技术的图片文字识别服务,能够在秒级别完成对各种场景、各种印刷体、手写体的文字识别任务。它支持多种API传输方式,包括HTTP/HTTPS协议、POST/GET等方式,并且提供多种语言的SDK。

二、接口调用

调用百度OCR文字识别接口非常简单,只需完成以下几个步骤:

1、在百度AI平台中创建应用,获取API Key和Secret Key;

2、通过HTTP/HTTPS协议发送请求,携带API Key、Secret Key和图片二进制数据或者图片URL;

3、解析响应报文,获取识别结果。

以下为通过Python SDK调用通用文字识别API的示例代码:

from aip import AipOcr

# 以下三项信息由创建应用时自动生成
APP_ID = 'your_app_id'
API_KEY = 'your_api_key'
SECRET_KEY = 'your_secret_key'

# 创建AipOcr客户端
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)

# 读取本地图片文件
with open('example.png', 'rb') as fp:
    image = fp.read()

# 调用通用文字识别接口
result = client.basicGeneral(image)

# 输出识别结果
print(result)

三、接口参数

百度OCR文字识别接口提供多种参数,能够满足不同的识别需求。以下为常用参数的说明:

1、image:原始图像二进制数据或者图像URL(使用URL时需确保可公网访问);

2、language_type:识别语言类型,默认为CHN_ENG(中英文混合);

3、detect_direction:是否检测图像朝向,默认为false;

4、detect_language:是否检测语言,默认为false;

5、probability:是否返回识别结果中每一行的置信度,默认为false。

以下为Python SDK中设置参数的示例代码:

# 调用通用文字识别接口,增加detect_direction参数
result = client.basicGeneral(image, {"detect_direction": "true"})

# 调用表格文字识别接口,增加language_type和probability参数
result = client.form(image, {"language_type": "JAP", "probability": "true"})

四、接口返回值

百度OCR文字识别接口的返回值为JSON格式,其中包含了识别结果、识别时间等信息。以下是通用文字识别接口返回值的示例:

{
    "log_id": 30791757289303,
    "words_result_num": 3,
    "words_result": [
        {"words": "百度AI平台"},
        {"words": "www.ai.baidu.com"},
        {"words": "全球领先的AI开放平台"}
    ],
    "language": 0
}

五、接口应用场景

百度OCR文字识别接口能够广泛应用于身份证、银行卡、车牌、票据、营业执照、表格等各种场景的数据获取和识别。以下为部分应用场景的示例:

1、身份证识别
身份证包含姓名、证件号码、出生日期等信息,通过OCR技术可以轻松提取这些信息,并且能够智能识别身份证上面的正反面;

2、表格识别
表格作为一种常见的文档形式,它的数据处理一般耗费人力物力。通过OCR技术,可以将表格中的文字识别出来,并且还可以提取表格中的各种信息,为表格数据处理提供便利;

3、票据识别
票据是尤其适合OCR技术应用的场景,通过文字识别,可自动获得各种票据上面的信息,减轻工作负担。例如,可以用OCR来读取快递运单号码;

4、车牌识别
OCR技术可以自动识别车牌号码,提高车辆管理效率;

5、银行卡识别
OCR技术可以识别银行卡号和发卡行等信息,提高银行系统的自动化程度。