验证码识别之C#图像识别类库tessnet2

      验证码识别据说可以用C#图像识别类库Tessnet2来实现,Tessnet2源于目前Google维护的开源项目Tesseract2。本文将对此传说进行验证,含验证结果与验证方法。

       1. 验证结果

    ———————- 20150131更新————————————

      通过对Tesseract的进一步学习与验证,其实Tessnet2识别”verification”这张图片完全没有问题,之前在验证时不行是因为我在写代码时把“ocr.SetVariable”的识别范围限制为数字与大写字母。总的来说,Tesseract对色彩分明未变形的图片识别效果还是比较好的。

    ———————- 20150131更新————————————


     2.  验证方法

     2.1 首先需要下载tessnet2库文件,分为32bit与64bit。根据电脑的操作系统来选:32位操作系统选tessnet2_32.dll,64位操作系统选tessnet2_64.dll)。

     2.2 下载相关语言包tessdata,目前我只找到了英文的,可用于识别数字与字母;

     2.3 新建控制台项目–>解决方案资源管理器–>选择“引用”后点右键–>在“添加引用”对话框中选择“浏览”–>找到文件tessnet2的解压文件夹选择相应的dll文件。

     2.4 解决方案资源管理器–>选择“引用”后点右键–>在“添加引用”对话框中选择“.NET“–>找到System.Drawing并添加。

     2.5 验证代码

      3.展望

       从某网站的验证码来看,字体基本无倾斜,间距也较大,如果可以把这些图片进行黑白化,识别的正确率是否会高一些呢?

       另外,我找到的dll文件不知是什么版本,是否有最新版本出现,最新版本是否更强大呢?但是我不能从code.Google下载最新版本。说到这里,我不得不再打一个小广告,从我的推广链接http://www.share-nydus.com/s/rnutgcbp 注册nydus VPN的帐号,我可以得到免费的3天试用时间,先谢过。不过坚持每天签到也送积分,可以兑换免费时间,在免费时间里Google的各种服务可以随便用。


发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

Fork me on GitHub