没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
用深度学习进行验证码识别进度汇报
一、调研评估
首先,经过调研和实验,我认为用深度学习进行验证码识别是行的通的。原因如下:
1.cnn 当初出现就是为了处理图片,网上有很多用 cnn 进行图片分类的例子,更有很多
进行验证码识别的例子。
2.实验过程:
数据量:1900 效果:偶尔能对几个字母,效果很差
数据量:4200 效果:基本每个验证码都能对几个字母,但是少有全对的
数据量:7650 效果:基本每个验证码都能对较多字母,有少量完全正确的
另外,上述实验在训练集上效果都很好,也证明了模型没有问题
追加:
后来采用了 rnn 进行训练,效果很好,能达到至少 70%准确率。
二、总结与改进建议
这是一个可行的方法,但是实践过程很艰难,困难有:
1. 机器性能太低,刚开始进行实验验证想法的时候耗费很多时间
2. 准备数据集,前期主要用人工标注,后来用若快标注,但是若快准确率很低,再加
上验证码重复率很高,所以用了大量的时间标注验证码,总结下来,转到用深度学习进行验
证码识别方向两周多时间,大部分时间都在标注筛选验证码。
改进建议:
1. 准备更多的验证码,没有数据再好的模型也没用,深度学习都是在大数据基础上的
研究。
2. 检查原来标注的验证码,修改标注错误的验证码,因为我们的学习只能是无限接近
训练集,如果训练集都是错的,那预测就不可能对。
3. 建议去除一些模糊不清的验证码,我认为这些验证码对建立模型没有帮助,反而会
影响建立的模型。
三、环境搭建
这个验证码识别的方案和代码,是在 https://github.com/ypwhs/captcha_break 这个项目
的基础上改出来的,其网址有关于代码流程的详细介绍,写的较为清晰。
Windows 环境搭建:
代码基于 Keras 库运行的,关于 Keras 的安装见其官网:
http://keras-cn.readthedocs.io/en/latest/for_beginners/keras_windows/同时也有 linux 环
境安装。同时有详细的教程文档,另外就是代码采用 opencv 进行图片读入写出操作,你也能
采用其他的库如 pillow 进行图片读入和写出操作,那就不用安装 opencv 如果你要用 opencv,
安装命令为:
Pip install opencv_python-3.3.0-cp35-cp35m-win_amd64.whl
关于 opencv 的使用建议看这个官方文档的翻译:OpenCV-Python-Toturial-中文版.pdf,简介
洋葱庄
- 粉丝: 19
- 资源: 311
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0