python简单验证码识别

利用SVM向量机进行4位数字验证码识别

       主要是思路和步骤如下:

一,素材收集

检查环境是否包含有相应的库:

1.在cmd中,通过 pip list命令查看安装的库

2.再使用pip installRequests 安装Requests库

3.再次使用pip list 命令


4.利用python获取验证码资源

编写代码:_DownloadPic.py

 

#!/usr/bin/nev python3
#利用python从站点下载验证码图片

import requests

## 1.在 http://www.xxx.com
#  获取验证码URL
def Downloads_Pic(strPath, strName):
    #设置url
    url = 'http://www.xxx.com'

    #以二进制方式发送Get请求,
    #将stream = True,
    #数据读取完成前不要断开链接
    rReq = requests.get(url, stream = True)

    #尝试保存图片
    with open(strPath + strName + '.png', 'wb') as fpPic:
        #循环读取1024Byte到byChunk中,读完则跳出
        for byChunk in rReq.iter_content(chunk_size = 1024):
            if byChunk:
                fpPic.write(byChunk)
                fpPic.flush()
        fpPic.close()

for i in range(1, 10 + 1):
    strFileName = "%03d" % i
    Downloads_Pic('D:/1/', strFileName)

二,素材处理

1.二值化处理,增加对比度,锐化,增加亮度,滤镜,转为黑白

2.去除噪点

3.切割图片

编写代码:_PicDealWith.py

 

#!/usr/bin/env python3
import os
import os.path
from PIL import Image, ImageEnhance, ImageFilter
import random

#二值化处理
#strImgPath 图片路径
def BinaryzationImg(strImgPath):
    #打开图片
    imgOriImg = Image.open(strImgPath)

    #增加对比度
    pocEnhance = ImageEnhance.Contrast(imgOriImg)
    #增加255%对比度
    imgOriImg = pocEnhance.enhance(2.55)

    #锐化
    pocEnhance = ImageEnhance.Sharpness(imgOriImg)
    #锐化200
  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值