(2017.4.4更新) 利用神经网络进行字符型图片验证码识别
来源:互联网 发布:ps3软件下载 编辑:程序博客网 时间:2024/05/20 09:10
(2017.4.4更新) 利用神经网络进行字符型图片验证码识别
(2017.4.4)
深度学习这么火,想跟个风入个门,理论看了一些,想找点东西练练手,至少先做个hello-world出来嘛
看到MNIST的数字识别,又看到学校教务的渣渣验证码,干脆,就用这个搭第一个神经网络吧。
本项目代码已上传至github:https://github.com/NBGroupp/swjtu_verif
预处理
首先从教务爬了5w个图
教务网验证码大概长这样:
利用和
http://www.cnblogs.com/beer/p/5672678.html
相同的方法进行处理
分割
分割大概遇到几类问题:
1.字符位置不固定
2.字符宽度不固定
3.降噪后些许字符有粘连
采用下面的算法解决问题:
1.首先统计每一行字符的黑色像素点个数和每一列的黑色像素点个数
2.对于行需求取2个边界,像素点个数pixel<2即为边界,对于列需求取5个边界则需要考虑以下情况:
以pixel>0定义字符最左边界,设为front;
i自front向右移动,若遇到pixel=0且1<(i-front)<17,则back=i;
若i-front>=17,则m=min(pixel(i:i-15)),取back等于pixel=m的最右一列
若i-front<17且已到列最右侧,则back=列的最大值
若分割数!=4,则跳过本图进行下次分割
分割后的图片均放在背景为20*20的白色背景上。放置位置在左上方。
训练集和测试集的制作
人工看有点烦。。。就用Google的pytessor把爬下来的验证码重命名,成功分割的图片就以图片名字的四个字母命名。放到list中,随机抽取10000作为测试集,剩余作为训练集。
网络的搭建(下次更)
0 0
- (2017.4.4更新) 利用神经网络进行字符型图片验证码识别
- 利用python pytesseract进行OCR(验证码识别)
- 利用Python进行简单的图像识别(验证码)
- 利用tesseract-ocr进行验证码识别
- 如何利用离散Hopfield神经网络进行数字识别(1)
- 如何利用离散Hopfield神经网络进行数字识别(2)
- Opencv利用神经网络进行车牌识别(c++)
- 使用CNN神经网络进行图片识别分类
- 验证码识别与神经网络
- Matlab神经网络验证码识别
- Matlab神经网络验证码识别
- BP神经网络验证码识别
- 关于利用python进行验证码识别的一些设想
- 利用PIL对简单的验证码进行识别
- [机器学习]利用KNN算法进行验证码识别
- 利用Python进行简单的验证码识别步骤
- java 利用Tesseract-OCR识别图片验证码
- 利用Hog 特征进行手写字符识别
- 利用图片局部解析技术,加载高清图片,拒绝压缩!!!
- #bzoj2404#最长链(树的直径/树形DP)
- 【剑指offer】把数组排成最小的数
- iOS 项目的本地化处理(多语言开发)
- android 本地化[ICU4J Android 框架 API] 一
- (2017.4.4更新) 利用神经网络进行字符型图片验证码识别
- ogg各场景维护
- 关系模型
- 小明系列问题——小明序列
- Duplicate AssemblyVersion Attribute
- gdb安装、vim配置
- python学习笔记
- H
- Nth Digit