如何从图像中删除多余的像素?

时间:2019-06-14 17:23:16

标签: python image python-imaging-library

我正在尝试使用python为网站创建验证码求解器,但是我无法删除多余的像素(那些周围没有其他像素的像素)

我已经设法做到非常接近,几乎删除了每个额外的像素,但是我的代码只能工作一次,然后它就不会对图像产生任何影响。

try:
    from PIL import Image
except ImportError:
    import Image
import pytesseract
from operator import itemgetter
import PIL.ImageOps


for x in range(im2.size[1]):
  for y in range(im2.size[0]):
    pix = im2.getpixel((y,x))
    im2.putpixel((0,21), (0,0,0))
    if pix < 180:
        try:
            left = im2.getpixel((y-1,x))
        except IndexError:
            left = 255
            pass
        try:
            right = im2.getpixel((y+1,x))
        except IndexError:
            right = 255
            pass
        try:
            up = im2.getpixel((y,x-1))
        except IndexError:
            up = 255
            pass
        try:
            down = im2.getpixel((y,x+1))
        except IndexError:
            down = 255
            pass
        if (left == 255 and right == 255) or (up == 255 and down == 255):
            im2.putpixel((y,x),(255,255,255))

我想删除侧面或上下都没有其他像素的任何像素。

this is the image i am using to test it

this is it before i ran the code once

0 个答案:

没有答案