本文主要是介绍【python 图像识别】图像识别从菜鸟走向大神系列1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。人工智能教程
一、安装配置(python2.7)
1.pip install pytesseract
2、pip install pyocr
3、pip install pillow
4、安装tesseract-ocr:http://jaist.dl.sourceforge.net/project/tesseract-ocr-alt/tesseract-ocr-setup-3.02.02.exe,安装在C:\Program Files\下
5、找到 pytesseract.py 更改 tesseract_cmd = 'C:/Program Files/Tesseract-OCR/tesseract.exe'
二、识别英文
三、识别验证码
二、实现源代码
1、识别英文
#-*-coding:utf-8-*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')import time
time1 = time.time()
from PIL import Image
import pytesseractimage = Image.open(r'D:\Program Files\Python27\Lib\site-packages\pytesseract\test.png')
code = pytesseract.image_to_string(image)
print(code)
2、识别验证码
#-*-coding:utf-8-*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')import time
time1 = time.time()
from PIL import Image
import pytesseract###########二值化算法
def binarizing(img,threshold):pixdata = img.load()w, h = img.sizefor y in range(h):for x in range(w):if pixdata[x, y] < threshold:pixdata[x, y] = 0else:pixdata[x, y] = 255return img
image = Image.open(r'E:\taqu\12.png')###########去除干扰线算法
def depoint(img): #input: gray imagepixdata = img.load()w,h = img.sizefor y in range(1,h-1):for x in range(1,w-1):count = 0if pixdata[x,y-1] > 245:count = count + 1if pixdata[x,y+1] > 245:count = count + 1if pixdata[x-1,y] > 245:count = count + 1if pixdata[x+1,y] > 245:count = count + 1if count > 2:pixdata[x,y] = 255return img# 转化为灰度图
img = image.convert('L')
# 把图片变成二值图像。
img1=binarizing(img,190)
# img2=depoint(img1)
img1.show()
code = pytesseract.image_to_string(img1)
print "识别该验证码是:" + str(code)
这篇关于【python 图像识别】图像识别从菜鸟走向大神系列1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!