找回密码
 加入
搜索
查看: 60827|回复: 69

[原创] 验证码识别例子(1)背景为图片底纹(2)粘连(3)旋转

 火... [复制链接]
发表于 2010-11-14 17:26:14 | 显示全部楼层 |阅读模式
本帖最后由 阿福 于 2010-11-30 19:23 编辑

(1)背景为图片底纹:这是朋友要求做的,不过发来的原始验证码字母不全,没给我验证码的原始链接,所以识别库做的不是很好,如果能将链接发来,还可以再大幅提高识别率。
所以目前只能识别已提供来的验证码中出现的字母了。
原始验证码:

转换后(转换后过程未保存,如需保存请联系):

所提供的原始验证码:

下载:

使用:验证码图图片存在[朋友请求4]目录.运行后结果在文本文件中。

(2)粘连:用于识别:http://bo.tianxia.taobao.com/checkcode.jpg这个网址的验证码.
原始验证码:

下载:

此类型验证码(注意是此类型,不是指此组验证码,这组验证码只是左右粘连,没有上下波动,字体变化,是此类型验证码中最简单的,所以单就这组验证组另有其他简单的算法处理)识别要求机器配置够好.因为au3不支持真正意义上的多线程,所以这种验证码基本上是AU3能识别的极限了,再高级的就要用支持多线程的其他语言或DLL调用.
1)该验证码由大字符和小字符组成,小字符字库很好取,所以认真做了字库,可以准确识别.
2)大字符因为一个验证码只出现一个,很懒的做字库,就按小字符库的特征来识别,受干扰线的影响,识别效果不好.
3)这种粘连且位置变化的验证码类似QQ验证码,如果再多用几种字库并旋转就和QQ验证码一样难了.此类验证码要用多线程处理(注意是此类,而不是这组验证码,由于这组验证码没有上下波动,实际上有更简单的识别方法,我现在的这个例子,把验证码可能上下波动也考虑到了,你们可以PS试一下把验证码单个或全部上下挪移,一样能识别),用AU3写很不合适.为了能用纯AU3写,我做了伪多线程.
4).机器不好的不用试了,单CPU机器识别一个验证码可能要几分钟,单核的识别一个验证码可能要30秒左右.我的4核机器(相当于8CPU),设成10-20个伪线程,识别一个验证码是3秒左右.
5)设置伪多线程数在生成的ini文件[UserSetup]中,task=4是默认4个伪线程. Per是小字库精度要求,Per2是大字库精度要求,前面说过了大字库没做只取小字库特征,所以per2要设低.
机器不是很好的一定要试的话,task设成1-4为宜
6)使用:验证码图下载到[演示5]目录.结果生成在CheckCode.txt,过程记录在Task.ini

(2)粘连的补充:
1)单只针对这个验证码的识别程序:
A) 2维算法

可以达到接近100%的识别率.对机器要求也较低,普通机器在10秒左右可以准确识别,在我的机器上只要1-3秒.如果识别效果和速度不理想,用户可调整ini文件[UserSetup]中的Per值(字库匹配率,默认99%)和Task值(多任务,默认2).
B) 1维算法:

可以达到接近100%的识别率.对机器要求最低,普通机器在4秒左右可以准确识别.
C) 1维特征索引算法

可以达到接近100%的识别率.对机器要求最低,普通机器在1秒左右可以准确识别.不需开多任务
2)软件要生成临时文件,使用了FileInstall,所以有些杀毒软件会阻止它的运行.

(3)旋转:
验证码地址: http://www.ipal.com/?_task=index&_action=vcode,

此演示程序要连接作者服务器.
提供此网址的朋友只要求50%识别率,所以只做了快速倾斜校正,未对粘连做进一步处理,如果粘连点超过4个以上的,程序可能会乱拆分(粘连只能处理到本程序所带的样图94这两个字符这种粘连的).
此演示程序对于无粘连验证码有较好识别率,对于粘连验证码的拆分相当花时间,寒假时可以考虑花一天试试.
下载的验证码存到[演示6]目录下的CheckCode.bmp,结果存在CheckCode.txt

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 2金钱 +120 贡献 +2 收起 理由
afan + 100 + 2
jhwl + 20 支持一下

查看全部评分

发表于 2018-8-15 17:34:29 | 显示全部楼层
redapple2008 发表于 2018-8-15 17:29
这么好的事,我下载也紧张了。都不敢乱下。afan能不能给我点下载币?

等你叮当响的时候我就会出现~
发表于 2010-11-14 17:37:25 | 显示全部楼层
能开源吗?
发表于 2010-11-14 17:45:56 | 显示全部楼层
真强,这都能识别
发表于 2010-11-14 19:48:42 | 显示全部楼层
无话可说, 很强大 。谢谢分享
发表于 2010-11-14 22:52:20 | 显示全部楼层
真的很强大,了不起
发表于 2010-11-15 11:03:08 | 显示全部楼层
又见阿福啊,强帖必顶啊。。。
发表于 2010-11-15 14:11:23 | 显示全部楼层
这个也可以验证不??

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2010-11-15 15:51:44 | 显示全部楼层
太酷了!
又见到阿福兄的心得
发表于 2010-11-15 16:17:07 | 显示全部楼层
强、太强大 谢谢
发表于 2010-11-18 22:42:54 | 显示全部楼层
能开源吗?很想学习一下
发表于 2010-11-19 16:47:20 | 显示全部楼层
支持,希望达到老大的高度
发表于 2010-11-19 18:03:52 | 显示全部楼层
前排膜拜赛阿福
发表于 2010-11-19 20:07:39 | 显示全部楼层
很久不见了,小孩还好吧!
发表于 2010-11-19 21:59:40 | 显示全部楼层
谢谢阿福 分享,好强大的验证码
发表于 2010-11-20 17:35:17 | 显示全部楼层
厉害 高手啊
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-23 17:57 , Processed in 0.083984 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表