写在最前面:

这个我打算分几次写,由于我们通过selenium拿到的图片会很模糊,所以使用Tesseract识别之前要对图片先进行处理。

第一步就是二值化,设定阈值,低于阈值全部为白色(置0),其余黑色(置1)。

import pytesseract
from PIL import Image,ImageEnhance
 
def binaryzation(threshold=145):      #降噪,图片二值化
  table = []
  for i in range(256):
    if i < threshold:
      table.append(0)
    else:
      table.append(1)
 
  return table
 
image = Image.open('newcode.jpg')     #打开图片
image = image.convert('L')         #转化为灰度图
image.show()
image = image.point(binaryzation(), '1')  #二值化
image.show()

这是原始图片 :

python验证码图片处理(二值化)

转化为灰度图:

python验证码图片处理(二值化)

二值化:

python验证码图片处理(二值化)

今天先到这儿,我要继续研究啦~

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com