Python|基于百度API五行代码实现OCR文字高识别率


朋友扔过来一张图片,说在整理试题答案,但是试题是图片,想从网上搜索答案一个一个敲太累了,能不能将图片里的文字提取出来?
我一看这是典型的OCR识别啊,直接祭出神器Tesseract.

tesseract -l chi_sim 4.png stdout
目

二 画 口 “ 口 出

再对比原图一看

哦,不,是不是差的有点儿多?
怎么办呢?tesseract识别不利,肯定是咱玩的不溜,为了识别几张图,再进行一通识别训练是不是有点儿浪费时间?现在都2020年了,各大厂商都提供这种文字识别服务,像我知道的百度都号称50000次/天免费,就它了,开干
第一步 登陆 https://login.bce.baidu.com/

需要百度帐号,是偷是抢,各凭本事吧.
第二步 找到文字识别服务

乖乖,这大厂,就是不一样,产品真多.
第三步 创建一个应用


立即创建
第四步 拿到AppID,API Key,Secret Key

下面是见证五行代码的时刻了
第一步 安装百度Python SDK

pip install baidu-aip

第二步 替换之前拿到 AppID,API Key,Secret Key并修改图片地址

from aip import AipOcr

APP_ID = 'xxx'
API_KEY = 'xxx'
SECRET_KEY = 'xxx'
IMAGE_URL='~/4.png'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
with open(IMAGE_URL, 'rb') as fp:
    res         = client.basicGeneral(fp.read())
    for words_arr in res.get('words_result'):
        print(words_arr['words'].replace('.口','.').replace('.回','.'))

第三步 run

$ python ocr-baidu.py 

4、知觉的特性包括()
A.整体性
B.选择性
C.恒常性
D.间接性
E.理解性
5、注意的功能有()
A.调节功能
B.维持功能
C.抑制功能
D.选择功能
E.启动功能


嗯 对比图片,比较完美, 收工!
that's all


相关博文

About rainbird

IOS攻城狮
This entry was posted in linux, Python and tagged , , , , , , , , . Bookmark the permalink.

发表评论