阅读背景:

验证码识别(最简单之印刷体数字)

来源:互联网 
# -*- coding: utf-8 -*-  
import numpy
from PIL import Image

image = Image.open("5.gif")

heigh = image.size[0]
weigh = image.size[1]

checkbox = ([-1,0],[0,1],[1,0],[0,-1])

#降噪除去一个点
def clearpoint(im):
   for i in range(heigh):
       for j in range(weigh):
            if im.getpixel((i,j))==0:
                 result = 0
                 for count in range(4):
                     if im.getpixel((i+checkbox[count][0],j+checkbox[count][1])):result+=1
                 if result == 4:
                     im.putpixel((i,j),255)
   return im


box = numpy.array([0,0,13,20])
imagenumsit = []   #chun cun 5 ge shuzi
imagenumbit = []
imagedoublevalue = image.convert("1")
imagedoublevalue = clearpoint(imagedoublevalue)
resultnum = 0
for i in range(5):
    imagenum = imagedoublevalue.crop(box)
    imagenumsit.append(imagenum)
    box[0]=box[2]
    box[2]+=9

for i in range(5):
    w = imagenumsit[i].size[0]
    h = imagenumsit[i].size[1]
    vector = [0]*w
    imagenumbitsingle = numpy.tile(vector,(h,1))
    for x in range(h):
       for y in range(w):
           if imagenumsit[i].getpixel((y,x)) == 0:imagenumbitsingle[x][y]=1
    imagenumbit.append(imagenumbitsingle)

imagenumsit[1].show()
print imagenumbit[1]
# -*- coding: utf-8 -*-  
import numpy
from



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: