SCU captcha recongnition based on Pytorch
Project description
SCU_Captcha
声明
- 本项目只适用于编程学习用途,请在下载后24小时内删除!
- 不得随意传播本项目至任何公开场合(包括但不限于QQ群、微信群、贴吧论坛等)
- 因用户使用或修改项目源码而产生的一切责任与本人无关,本人不负任何连带责任
- 若不同意以上使用条例,请停止clone本项目并不得通过任何途径使用本项目
- 本项目源码以及条例解释权归本人所有
简介
针对于Sichuan University的JWC验证码特化训练的轻量级深度学习模型,基于Pytorch,模型为CNN(卷积神经网络)。
- 用于快速识别此类验证码
- 模型大小20M左右,有更精简的可能,不过没有时间进一步优化。
准确率
训练集 | 测试集 | 实际使用于JWC |
---|---|---|
98.915001% | 98.715001% | 大约90% |
训练过程中一直在修改超参数,所以错误率有较多波动,实际使用时JWC还是会有更大的误差,毕竟数据集不完全一致,但是通过多次重复足够使用了。
-
训练集8万个,测试集2万个,根据JWC网站的统计,只包含如下字符:
2345678abcdefgmnpwxy
,共20个字符随机排列组合生成的4位验证码。 -
数据集采用谷歌的Kaptcha生成。
-
实际使用时魔改了此Github仓库的代码用于渲染生成:
因为魔改实在过于丑陋,就不放本人的源代码在这里了。
-
此处提供1万数据量的数据集,有需要可以取用,后续有需要可以提供10万的数据集到网盘:
使用方法
安装
- 本项目基于Pytorch,所以使用前需要安装Pytorch,所以如果没安装过Pytorch,你还需要大约
1GB
的空间安装Pytorch,具体安装请参见Pytorch官网 - 当拥有pytorch环境后,安装就变得极为简单,通过如下代码即可安装:
pip install scu_captcha
使用
-
随后就可以通过使用如下代码导入本包的两个组件
from scu_captcha import imgLoader,Predict
导入后,即可使用这两个函数进行验证码识别。
-
对于一张图片,
imgLoader
提供两种方式进行图片加载,分别是通过相对路径导入或二进制图片文件直接导入,然后将得到的对象输入Predict
函数即可返回对应字符串:# 直接使用二进制方式预测 session = requests.session() # 使用网络请求库 # 通过网络请求获得验证码二进制图像 byte_Captcha = session.get(url=captcha_url, headers=header).content img = imgLoader(byte_Captcha) # 导入二进制图片 res = Predict(img) # 进行预测,并输出预测的str到res对象
# 使用相对路径导入图片预测 # 此处为输出到图片,如果图片本身就存在,则无需此步骤 with open("captcha.jpg", "wb") as f: f.write(byte_Captcha) # 根据相对路径读入文件 img = imgLoader("captcha.jpg") res = Predict(img) # 进行预测,并输出预测的str到res对象
具体用法也可参见TEST.py。
结语
- 才疏学浅,模型用得不好还请您指正
- 如果觉得有用(比如计网课设,爬虫,抢课脚本)等等用到了本模型,还请关照一下给个star哦~
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
scu_captcha-0.0.5.tar.gz
(11.1 MB
view hashes)
Built Distribution
Close
Hashes for scu_captcha-0.0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c210e54a4529684f8fb0afb259cb2cb821304d9b8f2ae9e9742ec6d9b0997b60 |
|
MD5 | 9c4afa23e51b024a41c430de5c2ae29d |
|
BLAKE2b-256 | 0790fd1800311b698ae2d1e830490972b332277493c5994cd25d9d5cdc68664a |