安装Tesseract-OCR软件

Tesseract-OCR 是一款由HP实验室开发由Google维护的开源OCR(Optical Character Recognition , 光学字符识别)引擎。

下载Tesseract-OCR (windows)

官方下载地址:https://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-setup-4.00.00dev.exe

百度网盘:链接: https://pan.baidu.com/s/1ooItjyzki089pTXNbYQ1hA 提取码: sq3t

安装和设置环境变量

双击安装,点击下一步,默认安装即可。

  1. 右键点击此电脑–属性–高级系统设置–环境变量–系统变量–Path

  2. 添加系统变量

    DQKzwV.png

  3. 添加 tessdata 系统变量

    新建系统变量 : TESSDATA_PREFIX
    变量值为 tessdata 文件夹的路径(在Tesseract-OCR的安装目录下)

    DQQygH.png

  4. 如果识别中文需要下载相应的语言包

    ​ 中文包百度网盘:链接: https://pan.baidu.com/s/1xWLQxXw0YdgW2ZPJY-wYWA 提取码: jxyh

    下载好的文件放在步骤三的路径下,即 tessdata 文件夹下。

    使用 Tesseract-OCR

    1. 验证是否安装成功 cmd命令行模式下,出现版本号即为成功,未成功一般原因是环境变量设置有问题

      tesseract --version
    2. 使用命令来识别图片, 查看输出文件中识别内容

      tesseract 图片路径 输出文件
    3. 经过测试,对于规整的文本等识别效果还可以,手写体或者背景噪音过多识别准确率过低。

python代码中使用 pytesseract 图片识别

需要用到库,所以需要导入相关依赖。官方文档

安装相关依赖 pillow和pytesseract

也可在PyCharm中直接导包(alt + enter)

pip install pytesseract
pip install pillow

编写代码测试

import pytesseract
from PIL import Image

image = Image.open("code.png")
txt = pytesseract.image_to_string(image, lang="chi_sim")
print(txt)

出现错误,一般也是系统变量配置问题

方法一:重新配置环境变量

方法二: 代码中指定环境变量参数

import pytesseract
from PIL import Image

pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract.exe'
tessdata_dir_config = '--tessdata-dir "C:/Program Files (x86)/Tesseract-OCR/tessdata"'

image = Image.open("0.jpg")
txt = pytesseract.image_to_string(image, config=tessdata_dir_config, lang="chi_sim")
print(txt)

结论

除非图片非常清晰的分离的前景和背景才能被Tesseract很好的识别出结果。

在有”噪点”的图片情况,需要获取更好的,更精确的训练模型去适应这种特别的情况。

对于具有高分辨率输入的情况,其中前景文本被干净地从背景中分割的图片,Tesseract 是最适合的。

参考链接

使用Tesseract-OCR进行图像中的文字识别