1、系统环境
- OS X 10.7
- MacBook Pro(13英寸,2012年初期)
- Python 2.7
2、需要软件包
a、需要安装PIL以及pytesseract库
Python-tesseract是一个基于google's Tesseract-OCR的独立封装包;
Python-tesseract功能是识别图片文件中文字,并作为返回参数返回识别结果;
Python-tesseract默认支持tiff、bmp格式图片,只有在安装PIL之后,才能支持jpeg、gif、png等其他图片格式;
Python-tesseract支持python2.5及更高版本;
PIL[Python Imaging Library]来支持更多的图片格式;
b、需要安装google tesseract-ocr
执行命令行 tesseract.exe 1.png output -l eng ,可以识别1.png中文字,并把识别结果输出到output.txt中;
Pytesseract对上述过程进行了二次封装,自动调用tesseract.exe,并读取output.txt文件的内容,作为函数的返回值进行返回。
3、程序
import pytesseract
from PIL import Image
image = Image.open('./0.png')
code = pytesseract.image_to_string(image)
print (code)
4、PLI安装
mac安装PIL有点麻烦,此处不再详叙。参见我的其他博客内容!
5、安装google tesseract-ocr
准备工作1
tips:以下依赖文件,可进入http://ftpmirror.gnu.org/中找到对应的文件进行下载,推荐每个包看日期下载最新版本,以下为本文下载的安装包。
libtool-2.4.6.tar.gz
autoconf-latest.tar.gz
automake-1.15.tar.gz
jpegsrc.v9b.tar.gz
以上必需安装大礼包可上百度云盘免费领取,如过期请自行下载,链接: http://pan.baidu.com/s/1i56i5e9 密码: 7rhq
安装步骤1
以automake-1.15.tar.gz为例,请依次顺序安装。
安装步骤1一般不会出现什么问题,轻松安装。
准备工作2
tips:以下依赖文件,请用brew进行直接下载安装,如果用安装包编译安装的话,可能会出现难以解决的问题。哎,心烧得慌。
brew for mac 的安装方法,在mac命令行控制台执行如下命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
tiff-4.0.6.tar.gz
libpng-1.6.21.tar.gz
leptonica-1.73.tar.gz
tesseract-ocr-3.04.01.zip
安装步骤2
请用brew依次顺序安装,如下:
此过程可能会出现不少问题,心里脆弱的也许会马上崩溃,如同这样:
痛定思痛之后,还是继续解决问题吧,最常见的问题可能是:
不要觉得下载安装看上去好像正常,但是出现error就必须重视看看,大致意思是说创建link的过程中*** is not writable,目录不可写怎么办,改权限,可以直接暴力点上777。就本例所示:
解决该类问题的思路很简单,什么不可写就上777,再按照Error后面紧跟的提示,比如说You can using again using …重试加link即可。 当安装正常,问题全部修复后,运行:
至此,tesseract的安装已完成95%,仅剩最后的语言包配置。仿佛看见胜利的曙光,[愁绪挥不去苦闷快散去]。
安装步骤3
需要在tesseract-ocr下载语言包,因为语言包有几百兆甚至1个G,没必要完全下载。只用下载eng(英语)、chi_sim(中文简体)、chi_tra(中文繁体)。有趣的事情来了,不少github新手,不知道如何在github上下载某个项目里面某个具体的文件。因为github上面只有在项目的主页才有显性的Download Zip按钮,只能一次性下载整个项目。不用担心,一张图让你明白怎么解决整个问题。
然后将下载的语言包导入tessdata文件夹即。可能有人不太明白tessdata文件夹在哪儿,其实不用明白也可以。这里可以假装已经导入,进行测试步骤,运行:
直接导入到对应目录即可。So mission 100% completed.
测试步骤4
本文测试样张为12306验证码接口提供的验证码,下载后用Photoshop裁剪文字部分,如下图示:
运行:
结果差强人意,正确识别出了5个字,剩下的就靠自己的研究了。
安装过程中大写的错误
前文交代过,第二部分如果用安装包编译安装的话,每一步都是正常通过,但tesseract就是没法用。具体表现为:
首先提示,检测不到libjpeg、libpng、libtiff库,可宝宝已经无数次检查安装过。只能重复的进行sudo make uninstall、sudo ./configure && sudo make && sudo make install,以为是版本不兼容,换了好多版本尝试也没结果。
检测不出来不管了,直接测试功能,结果提示
上百度谷歌了一下,找了许多方法,基本上都是说缺少前面的三个包,重新卸载安装,还有的救,结果我经过了一下午数十次重复安装的情况下也没能救的了自己,那就换思路,做学问要一丝不苟,不怕失败。结果用brew弄好了,不错,好的开始,加油明天。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)