在工作中,有时候需要处理图片的文字识别,分享一个简单的入门的图片识别小程序,满足基本需求。
-
环境准备
1、安装 pytesseract 库,出现Successfully表示安装成功。
pip install pytesseract
2、外部手动安装Tesseract-OCR ,下载网址:
https://digi.bib.uni-mannheim.de/tesseract/ 我下载的是这个版本
选择English
下一步-->Next
这里一般默认就好了
这里是组件的选择,默认支持英文和数字的识别,我们选上下面两个支持中文识别。
接下来是安装目录,自己选择的要记得,后面要添加到环境path变量里面。
最后,接着Next-->Install-->Next--->Finish。
- 配置环境变量
1、电脑桌面找到 此电脑 右击--属性--高级系统设置
找到Path--双击--新建 ,把安装tesseract的目录放进去即可。
2、 新建一个数据目录,路径是你安装tesseract下的tessdata文件
TESSDATA_PREFIX E:\OCR\tessdata
3、把第二步新建的变量名添加到path列表里面 %TESSDATA_PREFIX%
4、最后,去终端验证是否安装成功,输入tesseract --version,出现版本信息,即安装成功。
- 效果演示
百度上找一张文字图片试一下效果如何:
# 导入模块和包
from PIL import Image
import pytesseract
# 打开图片
img = Image.open('test.png')
# 调用软件
pytesseract.pytesseract.tesseract_cmd=r'E:\OCR\tesseract.exe'
# 识别中文用"chi_sim"
text = pytesseract.image_to_string(img,lang='chi_sim')
print(text)
# 将识别的文字保存到文本
f = open('test.txt','w',encoding='utf-8')
f.write(text)
f.close()
输出结果还行,没有什么错误