图片验证码增强技术(提升验证码识别成功率)(2022)(验证码篇3)

3 篇文章 0 订阅
3 篇文章 0 订阅

上一篇博客直接使用原始图片做验证码识别正确率较低,使用增强技术后能大大提高识别率

对应博客文章:点此跳转,获取该文章的更多信息

黑底填充白底

from PIL import Image
import os


def Convert(filename):
    """
    将图像中白色像素转变为黑色像素
    """
    img = Image.open(os.getcwd()+ "\\"+ filename)
    img = img.convert("RGBA")
    pixdata = img.load()
    for y in range(img.size[1]):
        for x in range(img.size[0]):
            if all(pixdata[x, y][i] > 220 for i in range(4)):
                pixdata[x, y] = 0, 0, 0
    try:
        os.remove("result.png")
    except Exception as e:
        print(e)
    # result.png 黑色填充白底彩色图
    img.save("result.png")
    print("Successfully: " + filename)


if __name__ == "__main__":
    # origin.png 彩色验证码图片
    Convert(r"origin.png")

彩色变黑白二值化增强

from PIL import Image
from PIL import ImageEnhance


##增强图形识别率的处理
# origin.png 彩色验证码图片
i2=Image.open(r"origin.png")
imgry = i2.convert('L')   #图像加强,二值化,PIL中有九种不同模式。分别为1,L,P,RGB,RGBA,CMYK,YCbCr,I,F。L为灰度图像
sharpness =ImageEnhance.Contrast(imgry)#对比度增强
i3 = sharpness.enhance(3.0)  #3.0为图像的饱和度
try:
    os.remove("result.png")
except Exception as e:
    print(e)
# result.png 黑白灰度图
i3.save("result.png")
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值