Bootstrap

图片识别工具Tesseract介绍和python搭配使用

今天之所以写这篇文章,算是对pyautogui工具使用的补充,pyautogui只能通过图片像素来判断图片是否存在,如果我们想要自动化的识别图片并将它转换为文字呢?我们应该怎么做?此时tesseract可以帮助我们解决这个问题。下面我就来介绍它的环境搭建和安装方式。

一、Tesseract介绍、下载指南

1、了解Tesseract工具

Tesseract是一个 由HP实验室开发 由Google维护的开源的光学字符识别(OCR)引擎,可以在 Apache 2.0 许可下获得。它可以直接使用,或者(对于程序员)使用 API​​ 从图像中提取输入,包括手写的或打印的文本。与Microsoft Office Document Imaging(MODI)相比,我们可以不断的训练语言,提高图像转换文本的能力。

2、下载地址

tesseract官方下载地址
tesseract语言包下载
注意在语言包下载语言包时页面会崩溃,大家想用中文包的,可以进入我下面的网盘链接,想要下载其他语言包的同学,建议将链接复制到迅雷进行下载,下载速度还挺快的。

3、请注意!!!

为了更好的体验,建议下载稳定版,即如下版本,
64位电脑下载:
下载不含(dev开发版,alpha、bata等版本)
32位电脑下载:
32位电脑下载
由于官方的网站速度比较慢,在此贴上我的百度网盘链接,包含中文语言包、tesseract软件、jTessBoxEditor训练软件以及使用该软件的教程指导(jdk包)。链接如下:
百度网盘提取码:rhp6

二 、环境搭建

好了,相信聪明的你们已经下载好了吧,下面我们开始进行安装了。

2.1 版本3.05安装

3.05版本:这个注意不要勾选Additional language,勾选了无法下载会报错,建议在官网找语言包链接,通过迅雷下载。后面都是无脑操作,选择好路径就行。
3.05版本

2.2 最新版本安装

最新版5.2.0版本:这个多了个组件,里面可以勾选你想要的组件(建议下载),在这里都选择中文
最新版
Additional script勾选中文包如下:
Additional script
安装,这时会下载组件,就是速度很慢。
download
Additional language:在这里我选择不勾选,下的很慢。语言包也可以到网站获取链接通过迅雷下载。

2.3 环境搭建

接下来我们开始进行环境变量配置①在path中添加你的安装路径:D:\Program Files\Tesseract-OCR
②:变量名:TESSDATA_PREFIX,变量值:D:\Program Files\Tesseract-OCR\tessdata,这两个路径都需要配置到环境变量里面去。如下:
在这里插入图片描述
在这里插入图片描述
分别保存,打开cmd验证,输入tesseract -v验证,出现如下说明你配置好了
在这里插入图片描述
语言包配置:将下载好的语言包放入:D:\Program Files\Tesseract-OCR\tessdata
在这里插入图片描述
验证方式,在cmd输入tesseract --list-langs 运行如下说明成功:
在这里插入图片描述
到这里基本上配置好了。

2.4 举个栗子

在cmd中输入:**tesseract/? 可以查看帮助,在这里我们使用命令来进行简单的图片识别并提取文字: tesseract imagename outputbase [options…] [configfile…]
即:tesseract 输入文件名 输出文件 配置选项
在这里插入图片描述
在这里我们使用如图的图片eng.PNG来验证:在这里插入图片描述
进入图片的路径,在路径栏输入cmd, 或者自己先进入cmd慢慢cd过去;输入命令:
tesseract eng.PNG eng -l eng,其中(eng是语言,可以换成其他语言)回车后在路径会生成一个txt文件,打开显示:
“There are two reasons why
people don’t talk about things;
either it doesn’t mean anything
to them, or it means everything.”

在这里插入图片描述
到这里则所有验证通过,恭喜你一次性到位,安装成功!

三、Python中的环境搭建

3.1 安装pytesseract

由于这个软件可以和python结合起来使用,因此这里我们需要在cmd中安装包:

①python版本:3.7.9
②这里我用的是pycharm工作台,不会安装的自己百度
③安装命令:pip install pytesseract

3.2 修改配置文件

进入python安装包的路径:D:\Program Files\Python37\Lib\site-packages\pytesseract
编辑文件:pytesseract.py
修改tesseract_cmd = ‘D:\Program Files\Tesseract-OCR/tesseract.exe’,修改后在python中运行就不会报错了。

3.3 在python中验证

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @time     :2022/8/28 12:11
# @Author   :root
# @FileName :example
import pytesseract

img_path = "../chi.PNG"
result = pytesseract.image_to_string(image=img_path,lang="chi_sim",config="--psm 1")   #路径;语言;配置
print(result)

识别的图片为:在这里插入图片描述
识别效果,对于汉字还是有点问题,但是对于英文识别度很高,所以我们对于识别度不高的可以自己训练,哈哈哈。

tesseract 的 安 英 使 用 及 配 置 问 题 解 火
一 、 安 装 tesseract
二 、 配 置 环 境 变 量 “
三 、cmd “ 方 式 中 出 现 的 问 题 及 解 决 方 法
四 、 pycharm 方 式 中 出 现 的 闰 题 及 解 决 办 法
五 、 验 证 结 果

四、持续学习

今天的分享就到这里了,我后面还会分享opencv处理图片的学习。后面我也会讲tesseract在python中的基本用法,如何生成自己的验证码、二值化,模糊处理,有兴趣的同学们点个赞吧!!!

;