用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 cookbook(数据结构与算法)实现优先级队列的方法示例

本文实例讲述了Python实现优先级队列的方法。分享给大家供大家参考,具体如下: 问题:要实现一个队列,它能够以给定的优先级对元素排序,且每次pop操作时都会返回优先级最高的那个元素;...

python读取图片的方式,以及将图片以三维数组的形式输出方法

python读取图片的方式,以及将图片以三维数组的形式输出方法

近期做个小项目需要用到python读取图片,自己整理了一下两种读取图片的方式,其中一种用到了TensorFlow,(TensorFlow是基于python3 的)。代码及运行结果如下所示...

python实现桌面壁纸切换功能

本文实例为大家分享了python实现桌面壁纸切换功能的具体实现方法,供大家参考,具体内容如下 大体分为两个部分 一、利用爬虫爬取壁纸 第一部分爬取图片url地址并且下载至本地 爬虫针对...

在Python中操作文件之seek()方法的使用教程

 seek()方法在偏移设定该文件的当前位置。参数是可选的,默认为0,这意味着绝对的文件定位,它的值如果是1,这意味着寻求相对于当前位置,2表示相对于文件的末尾。 没有返回值。...

Python实现获取本地及远程图片大小的方法示例

Python实现获取本地及远程图片大小的方法示例

本文实例讲述了Python实现获取本地及远程图片大小的方法。分享给大家供大家参考,具体如下: 了解过Pillow的都知道,Pillow是一个非常强大的图片处理器,这篇文章主要记录一下Pi...