android 字母验证码,一个简单的零基础的机器学习教程之二,字母数字验证码识别...

本帖最后由 打字的小强 于 2020-6-28 17:40 编辑

一.前言

基于前面我发的贴子 一个简单的零基础的机器学习教程,Pytorch搭建Faster R-CNN目标检测平台 ,一个非常震撼的目标检测的例子。上个帖子从环境安装到调试代码再到图片检测视频检测一个详细的教程,今天我来讲一下正真的实战经历吧。完全不需要深度相关的知识。

这个项目就是《Python3 反爬虫原理与绕过实战》里面的项目,GitHub地址:https://github.com/asyncins/captcha_cnn基础环境与我上一个深度学习教程的基础环境一摸一样,拿过来基本不用改就可以用了。书里面的讲了一下原理,还不错,通俗易懂,但是没讲太深,意犹未尽,毕竟是一本爬虫书啊

整个项目训练速度非常快,因为专门为验证码检测设计的,自己的显卡还不错,每次训练就几分钟的样子,测试了一下,最终我把原项目的单次训练的样本数量调大了8倍,原先是32的,4分钟不到3w张图片。setting.py里面我看到,检测的内容都限制了,26个字母和10个数字,所有的图片格式大小都规定了。

55fd2b2273b5a8b4531f72773c469d6e.gif

QQ截图20200628112815.png (69.11 KB, 下载次数: 0)

2020-6-28 14:14 上传

二.开始训练

运行环境看我的上一个深度学习的教程   一个简单的零基础的机器学习教程,Pytorch搭建Faster R-CNN目标检测平台

完全一样。

下载代码和相关资源

下载GitHub代码,下载图片数据集。相关资源最后会放出来,原项目的代码导入图片目录的时候有点问题。貌似原项目是在ubuntu系统上面运行的,我改了一下setting里面的参数如下图。

把下载images的图片放到项目目录下面如图,images这个文件夹我会单独拎出来,因为比较大,images里面的数据集图片的文件名就是图片正确的识别结果,要做自己的数据集要注意哦,train文件夹下面的图片就是我们训练时候的图片集,test文件夹下面的图片是用来训练时验证我们的训练效果的图片集,predict文件夹下面的图片就是我们训练好之后要预测的图片集。

55fd2b2273b5a8b4531f72773c469d6e.gif

QQ截图20200628114152.png (23.04 KB, 下载次数: 0)

2020-6-28 11:41 上传

接下来打开setting.py根据自己显卡的算力设置BATCH_SIZE,我的显卡是2070S,最终设置成了256,CPU和GPU都快到100%了。然后打开train.py运行等待就行了,训练完成会生成result.pkl文件。

55fd2b2273b5a8b4531f72773c469d6e.gif

QQ截图20200628114413.png (70.77 KB, 下载次数: 0)

2020-6-28 11:44 上传

验证的代码在verifies.py里面,直接运行,它会先载入模型,遍历验证集图片正确的验证码与预测结果对比,算出成功比例。

55fd2b2273b5a8b4531f72773c469d6e.gif

QQ截图20200628104808.png (47.26 KB, 下载次数: 0)

2020-6-28 10:48 上传

验证码的图片就是下图,26个字母和10个数字的混合,长度固定,6位。有干扰线和干扰点,没有倾斜变形。

55fd2b2273b5a8b4531f72773c469d6e.gif

00IBVU.png (5.41 KB, 下载次数: 0)

2020-6-28 13:53 上传

三.最后说明

这个项目代码量非常的少,文章的篇幅也很短,项目的结构简单可以一步步的详细分析所有代码的用处,特别是model.py里面进行了三次卷积和池化操作。loader.py对图片的灰度化处理和数字化处理。虽然这些东西很抽象,但是只要不要本能的去拒绝它们,还是能够慢慢的理解的。

关注我,给我评分,给我动力继续研究更多有意思的有关python的东西哦。

Github:https://github.com/koala9527/captcha_cnn

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值