Python2实现的图片文本识别功能详解


Posted in Python onJuly 11, 2018

本文实例讲述了Python2实现的图片文本识别功能。分享给大家供大家参考,具体如下:

这里需要用到python的几个库,分别是pytesser,以及pytesser的依赖库PIL。python的版本建议用2.7或者2.7一下的都行,不建议用python3以上的,因为python3不向下兼容,所以有很多python2的东西它不支持

pytesser下载的话,我直接在pycharm里面下全是失败,用DOS的命令行下也是失败,所以还是自己直接去google下吧
地址:http://code.google.com/p/pytesser/downloads/list

如果打不开上面的网址的话可以从我的资源里面下载,点击此处本站下载

下载好了之后安装,步骤:

1.  解压pytesser ,将解压后的文件复制到Python安装目录的Lib\site-packages下,直接使用,比如我的安装目录是:C:\Python27\Lib\site-packages

2. 这里我建立好的pytesser目录为C:\Python27\Lib\site-packages\pytesser\

3. 接下来打开pytesser文件夹,将pytesser.py修改成__init__.py,然后打开py文件进行修改:
①. import Image 改为: from PIL import Image
②. tesseract_exe_name = 'tesseract' —> tesseract_exe_name = 'C:\\Python27\\Lib\\site-packges\\pytesser\\tesseract,注意双斜杠,否则可能因为转义字符报错

接下来就是下载PIL了。这个我在pycharm里面也是下载失败,提示没有找到适合python版本的PIL。
可以在DOS命令行下用命令下:pip install Pillow 这里要注意的是如果要直接在DOS下用pip命令的话要先把pip的路径加到环境变量path里面去,例如我的pip路径:“D:\python2.7.13\Scripts\

注:小编尝试后发现PIL安装很麻烦,推荐下载exe直接安装

具体可至PIL官网查找对应安装版本:http://pythonware.com/products/pil/

全部下载完之后就可以开始拿图片测试了。这里我们先拿上面下载的pytesser压缩包里面给的测试图片来测试
代码如下:

from pytesser import *
img=Image.open("D:\\fnord.tif") 
#我这里是直接把图片复制在d盘下。可以随意更改。如果是d盘下的XX文件夹,路径就是:d:\XX\\fnord.tif
#一些对python不熟悉的小伙伴要注意的是这个路径只有最后一个斜杠要改成双斜杠,前面的都是单斜杠,如果不是这样的话在pycharm里面就会报一些看不懂的错误,百度到死都不知道怎么解决。
print image_to_string(img)

或者可以写成:

print image_file_to_string("D:\\fnord.tif")

这里需要注意一下,直接运行上面的代码的话可能会报一个找不到Image类的错误,具体我也不是很清楚,可能是因为pytesser只支持PIL的Image类吧,因此我们还要改一个东西,就是上面步骤3中pytesser包里面__init__.py 文件的第一行:import Image改成from PIL import Image。如图:

 Python2实现的图片文本识别功能详解

这时候就可以看到输出结果:

 Python2实现的图片文本识别功能详解

大功告成。

最后说一下这个方法的一些缺点,就是识别率不高,要图片里面的文字很清晰才可以识别出来,要想提高识别率的话还要对图片进行一些操作,这里就不详细说啦,请大家自行百度。

更多关于Python相关内容可查看本站专题:《Python数学运算技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中实现从目录中过滤出指定文件类型的文件
Feb 02 Python
基于python3 OpenCV3实现静态图片人脸识别
May 25 Python
在PyCharm中三步完成PyPy解释器的配置的方法
Oct 29 Python
详解如何为eclipse安装合适版本的python插件pydev
Nov 04 Python
python调用百度地图WEB服务API获取地点对应坐标值
Jan 16 Python
Python使用修饰器进行异常日志记录操作示例
Mar 19 Python
python 实现屏幕录制示例
Dec 23 Python
python-OpenCV 实现将数组转换成灰度图和彩图
Jan 09 Python
Python实现不规则图形填充的思路
Feb 02 Python
python 实现读取csv数据,分类求和 再写进 csv
May 18 Python
Python3爬虫中Selenium的用法详解
Jul 10 Python
Django如何实现密码错误报错提醒
Sep 04 Python
利用Python进行数据可视化常见的9种方法!超实用!
Jul 11 #Python
基于数据归一化以及Python实现方式
Jul 11 #Python
numpy.std() 计算矩阵标准差的方法
Jul 11 #Python
使用sklearn进行对数据标准化、归一化以及将数据还原的方法
Jul 11 #Python
使用sklearn之LabelEncoder将Label标准化的方法
Jul 11 #Python
Python实现识别图片内容的方法分析
Jul 11 #Python
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
Jul 11 #Python
You might like
文件上传类
2006/10/09 PHP
PHP VS ASP
2006/10/09 PHP
PHP array_push 数组函数
2009/12/26 PHP
Zend Framework+smarty用法实例详解
2016/03/19 PHP
中高级PHP程序员应该掌握哪些技术?
2016/09/23 PHP
ThinkPHP框架分布式数据库连接方法详解
2017/03/14 PHP
PHP 二维关联数组根据其中一个字段排序(推荐)
2017/04/04 PHP
php判断某个方法是否存在函数function_exists (),method_exists()与is_callable()区别与用法解析
2020/04/20 PHP
XML+XSL 与 HTML 两种方案的结合
2007/04/22 Javascript
jQuery DIV弹出效果实现代码
2009/07/03 Javascript
自动最大化窗口的Javascript代码
2013/05/22 Javascript
原生JS可拖动弹窗效果实例代码
2013/11/09 Javascript
通过js为元素添加多项样式,浏览器全兼容写法
2014/08/30 Javascript
javascript实现网页字符定位的方法
2015/07/14 Javascript
javascript基于prototype实现类似OOP继承的方法
2015/12/16 Javascript
JS面向对象编程详解
2016/03/06 Javascript
简单实现IONIC购物车功能
2017/01/10 Javascript
Vue制作Todo List网页
2017/04/26 Javascript
微信小程序表单弹窗实例
2018/07/19 Javascript
JavaScript简单实现关键字文本搜索高亮显示功能示例
2018/07/25 Javascript
Node.js实现简单的爬取的示例代码
2019/06/25 Javascript
JavaScript鼠标悬停事件用法解析
2020/05/15 Javascript
用Pytorch训练CNN(数据集MNIST,使用GPU的方法)
2019/08/19 Python
python实现的接收邮件功能示例【基于网易POP3服务器】
2019/09/11 Python
Python3读写Excel文件(使用xlrd,xlsxwriter,openpyxl3种方式读写实例与优劣)
2020/02/13 Python
一款纯css3实现的动画加载导航
2014/10/08 HTML / CSS
CSS3 实现时间轴动画
2020/11/25 HTML / CSS
html5图片上传预览示例分享
2014/04/14 HTML / CSS
详解淘宝H5 sign加密算法
2020/08/25 HTML / CSS
新加坡网上化妆品店:Best Buy World
2018/05/18 全球购物
strstr()的简单实现
2013/09/26 面试题
优纳科技软件测试面试题
2012/05/15 面试题
电气工程自动化求职信
2014/03/14 职场文书
中秋节寄语2015
2015/03/24 职场文书
Python中的min及返回最小值索引的操作
2021/05/10 Python
Oracle安装TNS_ADMIN环境变量设置参考
2021/11/01 Oracle