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

yipeiwu_com7年前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中的try、except、finally 执行顺序详解

如下所示: def test1(): try: print('to do stuff') raise Exception('hehe') print('to r...

Python之pandas读写文件乱码的解决方法

python读写文件有时候会出现   ‘XXX'编码不能打开XXX什么的,用记事本打开要读取的文件,另存为UTF-8编码,然后再用py去读应该可以了。如果还不行,那...

python 实现归并排序算法

理论不多说: 复制代码 代码如下: #!/usr/bin/python import sys def merge(array, q, p, r): left_array = array[...

对pandas中两种数据类型Series和DataFrame的区别详解

对pandas中两种数据类型Series和DataFrame的区别详解

1. Series相当于数组numpy.array类似 s1=pd.Series([1,2,4,6,7,2]) s2=pd.Series([4,3,1,57,8],index=['a...

如何在python字符串中输入纯粹的{}

python的format函数通过{}来格式化字符串 >>> a='{0}'.format(123) >>> a '123' 如果需要在文本中包...