求一个能自动打验证码的软件 要能用的 不要病毒_百度知道你的位置:
几个验证码识别插件
20:07:21 |
来源: 按键精灵资源站
原文作者:
原文地址:
识别验证码主要有两个难点,第一就是把前景(字符)从背景分离出来,第二就是把单个字符分割出来,如果能把单个字符分割出来的基本都能识别,不能分割的只要字符没有太大的变型还是能够用一些整体识别的方法来识别。造成第一点的主要有干扰线、背景和字符的颜色太相近等的一些原因,造成第二点的一般都是字符粘连在一起。
这是我第一个识别的验证码,选了个比较简单的入手
识别步骤:
3。把单个字符分割出来(在这里把 0 - 9 取一个样本出来识别用)
4。点阵对比
(1.01 MB, 下载次数: 214)
上面的比较简单,再找个有点粘连的,字符也有轻微倾斜。
识别步骤:
1。也是先灰度处理一下(1 - 9 (没有 0 )每个数字大概取10个出来当样本)
2。把所有样本都在图片上扫描一遍,把相似度高的地方记录下来,同时也把样本代表的数字也记录下来,这里我用 0 表示完全不相似 1 表示完全相似,在这张图片
扫描一遍后,把相似度高于0.8的用白色表示其它的用黑色表示
,只要在白色的地方把刚才记录的数字取出来就可以了
(1.36 MB, 下载次数: 107)
这个验证码要识别不难,在这里每个字符用十几个样本已经可以达到不错的识别率
识别步骤:
1。用中值模糊处理一下杂点
,杂点几乎都处理掉
2。灰度处理
3。阈值化处理
4。把单个字符分割出来
5。找到字符的再小包围矩形,再根据这个矩形的角度矫正一下
6。把每个字符图片缩放成一个尺寸(在里取样本)
7。识别方法直接用点阵相似度对比
(1.75 MB, 下载次数: 168)
一眼看上去一堆的干扰线好像很乱,实际上字符没有倾斜,没有缩放变形,比第二个还要简单
识别步骤:
1。还是灰度一下
(要把字符分割出来几乎是不可能的,反正我没办法用代码分割出来,在这里唯有人工把字符分割出来当样本)
3。把每个样本都在图片上扫描一遍,样本上是白色的地方如果在图片也是白色的就表示这个字符匹配上
(1.01 MB, 下载次数: 112)
跟上面一样的识别方法
(1.16 MB, 下载次数: 76)
识别步骤:
1。常规动作,灰度处理一下
2。还是老样子,阈值化
3。把干扰点去掉
4。把图片分割成四份,第一份是被加(减)数,第二份是运算符号,第三份加(减)数,第四份是等号和问号(这份不要)
5。把上面分割出来的三张图片各自的数字和符号分割出来
6。然后缩放成一个尺寸(数字和符号各自放到一个样本库里)
7。还是用点阵相似度识别
8。再后就是把识别出的数字该加的加,该减的减。
(1.13 MB, 下载次数: 95)
[hr]上面只是简单的介绍一下识别的步骤,回复可以下载和图片,验证码的来源就不多说了
灰度值计算公式,R、G、B是颜色通道(上面使用的是加权的方法):
加权公式:gray = R * 0.299 + G * 0.587 + B * 0.114
平均值公式:gray =( R + G +&&B) / 3
取某通道:gray = G
阈值化公式,T是阈值,这个值一般是自己指定的一个值,也可以用一些算法来取得这个值,例如“Oust&算法(上面使用的是返向阈值化,个人比较习惯黑底白字):
阈值化公式:Thresh = (gray & T) ? 255 : 0
反向阈值化公式:Thresh = (gray & T) ? 0: 255谁能帮我解决尔雅通识课自动挂机啊,自动输验证码,自动下一集那种_百度知道