Python3.6使用tesseract-ocr的正确方法

yipeiwu_com6年前Python基础

Tesseract介绍

tesseract是一个挺不错的OCR引擎,目前的问题是最新的中文资料相对较少,过时、不准确的信息偏多。

tesseract是一个google支持的开源ocr项目,其项目地址:https://github.com/tesseract-ocr/tesseract,目前最新的源码可以在这里下载。

实际使用tesseract ocr也有两种方式:1. 动态库方式 libtesseract  2. 执行程序方式 tesseract.exe

环境

  • Python 3.6.3
  • pip 9.0.1
  • tesseract-ocr-setup-3.05.00dev.exe
  • Windows10

安装

1.tesseract-orc

  • Tesseract:开源的OCR识别引擎,初期Tesseract引擎由HP实验室研发,后来贡献给了开源软件业,后经由Google进行改进,消除bug,优化,重新发布。

安装的时候需要自行选择安装的语言,一些其他国家的语言可以不选择安装,我之按安装了中文,英文和日语。安装过程和其他软件一样。

2.pytesseract

pip install pytesseract

配置环境

1.设置 tesseract-orc路径

默认情况下tesseract-orc是不被添加到系统的path路径的,这样在使用的时候发生FileNotFoundError: [WinError 2] 系统找不到指定的文件错误。

解决方法:

  • 方法1:将 C:\Program Files (x86)\Tesseract-OCR添加到系统路径(路径因安装过程而异)
  • 方法2:修改pytesseract.py文件

设置训练集的位置

下载的默认训练集也没有添加到系统路径,会报错

pytesseract.pytesseract.TesseractError: (1, 'Error opening data file \\Program Files (x86)\\Tesseract-OCR\\tessdata/chi_sim.traineddata')

解决方法:

设置环境变量 TESSDATA_PREFIX
C:\Program Files (x86)\Tesseract-OCR\tessdata

实例程序

import pytesseract
from PIL import Image
image = Image.open('test.png')
code = pytesseract.image_to_string(image)
print(code)

更多参考:https://pypi.python.org/pypi/pytesseract

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

Python 实现中值滤波、均值滤波的方法

Python 实现中值滤波、均值滤波的方法

红包: Lena椒盐噪声图片: # -*- coding: utf-8 -*- """ Created on Sat Oct 14 22:16:47 2017 @author:...

Python函数返回不定数量的值方法

Python的函数是可以return多个值的,但其本质上还是返回单个值,只是利用了tuple的自动打包,将多个值打包成单个tuple返回。 使用代码验证: def func_a():...

tensorflow 获取模型所有参数总和数量的方法

实例如下所示: from functools import reduce from operator import mul def get_num_params(): num_p...

python 借助numpy保存数据为csv格式的实现方法

借助numpy可以把数组或者矩阵保存为csv文件,也可以吧csv文件整体读取为一个数组或矩阵。 1.csv ==> matrix import numpy my_matrix...

python中报错"json.decoder.JSONDecodeError: Expecting value:"的解决

在学习python语言中用json库解析网络数据时,我遇到了两个编译错误:json.decoder.JSONDecodeError: Expecting property name en...