一、简介

Tesseract是一个 由HP实验室开发 由Google维护的开源的光学字符识别(OCR)引擎,可以在 Apache 2.0 许可下获得。它可以直接使用,或者(对于程序员)使用 API 从图像中提取输入,包括手写的或打印的文本。

与Microsoft Office Document Imaging(MODI)相比,我们可以不断的训练的库,使图像转换文本的能力不断增强;

训练的大致流程:安装jTessBoxEditor -> 获取样本文件 -> Merge样本文件 –> 生成BOX文件 -> 定义字符配置文件 -> 字符矫正 -> 执行批处理文件 -> 将生成的 traineddata 放 入tessdata 中。

如果团队深度需要,还可以以它为模板,开发出符合自身需求的OCR引擎。

二、下载

以下是关于Tesseract的常用网址
下载地址:https://digi.bib.uni-mannheim.de/tesseract/ 官方网站:https://github.com/tesseract-ocr/tesseract 官方文档:https://github.com/tesseract-ocr/tessdoc 语言包地址:https://github.com/tesseract-ocr/tessdata注意事项:
1.尽量不要下载dev(开发中的版本),alpha(内部测试版,一般不向外部发布,会有很多Bug),beta(公测版本,即针对所有用户公开的测试版本)等版本。

2.建议下载最新稳定版本:
tesseract-ocr-w64-setup-v5.0.0.20190623.exe 2019-06-23 11:30 38M

三、安装

1.开始安装

tesseract 下载 tesseract官网_深度学习

2.许可协议

tesseract 下载 tesseract官网_tesseract 下载_02

3.选择要安装的用户

tesseract 下载 tesseract官网_python_03

4.选择附带要安装的语言包

此后会在安装过程中会自动从服务器下载该语言包。

tesseract 下载 tesseract官网_tesseract 下载_04

5.设置安装目的地址,后续设置环境变量时需要用到。

tesseract 下载 tesseract官网_环境变量_05

6.选择要创建程序快捷方式的启动菜单文件夹,一般默认即可

tesseract 下载 tesseract官网_python_06

7.完成安装

tesseract 下载 tesseract官网_pytorch_07

四、设置环境变量

1.设置环境变量

进入环境变量中,在path中新建tesseract的安装路径使用win+r弹出“运行”命令框,输入sysdm.cpl打开系统属性。

tesseract 下载 tesseract官网_pytorch_08

2.在“高级”中打开“环境变量”

tesseract 下载 tesseract官网_python_09

3.在“系统变量”中找到“Path",双击进入

tesseract 下载 tesseract官网_python_10

4.加入安装过程中设置的地址

tesseract 下载 tesseract官网_python_11


之后连续点击确定三次,依次关闭这三个窗口。

五、安装检验及语言包拓展

1.查看是否安装成功

打开cmd,输入tesseract -v回车,若显示版本号即为安装成功。


tesseract 下载 tesseract官网_tesseract 下载_12

2.查看已经安装的语言

在cmd中输入tesseract --list-langs回车,若显示版本号即为安装成功。


tesseract 下载 tesseract官网_tesseract 下载_13

3.拓展语言包

在下载步骤中找到语言包地址的链接,下载所需要的的语言包,如图


tesseract 下载 tesseract官网_tesseract 下载_14


下载后将该包直接放在程序安装目录的tessdata文件夹中里面即可,如图


tesseract 下载 tesseract官网_tesseract 下载_15

六、Python实例运用

1.测试样图

tesseract 下载 tesseract官网_tesseract 下载_16

2.测试代码

import pytesseract
from PIL import Image


def demo():
    # 打开要识别的图片
    image = Image.open('D:/Programming_development/Python/material/横渠四句.png')
    # 使用pytesseract调用image_to_string方法进行识别,传入要识别的图片,lang='chi_sim'是设置为中文识别,
    text = pytesseract.image_to_string(image, lang='chi_sim')
    
    #输入所识别的文字
    print(text)


if __name__ == '__main__':
    demo()

3.测试结果

tesseract 下载 tesseract官网_tesseract 下载_17