上一篇
按键百度文字识别接口调用
- 行业动态
- 2025-05-14
- 4
通过按键事件触发调用百度文字识别接口,上传图像数据后获取OCR识别结果
准备工作
注册百度账号
访问百度智能云官网,完成个人或企业实名认证。开通文字识别服务
- 登录后进入“产品服务”→“人工智能”→“文字识别”。
- 点击“立即使用”,选择“通用文字识别”或其他细分场景(如身份证、车牌识别等)。
获取API Key和Secret Key
- 在控制台左侧导航栏选择“凭证管理”,记录
API Key
和Secret Key
。
- 在控制台左侧导航栏选择“凭证管理”,记录
接口调用流程
获取Access Token
通过API Key
和Secret Key
向百度OAuth服务请求动态Token,有效期2个月。
import requests def get_access_token(api_key, secret_key): url = "https://aip.baidubce.com/oauth/2.0/token" params = { "grant_type": "client_credentials", "client_id": api_key, "client_secret": secret_key } response = requests.post(url, data=params) return response.json().get("access_token")
调用文字识别接口
以通用文字识别(高精度版)为例:
def ocr_general(image_path, access_token): url = f"https://aip.baidubce.com/rest/2.0/ocr/v1/accurate_basic?access_token={access_token}" with open(image_path, "rb") as f: img_bytes = f.read() headers = {"Content-Type": "application/x-www-form-urlencoded"} data = {"image": base64.b64encode(img_bytes).decode()} response = requests.post(url, headers=headers, data=data) return response.json()
关键参数说明
参数名称 | 类型 | 必填 | 说明 |
---|---|---|---|
image | Base64字符串 | 是 | 支持JPEG/PNG/BMP/TIFF格式,图片大小≤4MB,最小边长≥15px |
language_type | 字符串 | 否 | 默认CHN_ENG (中英混合),可选CHN (中文)、ENG (英文)、JAP 等 |
detect_direction | 布尔值 | 否 | 是否检测图像方向,默认true |
probability | 浮点数 | 否 | 置信度阈值(0~1),默认不过滤 |
错误码处理
错误码 | 说明 | 解决方案 |
---|---|---|
110 | Access Token无效或已过期 | 重新获取Token |
111 | 不支持的API版本 | 检查URL中的版本号 |
282000 | 图片解码失败 | 确保图片为合法格式且未损坏 |
282001 | 图片尺寸过大 | 压缩图片至4MB以内 |
费用与计费
项目 | 免费额度 | 超出后单价(人民币) |
---|---|---|
通用文字识别 | 5万次/月 | 004元/次(高精度版) |
身份证识别 | 1万次/月 | 015元/次 |
手写文字识别 | 1万次/月 | 02元/次 |
应用场景示例
场景 | 推荐接口 | 适用场景 |
---|---|---|
身份证信息提取 | IDCard 专用接口 | 姓名、照片、地址、有效期等字段识别 |
营业执照关键字提取 | BusinessLicense 接口 | 统一社会信用代码、经营范围等 |
车牌号识别(停车场) | VehicleLicense 接口 | 蓝牌/黄牌/新能源车牌识别 |
相关问题与解答
Q1:如何判断图片是否支持自动旋转?
A:需设置detect_direction=true
,接口会自动检测并矫正图片方向(如倾斜的文本),若关闭此功能,需确保上传图片方向正确。
Q2:能否批量处理多张图片?
A:单次请求仅支持1张图片,需循环调用接口,建议使用异步处理或并发请求(注意QPS限制:默认1