Python编程实现的图片识别功能示例


Posted in Python onAugust 03, 2017

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

1. 安装PIL,官方没有WIN64位,Pillow替代

pip install Pillow-2.7.0-cp27-none-win_amd64.whl

2. 安装Pytesser

下载pytesser_v0.0.1.zip,解压后复制进Python27\Lib\site-packges\pytesser路径下,无pytesser则新建

在Python27\Lib\site-packges\pytesser中新建一pytesser.pth文件,内容为pytesser

在pytesser内,修改三点

① pytesser.py修改成__init.py__

② 修改pytesser.py

import Image

 改为

from PIL import Image

tesseract_exe_name = 'tesseract' 改为tesseract_exe_name = 'Python27\\Lib\\site-packges\\pytesser\\tesseract' 注意\转义

③ 安装Tesseract

下载Tesseract OCR engine:http://code.google.com/p/tesseract-ocr/ ,

下载后解压,找到tessdata文件夹,用其替换掉pytesser解压后的tessdata文件夹即可。

不过除了测试用验证码之外,其余的系统验证码的识别率很低。

附测试代码

from pytesser import *
from PIL import Image, ImageEnhance
im = Image.open('D:\Python27\Lib\site-packages\pytesser\phototest.tif')
im2 = Image.open(r'D:\Python27\Lib\site-packages\pytesser\fnord.tif','r')
im3 = Image.open(r'F:\PROJECT\python\code\Study_1\src\20170424\cp.jpg','r') #文件读写模式以防报错
#图片处理1::黑白处理
enhancer = ImageEnhance.Contrast(im3)
image2 = enhancer.enhance(5)
image2.show()
print image_to_string(image2)
#图片处理2: 降噪处理
imgry = im3.convert('L')  #灰度处理
#灰度处理基础上二值化处理
threshold = 140
table = []
for i in range(256):
  if i < threshold:
    table.append(0)
  else:
    table.append(1)
out = imgry.point(table, '1')
out.show()
text = image_to_string(out)
if text.isspace() :
  print "FAILE"
else:
  print text
#print text

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

Python 相关文章推荐
Python警察与小偷的实现之一客户端与服务端通信实例
Oct 09 Python
Python实现数通设备端口使用情况监控实例
Jul 15 Python
python计算auc指标实例
Jul 13 Python
python的paramiko模块实现远程控制和传输示例
Oct 13 Python
Python通过调用mysql存储过程实现更新数据功能示例
Apr 03 Python
python实现随机梯度下降法
Mar 24 Python
对python借助百度云API对评论进行观点抽取的方法详解
Feb 21 Python
Python GUI编程完整示例
Apr 04 Python
我就是这样学习Python中的列表
Jun 02 Python
python在openstreetmap地图上绘制路线图的实现
Jul 11 Python
Tensorflow全局设置可见GPU编号操作
Jun 30 Python
用python爬虫批量下载pdf的实现
Dec 01 Python
详解python实现读取邮件数据并下载附件的实例
Aug 03 #Python
详解 Python中LEGB和闭包及装饰器
Aug 03 #Python
Python 爬虫之超链接 url中含有中文出错及解决办法
Aug 03 #Python
python中MethodType方法介绍与使用示例
Aug 03 #Python
初学python的操作难点总结(新手必看篇)
Aug 03 #Python
python 禁止函数修改列表的实现方法
Aug 03 #Python
详解Python函数可变参数定义及其参数传递方式
Aug 02 #Python
You might like
Zend Framework入门知识点小结
2016/03/19 PHP
Laravel框架查询构造器简单示例
2019/05/08 PHP
加载 Javascript 最佳实践
2011/10/30 Javascript
在表单提交前进行验证的几种方式整理
2013/07/31 Javascript
模拟多级复选框效果的jquery代码
2013/08/13 Javascript
jQuery过滤选择器用法分析
2015/02/10 Javascript
JS模式之简单的订阅者和发布者模式完整实例
2015/06/30 Javascript
Node.js之网络通讯模块实现浅析
2017/04/01 Javascript
老生常谈js中的MVC
2017/07/25 Javascript
Angular4集成ng2-file-upload的上传组件
2018/03/14 Javascript
Vue 框架之键盘事件、健值修饰符、双向数据绑定
2018/11/14 Javascript
layui实现checkbox的目录树tree的例子
2019/09/12 Javascript
JS面向对象之多选框实现
2020/01/17 Javascript
解决vue项目本地启动时无法携带cookie的问题
2021/02/06 Vue.js
布同 统计英文单词的个数的python代码
2011/03/13 Python
python基础教程之数字处理(math)模块详解
2014/03/25 Python
Python基本语法经典教程
2016/03/11 Python
django 常用orm操作详解
2017/09/13 Python
python分析作业提交情况
2017/11/22 Python
python实现二维插值的三维显示
2018/12/17 Python
python topk()函数求最大和最小值实例
2020/04/02 Python
python--shutil移动文件到另一个路径的操作
2020/07/13 Python
python实现二分查找算法
2020/09/18 Python
HTML5中的Scoped属性使用实例
2014/04/23 HTML / CSS
Hotels.com中国区:好订网
2016/08/18 全球购物
Marmot土拨鼠官网:美国专业户外运动品牌
2018/01/11 全球购物
香蕉共和国工厂店:Banana Republic Factory
2018/06/09 全球购物
香奈儿美国官网:CHANEL美国
2020/05/20 全球购物
机械制造专业个人的自我评价
2013/12/28 职场文书
学生会竞选演讲稿学习部
2014/08/25 职场文书
毕业生对母校寄语
2015/02/26 职场文书
如何写一份具有法律效力的借款协议书?
2019/07/02 职场文书
SQL模糊查询报:ORA-00909:参数个数无效问题的解决
2021/06/21 Oracle
在HTML中引入CSS的几种方式介绍
2021/12/06 HTML / CSS
数据分析数据库ClickHouse在大数据领域应用实践
2022/04/03 MySQL
MySQL的prepare使用以及遇到的bug
2022/05/11 MySQL