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 判断是否为正小数和正整数的实例
Jul 23 Python
python smtplib模块自动收发邮件功能(二)
May 22 Python
基于python中theano库的线性回归
Aug 31 Python
在pandas多重索引multiIndex中选定指定索引的行方法
Nov 16 Python
PyCharm配置mongo插件的方法
Nov 30 Python
django 中QuerySet特性功能详解
Jul 25 Python
Python 读取用户指令和格式化打印实现解析
Sep 02 Python
django框架中间件原理与用法详解
Dec 10 Python
深入浅析Python代码规范性检测
Jul 31 Python
python 如何实现遗传算法
Sep 22 Python
Python 测试框架unittest和pytest的优劣
Sep 26 Python
python之json文件转xml文件案例讲解
Aug 07 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
如何把PHP转成EXE文件
2006/10/09 PHP
PHP生成静态页面详解
2006/11/19 PHP
PHP高级OOP技术演示
2009/08/27 PHP
PHP全局变量与超级全局变量区别分析
2016/04/01 PHP
解决微信授权回调页面域名只能设置一个的问题
2016/12/11 PHP
一个js封装的不错的选项卡效果代码
2008/02/15 Javascript
Prototype 学习 Prototype对象
2009/07/12 Javascript
Bootstrap中CSS的使用方法
2016/02/17 Javascript
js ajaxfileupload.js上传报错的解决方法
2016/05/05 Javascript
Angular 输入框实现自定义验证功能
2017/02/19 Javascript
JS实现的Unicode编码转换操作示例
2017/04/28 Javascript
简单的网页广告特效实例
2017/08/19 Javascript
vue-自定义组件传值的实例讲解
2018/09/18 Javascript
JavaScript实现图片的放大缩小及拖拽功能示例
2019/05/14 Javascript
在vue中使用jsx语法的使用方法
2019/09/30 Javascript
微信小程序缓存支持二次开发封装实现解析
2019/12/16 Javascript
JS实现电商商品展示放大镜特效
2020/01/07 Javascript
[04:40]2016个国际邀请赛中国区预选赛场地——华西村观战指南
2016/06/25 DOTA
python实现批量解析邮件并下载附件
2018/06/19 Python
使用pandas把某一列的字符值转换为数字的实例
2019/01/29 Python
解决python3中的requests解析中文页面出现乱码问题
2019/04/19 Python
Python占用的内存优化教程
2019/07/28 Python
python命名空间(namespace)简单介绍
2019/08/10 Python
Python自动化测试笔试面试题精选
2020/03/12 Python
Blancsom美国/加拿大:服装和生活用品供应商
2018/07/27 全球购物
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
中专生求职自荐信范文
2013/12/22 职场文书
国际商务专业职业生涯规划书范文
2014/01/17 职场文书
家长通知书教师评语
2014/04/17 职场文书
医生个人自我剖析材料
2014/10/08 职场文书
应急管理工作总结2015
2015/05/04 职场文书
想创业成功,需要掌握这些要点
2019/12/06 职场文书
nginx简单配置多个server的方法
2021/03/31 Servers
Win11 Build 21996.1 Dev版怎么样? win11系统截图欣赏
2021/11/21 数码科技
css布局巧妙技巧之css三角示例的运用
2022/03/16 HTML / CSS
volatile保证可见性及重排序方法
2022/08/05 Java/Android