python使用百度AipOCR来实现图像文字识别

上篇文字讲到了可以截屏手机模拟器上的界面并传回电脑上,文章链接

python将手机模拟器截屏并发送至电脑上_小小爬虾的博客-CSDN博客

传回来以后,就可以识别出图片中的文字内容了。

我使用的是Python3.10.4+百度的AipOCR库实现图像文字识别。

1、首先安装库

参考我的文章如何在python3下安装库

记录一下python2和python3在同一台电脑上共存使用并安装各自的库以及各自在pycharm中使用的方法_小小爬虾的博客-CSDN博客

pip3 install baidu-aip -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

pip3 install chardet

2、获取百度文字识别的Key

(1)登陆网址百度文字识别,覆盖全面,响应迅速,准确率超99%-百度AI开放平台

(2)进入控制台https://console.bce.baidu.com/ai/#/ai/speech/app/list

(3)创建应用

(4)写应用名字,接口选择,应用归属,应用描述

(5)创建后返回列表即可得到Key

APP_ID = '39108806'

API_KEY = '6uA3Zfghijklmnopqrstuvw'

SECRET_KEY = 'jV18PFGHIJKLMNOPQRSTUVW'

3、写代码

python 复制代码
from aip import AipOcr

#百度识别的KEY
APP_ID = '12345678'
API_KEY = 'abcdefghijklmnopqrstuvw'
SECRET_KEY = 'ABCDEFGHIJKLMNOPQRSTUVW'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
def baidu_ocr_text(img_p_n):
    # 百度文本识别AipOcr
    image = open(img_p_n, 'rb').read()
    #识别模式,有好几种,下面有介绍
    msg = client.basicGeneral(image)
    text = 'result:\n'
    for i in msg.get('words_result'):
        text += (i.get('words') + '\n')
    print(type(text))
    text=text.replace('\u04B0','').replace('\uFFE5','').replace('\u00A5','')
    print(text)

def main():
    baidu_ocr_text("./img/example.png")

if __name__ == '__main__':
    main()

百度文字识别有几种模式,经研究如下:

python 复制代码
# 标准版    
msg = client.basicGeneral(image)

# 高精度版
msg = client.basicAccurate(image)

# 通用文字识别(含位置信息版)
msg = client.general(image)

# 通用文字识别(含位置高精度版)
msg = client.accurate(image)

# 通用文字识别(含生僻字版)
msg = client.enhancedGeneral(image)
#{u'error_code': 6, u'error_msg': u'No permission to access data'},不知道何种原因

#网络图片文字识别
msg = client.webImage(image)
#如果提示{u'error_code': 17, u'error_msg': u'Open api daily request limit reached'},百度识别每日有上限

4、给出一张图片(比如手机截屏的图片./img/example.png)

运行程序,结果如图:

可见由上至下、由左至右将图片中的文字识别,还是很准确的。

相关推荐
揽星河..16 分钟前
【C语言】指针
c语言·开发语言
小小数媒成员33 分钟前
UGUI原理(一)
开发语言·游戏·unity·游戏引擎
VIP_CQCRE1 小时前
内容自动化越跑越乱?先补上状态、去重和失败恢复
python·ai·工作流·幂等设计·内容自动化
速易达网络1 小时前
Three.js 动画入门教学:从场景搭建到流畅动效
开发语言·javascript·ecmascript
福大大架构师每日一题1 小时前
excelize v2.11.1发布:Go 1.26.0起步,16项安全修复与嵌入对象能力全面升级
开发语言·安全·golang
我喜欢就喜欢1 小时前
RAG 重排序 Rerank 实战:用 bge-reranker 把 Top-K 命中率拉回来
python·大模型·向量检索·rag·rerank
Sarvartha1 小时前
集合概述 & Collection 接口
开发语言
专注仿真1 小时前
卷积神经网络(CNN)算法详解
人工智能·python·算法·代码·大模型训练
isfox1 小时前
Python3 协程:异步编程的核心机制与实战
python