Python2.7利用Tesseract进行中英文图像识别

背景环境:  win8.1  64位   python2.7.13  
本以为会很简单,结果在配置环境这块上花了很多时间,踩了几个坑,最后自己看英文文档和log才解决问题。
打开网站  
https://pypi.python.org/pypi/pytesseract  
https://github.com/tesseract-ocr/tesseract/wiki
https://github.com/tesseract-ocr/tesseract/wiki/Downloads
http://www.pythonware.com/products/pil/
找到并下载安装tesseract-ocr-setup-4.00.00dev.exe文件   下载中文训练库chi_sim.traineddata 
将安装文件路径  添加到环境变量中的PATH 和 Path中去 ,在系统变量中添加一个TESSDATA_PREFIX,变量值还是文件路径
我的是D:\programfiles\tesseract\Tesseract-OCR
打开cmd安装  pip install pytesseract

去C:\Python27\Lib\site-packages 下找到PIL卸载 然后 去下载 PIL-1.1.7.win32-py2.7.exe  并安装

# -*- coding: utf-8 -*-
try:
    import Image
except ImportError:
    from PIL import Image
import pytesseract

img = Image.open(‘test2.png‘)
img.load()
text = pytesseract.image_to_string(img, lang=‘chi_sim‘)
print(text)

最后找张png的图放在和这个文件同目录下   完事了

几个坑: 
:from . import VERSION, PILLOW_VERSION, _plugins ueError: Attempted relative
不知道什么鬼,后来直接把C:\Python27\Lib\site-packages\PIL 给删了 重新安装这个库
pytesseract.pytesseract.TesseractError: (1, u‘Error opening data file D:\\programfiles\\tesseract\\Tesseract-OCR/chi_sim.traineddata‘)
这里需要将chi_sim.traineddata放在指定目录下,而不是 $path\tessdata\tessconfigs下 
总结:  看官方教程  百度上搜索的太旧了   stackoverflow 也是

原文地址:https://www.cnblogs.com/zeroones/p/8329537.html

时间: 2024-10-29 08:38:57

Python2.7利用Tesseract进行中英文图像识别的相关文章

Python中利用Tesseract软件来识别图片中的英文与中文

OCR与Tesseract介绍   将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR).可以实现OCR 的底层库并不多,目前很多库都是使用共同的几个底层OCR 库,或者是在上面进行定制. Tesseract 是一个OCR 库,目前由Google 赞助(Google 也是一家以OCR 和机器学习技术闻名于世的公司).Tesseract 是目前公认最优秀.最精确的开源OCR 系统. 除了极高的精确度,Tesseract 也具有很高的灵活性.它

利用Tesseract识别58同城图片式手机号码

58同城上的手机号码大多数是图片格式,目的也是防止爬虫软件抓取,但作为一个专门开发爬虫的程序猿,必须拿下它才能安心,否则睡觉做梦也会想着该怎么破这该死的图片号码的! 这里我们利用Google的开源项目:Tesseract-ocr(项目地址:https://github.com/tesseract-ocr) 其实,Tesseract的网上的教程其实有很多,关于它的介绍,我在这里就不说了,直接讲重点! 先是要初始化Tesseract,这里我们用默认的识别库,根据58同城号码图片的特点,我们这样初始化

集成利用tesseract.exe进行ocr

ocr是一个宽泛的概念.市场上面ocr将一直是一个不断发展.需求强烈的方向. 我认为,从难度上区分,中文ocr难于英文ocr;手写ocr难于印刷ocr.所以两两组合,中文手写体最难(比如毛体,有一些人都识别不了):而英文(数字)印刷体ocr最简单,对于最简单的东西,我认为就可以直接使用tesseract,它本身就是集成了对英文(数字)的识别.将这个功能集成起来,甚至是研究其开源实现,将其融合起来. 下载http://uniontesting.com/thread-32030-1-1.html 比

Mac系统下安装ipython分别支持python2和python3

操作系统:Mac10.11.5 python2.7.13 python3.6.1 安装python2: brew install python 安装python3: brew install python3 此时,命令行输入python3则打开python3,输入python则打开python2. 利用pip安装 ipython sudo pip install ipython sudo pip3 install ipython 用pip安装ipython则是安装到python2的site-pa

图像识别概念入门之“基于主成份分析的人脸识别学习”

最近看到一篇介绍利用“主成份分析实现人脸识别”的matlab应用实例. 学习了一遍,对主成份分析和图像识别有了一个概念性的认识. 这个例子可能是最简单的人脸识别例子了,暂且不考虑实用性,单单起到认识和了解. 下面matlab程序进行学习注释,希望能帮助记忆.同时加强交流. 程序使用的人脸库来自Essex大学的人脸数据库的face94部分.选择了10个人,每人选择3张照片.1张放入测试集合. 2张放入训练集合.照片比较理想化,绿色背景的大头照片,表情略有不同,光照均匀. 程序的链接如下: http

Tesseract:简单的Java光学字符识别

1.1 介绍 开发具有一定价值的符号是人类特有的特征.对于人们来说识别这些符号和理解图片上的文字是非常正常的事情.与计算机那样去抓取文字不同,我们完全是基于视觉的本能去阅读它们. 另一方面,计算机的工作需要具体的和有组织的内容.它们需要数字化的表示,而不是图形化的. 有时候,这是不可能的.有时,我们希望自动化的完成用双手从图像重写文本的任务. 针对这些任务,光学字符识别(OCR)被设计成一种允许计算机以文本形式"阅读"图形化内容的方法,和人类工作的方式相似.虽然这些系统相对准确,但仍然

np2016课程总结

林牧 SA16222166 课程目标 课程安排 A1a A2 A3 其他方面的收获 本课心得 课程目标 通过实现一个医学辅助诊断的专家系统原型,具体为实现对血常规检测报告OCR识别结果,预测人物的年龄和性别,学习机器学习的常见算法,重点分析神经网路,理解和掌握常用算法的使用. 课程安排 A1a 神经网络实现手写字符识别系统 A2 血常规检验报告的图像OCR识别 A3 根据血常规检验的各项数据预测年龄和性别 Pull Request A1a 该项目属于神经网络中的"Hello World"

python转行成功

总体路线: Python+Pygame+Flask+SQLAlchemy 主要书籍:笨方法学Python (电子版), Python 核心编程(电子版),Python基础教程(纸质版),FlaskWeb开发:基于Python的Web应用开发实战(电子版) 主要的参考网站: Assignments — Problem Solving with Algorithms and Data Structureshttp://interactivepython.org/runestone/static/py

基于Python实现对PDF文件的OCR识别

http://www.jb51.net/article/89955.htm https://pythontips.com/2016/02/25/ocr-on-pdf-files-using-python/ 大家可能听说过使用Python进行OCR识别操作.在Python中,最出名的库便是Google所资助的tesseract.利用tesseract可以很轻松地对图像进行识别.现在问题来了,如果想对一个PDF文档进行OCR识别,该怎么做呢?下面一起来看看. 最近在做一个项目的时候,需要将PDF文件