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支持断点续传的多线程下载示例
Jan 16 Python
python django集成cas验证系统
Jul 14 Python
python函数中return后的语句一定不会执行吗?
Jul 06 Python
python与C互相调用的方法详解
Jul 14 Python
python中(str,list,tuple)基础知识汇总
Feb 20 Python
Python中将两个或多个list合成一个list的方法小结
May 12 Python
通过python改变图片特定区域的颜色详解
Jul 15 Python
使用pyecharts生成Echarts网页的实例
Aug 12 Python
安装PyInstaller失败问题解决
Dec 14 Python
python 3.8.3 安装配置图文教程
May 21 Python
Django实现任意文件上传(最简单的方法)
Jun 03 Python
使用Python实现音频双通道分离
Dec 25 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个人网站架设连环讲(一)
2006/10/09 PHP
PHPEXCEL 使用小记
2013/01/06 PHP
php session_start()出错原因分析及解决方法
2013/10/28 PHP
yii数据库的查询方法
2015/12/28 PHP
PHP实现图的邻接矩阵表示及几种简单遍历算法分析
2017/11/24 PHP
javascript 面向对象 function类
2010/05/13 Javascript
解决jquery的datepicker的本地化以及Today问题
2012/05/23 Javascript
基于jQuery实现的百度导航li拖放排列效果,即时更新数据库
2012/07/31 Javascript
详解jquery uploadify 上传文件
2013/11/09 Javascript
js清理Word格式示例代码
2014/02/13 Javascript
基于Vue实现页面切换左右滑动效果
2020/06/29 Javascript
详解JavaScript中的六种错误类型
2017/09/21 Javascript
webpack4.0+vue2.0利用批处理生成前端单页或多页应用的方法
2019/06/28 Javascript
解决vue中使用proxy配置不同端口和ip接口问题
2019/08/14 Javascript
在layui中layer弹出层点击事件无效的解决方法
2019/09/05 Javascript
如何在node环境实现“get数据解析”代码实例
2020/07/03 Javascript
我所理解的JavaScript中的this指向
2020/09/04 Javascript
Python多线程、异步+多进程爬虫实现代码
2016/02/17 Python
TensorFlow实现模型评估
2018/09/07 Python
pandas dataframe添加表格框线输出的方法
2019/02/08 Python
python实现字符串加密 生成唯一固定长度字符串
2019/03/22 Python
python计算二维矩形IOU实例
2020/01/18 Python
python3判断IP地址的方法
2021/03/04 Python
HTML5中新标签和常用标签详解
2014/03/07 HTML / CSS
马来西亚最大的电器网站:Senheng
2017/10/13 全球购物
MAC Cosmetics官方网站:魅可专业艺术彩妆
2019/04/10 全球购物
国外的一些J2EE面试题一
2012/10/13 面试题
高三语文教学反思
2014/01/15 职场文书
挖掘机司机岗位职责
2014/02/12 职场文书
考察现实表现材料
2014/05/19 职场文书
践行三严三实心得体会
2014/10/13 职场文书
行政人事专员岗位职责
2015/04/07 职场文书
教师节座谈会主持词
2015/07/03 职场文书
读《茶花女》有感:山茶花的盛开与凋零
2020/01/17 职场文书
Nginx的gzip相关介绍
2022/05/11 Servers
JavaScript架构localStorage特殊场景下二次封装操作
2022/06/21 Javascript