用Python进行简单图像识别(验证码)

yipeiwu_com6年前Python基础

这是一个最简单的图像识别,将图片加载后直接利用Python的一个识别引擎进行识别

将图片中的数字通过 pytesseract.image_to_string(image)识别后将结果存入到本地的txt文件中

 #-*-encoding:utf-8-*-
 import pytesseract
 from PIL import Image
 
 class GetImageDate(object):
 def m(self):
  image = Image.open(u"C:\\a.png")
  text = pytesseract.image_to_string(image)
  return text
 
 def SaveResultToDocument(self):
  text = self.m()
  f = open(u"C:\\Verification.txt","w")
  print text
  f.write(str(text))
  f.close()
 
 g = GetImageDate()
 g.SaveResultToDocument()

具体想要实现上面的代码需要安装两个包和一个引擎
在安装之前需要先安装好Python,pip并配置好环境变量

所有包的安装都是通过pip来安装的,需要在windows PowerShell中进行,并且是在 C:\Python27\Scripts目录下

1.第一个包: pytesseract

pip install pytesseract

若是出现安装错误的情况,安装不了的时候,可以将命令改为 pip.exe install pytesseract来安装
若是将pip修改为pip.exe安装成功后,那么下文的所有pip都需要改为pip.exe

2.第二个包:PIL安装

pip install PIL

若是失败了可以如下修改 pip install PILLOW

3.安装识别引擎tesseract-ocr

下载 tesseract-ocr,进行默认安装
安装完成后需要配置环境变量,在系统变量path后增加 tesseract-ocr的安装地址C:\Program Files (x86)\Tesseract-OCR;
一切都安装完成后运行上述代码,会发现报错,此时需要

至此结束。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python赋值操作方法分享

一、序列赋值: x,y,z = 1,2,3 我们可以看作:x = 1,y = 2,z = 3 二、链接赋值: x = y = 1print id(x)print id(y) 大家可以看下...

tensorflow训练中出现nan问题的解决

深度学习中对于网络的训练是参数更新的过程,需要注意一种情况就是输入数据未做归一化时,如果前向传播结果已经是[0,0,0,1,0,0,0,0]这种形式,而真实结果是[1,0,0,0,0,0...

python3中numpy函数tile的用法详解

python3中numpy函数tile的用法详解

tile函数位于python模块 numpy.lib.shape_base中,他的功能是重复某个数组。比如tile(A,n),功能是将数组A重复n次,构成一个新的数组,我们还是使用具体的...

python实现寻找最长回文子序列的方法

本文实例为大家分享了python实现寻找最长回文子序列,这一类的问题可以使用动态规划的方法去做,我之前应该有几篇博文都是关于回文序列的求解的,正好有可以复用的代码就懒得再用别的方法写了,...

Python cookbook(数据结构与算法)实现查找两个字典相同点的方法

Python cookbook(数据结构与算法)实现查找两个字典相同点的方法

本文实例讲述了Python实现查找两个字典相同点的方法。分享给大家供大家参考,具体如下: 问题:寻找两个字典中间相同的地方(相同的键、相同的值等) 解决方案:通过keys()或者item...